• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            什么是操作系統(tǒng)?
            操作系統(tǒng)Operating System,簡稱OS)是管理和控制計(jì)算機(jī)硬件軟件資源的計(jì)算機(jī)程序,是直接運(yùn)行在“裸機(jī)”上的最基本的系統(tǒng)軟件,任何其他軟件都必須在操作系統(tǒng)的支持下才能運(yùn)行。

            現(xiàn)在世面上的操作系統(tǒng)個(gè)可以說是百花齊放,但是它們的基本功能都是類似的, 包括:
            進(jìn)程管理, 內(nèi)存管理,文件系統(tǒng),網(wǎng)絡(luò)通訊,安全機(jī)制,用戶界面,驅(qū)動(dòng)程序等。

            同時(shí)我們會(huì)發(fā)現(xiàn)它們的基本架構(gòu)也都是類似的,包括應(yīng)用層, API層, 內(nèi)核層。


            先說應(yīng)用層, 系統(tǒng)應(yīng)用(System Application)是指系統(tǒng)自帶的關(guān)鍵進(jìn)程, 比如Windows和Mac都會(huì)有自己的Shell進(jìn)程, Windows是Explorer.exe, Mac是Find.com. 用戶應(yīng)用(User Application)是指我們自己開發(fā)的應(yīng)用程序, 比如QQ,Photoshop。系統(tǒng)應(yīng)用和用戶應(yīng)用本質(zhì)上沒什么區(qū)別,都是通過系統(tǒng)API實(shí)現(xiàn)的,但是系統(tǒng)應(yīng)用因?yàn)槭遣僮飨到y(tǒng)開發(fā)公司的自家程序, 很多時(shí)候可以調(diào)用未公開的API。

            再說API層,API層內(nèi)部很多時(shí)候可以分更多的層, 比如Android會(huì)把這層分為Library和Application Framework, Mac和ios會(huì)把它分為分為Core Service和Media。API層盡管最底層都是C/C++, 但是上層不同平臺(tái)會(huì)用不同的語言實(shí)現(xiàn), 比如Android選擇用Java封裝Framework; Mac/ios選擇用Objective-C封裝Cocoa框架; Windows就更豐富了,有Windows C API,也有COM API,甚至還有WinRT API, 在這些C/C++ API上層,還有為不同語言(.net)封裝的新API。

            最后說Kernel層,內(nèi)核既是程序在CPU處理器上運(yùn)行的調(diào)度器,也是訪問外部設(shè)備的橋梁,同時(shí)又提供了安全服務(wù)。操作系統(tǒng)內(nèi)核類型, 包括微內(nèi)核,宏內(nèi)核,混合內(nèi)核。宏內(nèi)核(Monolithic, 也稱單內(nèi)核,巨內(nèi)核), 將所有系統(tǒng)功能都放在同一地址空間中,甚至將該地址空間映射到所有進(jìn)程,Linux/Unix都是典型的宏內(nèi)核。 微內(nèi)核(Microkernel), 內(nèi)核只負(fù)責(zé)最關(guān)鍵的任務(wù)調(diào)度和內(nèi)存管理,其他功能全都交給外部用戶態(tài)的服務(wù)程序完成,該架構(gòu)下內(nèi)核會(huì)很穩(wěn)定,但是效率太低, Mac OS X內(nèi)核XNU的核心Mach是一個(gè)微內(nèi)核。混合內(nèi)核(hybrid kernel)結(jié)合了2種內(nèi)核的優(yōu)點(diǎn), Windows和Mac是典型的混合內(nèi)核。
            Windows的基本架構(gòu)可以參考我的這篇<<理解 Windows API 調(diào)用過程>>和<<理解WinRT >>。

            我們?cè)倏串?dāng)前市面上流行的操作系統(tǒng)的種類以及它們之間的關(guān)系,主要包括桌面端(PC),移動(dòng)端(Mobile), 還有服務(wù)器端(Server),大概分布如下:
            PC: Windows, Mac, ChromeBook
            Mobile: Android, ios, WinPhone
            Server: Linux, Unix

            這些操作系統(tǒng)之間有何關(guān)系?
            這些系統(tǒng)實(shí)際上都不是獨(dú)立存在的,很多系統(tǒng)是從另外一個(gè)系統(tǒng)"進(jìn)化"而來,下圖展現(xiàn)了這種關(guān)系:

            其中ChromeOS可能國內(nèi)大家用的不多, 它Google ChromeBook的OS系統(tǒng),北美學(xué)校比較流行,主要以Web為界面開發(fā)工具,C/C++為后臺(tái)開發(fā)工具。

            上面我也可以看到系統(tǒng)的2個(gè)大分支, 一個(gè)是Unix/Linux, 另外一個(gè)視Windows分支,我在<<關(guān)于字符集,編碼格式,大小端的簡單總結(jié)>>最后也提到了2個(gè)分支關(guān)于UFT8和Unicode16的區(qū)別。

            最后,上面我也可以看到幾家操作系統(tǒng)大公司的布局:

            蘋果希望借助Mac OS和ios統(tǒng)一PC和Mobile市場(chǎng), 這2個(gè)系統(tǒng)盡管運(yùn)行在不同的硬件架構(gòu)上(x86和ARM), 但是蘋果應(yīng)該視用同一份代碼代碼開發(fā)的(內(nèi)部用宏做區(qū)分),應(yīng)用層也用同一套API(Cocoa).

            微軟希望借助Win10的UWP統(tǒng)一PC和Mobile市場(chǎng),Win phone7本來是采用Win CE架構(gòu)的, Win Phone8之后微軟改成了NT架構(gòu),這樣和PC就實(shí)現(xiàn)了統(tǒng)一,具體我在<<GDI VS Dxgi>>也有相關(guān)闡述。

            Google以開放的姿態(tài),它的Android和ChromeOS分別有個(gè)應(yīng)用市場(chǎng)(Google Play Store和Google Chrome Store),好像有合并的打算,同時(shí)Google內(nèi)部也在開發(fā)”Fuchsia“新操作系統(tǒng)。

            蘋果和微軟的戰(zhàn)略很相似,Google相對(duì)有些不一樣,未來會(huì)誰勝誰負(fù),我們拭目以待吧。

            posted on 2016-11-27 22:25 Richard Wei 閱讀(1756) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 行業(yè)動(dòng)態(tài)
            无码伊人66久久大杳蕉网站谷歌| 精品伊人久久大线蕉色首页| 久久国产精品久久| 久久这里有精品视频| 粉嫩小泬无遮挡久久久久久| 久久久久亚洲精品无码网址 | 色综合久久88色综合天天 | 久久天天躁狠狠躁夜夜96流白浆 | 久久福利青草精品资源站| 国产福利电影一区二区三区久久老子无码午夜伦不 | 91久久成人免费| 久久精品亚洲中文字幕无码麻豆 | 91精品国产91久久| 亚洲精品tv久久久久久久久| 国产精品99久久久久久董美香| 蜜臀久久99精品久久久久久小说 | 久久精品中文无码资源站| 久久久久久精品免费看SSS| 国内精品久久久久久久coent | 国产精品久久午夜夜伦鲁鲁| 亚洲AV无码久久寂寞少妇| 97久久久精品综合88久久| 国产精品一久久香蕉产线看 | 久久国产美女免费观看精品 | 亚洲综合伊人久久综合| 久久久国产精品亚洲一区| 中文字幕一区二区三区久久网站| 久久亚洲av无码精品浪潮| 99久久无色码中文字幕人妻| 久久亚洲国产成人精品性色| 国产精品久久久久久一区二区三区 | 国产69精品久久久久久人妻精品| 久久婷婷激情综合色综合俺也去| 丁香久久婷婷国产午夜视频| 2021国内久久精品| 日本高清无卡码一区二区久久| 久久国产高清字幕中文| 国产精品久久久久影视不卡| 国产精品久久久久a影院| 精品久久久久久无码中文字幕| 亚洲国产精品无码久久|