亚洲精品一二区_国产黄色片网站_99久久久成人国产精品_蜜臀网_国产精品一区二区三区免费_成人av中文字幕_91精品国产欧美一区二区成人

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > 讓你從根本上了解系統(tǒng)函數(shù),簡單快速

讓你從根本上了解系統(tǒng)函數(shù),簡單快速 時間:2018-06-21      來源:未知

我們都知道C語言,C語言提供了通用的函數(shù)比如fread fwrite fclose,不論你在windows linux還是其他 操作系統(tǒng)上,都可以使用.這就是平臺無關性,所以C語言有很好的移植性.接下來我們思考一個問題,不同的操作系統(tǒng)windows linux,他們的設計肯定不一樣的,windows再設計之處肯定不會 考慮linux的設計,linux在設計之處也不會向微軟請教.所以問題是為什么都可以使用標準的C函數(shù) ?

這要從操作系統(tǒng) 的系統(tǒng)調(diào)用說起.高級的操作系統(tǒng)都分為用戶態(tài)和內(nèi)核態(tài),說白了用戶態(tài)就是執(zhí)行用戶程序的,比如QQ 微信.而內(nèi)核是 操作系統(tǒng)管理硬件 內(nèi)存 CPU的,應用程序因為在用戶態(tài)所以無法訪問硬件,這也保證了操作系統(tǒng)的安全性. 但是有時候應用程序需要操作硬件,比如打開攝像頭,那怎么辦呢.

解決辦法就是用戶程序請求操作系統(tǒng)打開,操作系統(tǒng)接收請求去打開硬件.所以真實的訪問過程不是應用程序直接訪問. 應用程序如何請求操作系統(tǒng)呢?這就是系統(tǒng)調(diào)用的功能.因為不同的操作系統(tǒng)管理方式 硬件訪問方式幾乎完全不同,所以不同的操作系統(tǒng)提供了完全不同的系統(tǒng)調(diào)用接口.這些接口 又稱為系統(tǒng)函數(shù).

比如常見的linux下API:read write close open socket都是系統(tǒng)函數(shù) ,可以完成操作系統(tǒng)的各種功能.windows上API 是不相同的,所以如果你直接使用這些系統(tǒng)函數(shù),寫出來的代碼不具有移植性.

那怎么辦呢?解決方法就是對系統(tǒng)函數(shù)封裝一層,封裝為C庫. C庫 對外提供統(tǒng)一的接口,不同的操作系統(tǒng)提供不同的C庫,但是不同的C庫對外提供相同的 API,這也就保證了你基于C庫開發(fā)的代碼在不同的操作系統(tǒng)上具有 很好的移植性.記住,是很好,而不是絕對的.針對一些特殊的功能,我們也是針對操作系統(tǒng)進行處理.

下面一張圖來解釋他們之間的關系:

系統(tǒng)函數(shù)

上一篇:imageview的基本屬性介紹,通俗易懂

下一篇:java學習中如何認識反射,業(yè)內(nèi)專家告訴你

熱點文章推薦
華清學員就業(yè)榜單
高薪學員經(jīng)驗分享
熱點新聞推薦
前臺專線:010-82525158 企業(yè)培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,京ICP備16055225號-5京公海網(wǎng)安備11010802025203號

回到頂部

主站蜘蛛池模板: 久久亚洲精品中文字幕亚瑟 | 91热精品| 韩国一级免费视频 | 两个人www视频 | 99精品视频在线在线视频观看 | 国产亚洲精aa在线观看不卡 | 亚洲国产成人九九综合 | 91视频99| 亚洲aaa| 日本人与动zozo | 免费操人 | 中文字幕亚洲天堂 | 欧美精品一二区 | 久久一本精品 | 国产精品亚洲片在线花蝴蝶 | 精品久久久久国产 | 国产精品毛片在线大全 | 毛片福利视频 | 欧美国产日韩在线观看 | a毛片免费播放全部完整 | 日韩欧美一区在线观看 | 国产精品久久久久久久9999 | 日本特黄高清免费大片爽 | 日日舔夜夜摸 | 日本xxxxxxxxx高清hd | 韩国秋霞成人理论网 | 日本在线观看视频网站 | 欧美干色 | 久久婷婷久久一区二区三区 | 欧美jizz18性欧美年轻 | 中文字幕一区二区在线播放 | 久操资源网 | 日本一二三区免费 | 日本成人精品 | 成人a毛片在线看免费全部播放 | 私色综合网 | 2018年国产成人精品视频 | 波多野结衣资源在线观看 | 日本免费网 | 色夜视频 | 久久精品无遮挡一级毛片 |