微內(nèi)核及其結(jié)構(gòu)
微內(nèi)核(英文中常譯作μ-kernel或者micro kernel)。是一種能夠提供必要服務(wù)的操作系統(tǒng)內(nèi)核;其中這些必要的服務(wù)包括任務(wù),線程,交互進(jìn)程通信(IPC,Inter-Process Communication)以及內(nèi)存管理等等。所有服務(wù)(包括設(shè)備驅(qū)動(dòng))在用戶模式下運(yùn)行,而處理這些服務(wù)同處理其他的任何一個(gè)程序一樣。因?yàn)槊總€(gè)服務(wù)只是在自己的地址空間運(yùn)行。所以這些服務(wù)之間彼此之間都受到了保護(hù)。
微內(nèi)核是內(nèi)核的一種精簡(jiǎn)形式。將通常與內(nèi)核集成在一起的系統(tǒng)服務(wù)層被分離出來,變成可以根據(jù)需求加入的選件,這樣就可提供更好的可擴(kuò)展性和更加有效的應(yīng)用環(huán)境。使用微內(nèi)核設(shè)計(jì),對(duì)系統(tǒng)進(jìn)行升級(jí),只要用新模塊替換舊模塊,不需要改變整個(gè)操作系統(tǒng)??梢杂蒙虡I(yè)對(duì)比來解釋微內(nèi)核的模塊概念??紤]一個(gè)過度忙碌的商務(wù)經(jīng)理。通過將工作分給其他人,這位經(jīng)理可以將他的能力更有效地用于重要的商務(wù)工作中去,并集中于其他一些任務(wù),例如開辟新的商務(wù)分支等??梢怨蛡蛞恍┬氯藖碇С衷鲩L的商務(wù)活動(dòng)。經(jīng)理協(xié)調(diào)這些工作,但由其他的人做好雇傭他們時(shí)說好要做的事。與此類似,微內(nèi)核操作系統(tǒng)支持執(zhí)行少量核心任務(wù),并管理可安裝模塊的活動(dòng)。用這種方式,微內(nèi)核對(duì)于它能做的工作是非常有效的,并是可移植的,這是指它可以被設(shè)計(jì)成在不同的處理器上運(yùn)行。基于微內(nèi)核的操作系統(tǒng)具有如下特征:微內(nèi)核提供一組“最基本”的服務(wù),如進(jìn)程調(diào)度、進(jìn)程間通信、存儲(chǔ)管理、處理I/O設(shè)備。其他服務(wù),如文件管理、網(wǎng)絡(luò)支持等通過接口連到微內(nèi)核。與此相反,內(nèi)核是集成的,比微內(nèi)核更大。微內(nèi)核具有很好的擴(kuò)展性,并可簡(jiǎn)化應(yīng)用程序開發(fā)。用戶只運(yùn)行他們需要的服務(wù),這有利于減少磁盤空間和存儲(chǔ)器需求。廠商可以很容易地將微內(nèi)核移植到其他處理器平臺(tái),并在上面增加適合其他平臺(tái)需要的模塊化部件。(這指文件服務(wù)器、工程應(yīng)用等等)。微內(nèi)核和硬件部件有接口,并向可安裝模塊提供一個(gè)接口。在微內(nèi)核中,進(jìn)程通過傳遞消息或運(yùn)行“線程”來發(fā)生相互作用。線程為將一個(gè)任務(wù)分解為多個(gè)子任務(wù)提供了途徑,在多處理器環(huán)境下,線程可以在不同的處理器上獨(dú)立運(yùn)行。像Mach和Nucleus這樣的微內(nèi)核操作系統(tǒng),使用戶可以自己選擇操作系統(tǒng)的接口和特性。它們十分適合可以選擇多處理器和多操作系統(tǒng)的變化的計(jì)算機(jī)市場(chǎng),開發(fā)商也可從中受益。它們能夠很快地從一個(gè)系統(tǒng)向另一個(gè)系統(tǒng)移植他們的產(chǎn)品,使最終用戶可以得到許多應(yīng)用產(chǎn)品。這種模塊化的設(shè)計(jì)也保證了可以得到大量的可選服務(wù)。
Nucleus Chorus系統(tǒng)公司(Beaverton,oregon)設(shè)計(jì),該公司總部設(shè)在法國。WindowsNT這種操作系統(tǒng)是圍繞著Microsoft設(shè)計(jì)的微內(nèi)核而設(shè)計(jì)的,它緊跟在Mach設(shè)計(jì)之后。它提供線程調(diào)度、中斷和意外事件管理、多處理器同步和系統(tǒng)恢復(fù)(在掉電之后)。它永遠(yuǎn)不會(huì)被存儲(chǔ)器管理程序調(diào)出內(nèi)存,而且它的執(zhí)行也永遠(yuǎn)不能被其它進(jìn)程中斷。OSF/1MK這是開放式系統(tǒng)基金會(huì)的OSF/1 UNⅨ操作系統(tǒng)使用微內(nèi)核研究的最新版本。它實(shí)現(xiàn)了Mach內(nèi)核,并提供虛擬存儲(chǔ)管理、進(jìn)程間通信和設(shè)備驅(qū)動(dòng)程序管理。UNⅨ SVR4 UNⅨ系統(tǒng)實(shí)驗(yàn)室公司推出了一個(gè)微內(nèi)核的UNⅨ SVR4(系統(tǒng)V版本4)。它實(shí)現(xiàn)了Nucleus微內(nèi)核。它提供前面討論的所有微內(nèi)核特征;然而,在微內(nèi)核中不管理驅(qū)動(dòng)程序。WorkPlace OS IBM的微內(nèi)核是基于Mach微內(nèi)核的。這種微內(nèi)核在Motorola Power PC處理器上運(yùn)行,它是Intel80486和Pentium處理器的直接競(jìng)爭(zhēng)者。WorkPlace操作系統(tǒng)上的用戶可以選擇不同的運(yùn)行于操作系統(tǒng)上的接口,如DOS、OS/2、Windows、U-NⅨ等。IBM微內(nèi)核的體積很小(約40K),可處理基本的任務(wù),如存儲(chǔ)器管理、線程管理、中斷管理和消息傳遞。鴻蒙OS的微內(nèi)核是LiteOS,LiteOS是華為物聯(lián)網(wǎng)戰(zhàn)略的重要組成部分,具備輕量級(jí)、低功耗、互聯(lián)互通、組件豐富、快速開發(fā)等關(guān)鍵能力,基于物聯(lián)網(wǎng)領(lǐng)域業(yè)務(wù)特征打造領(lǐng)域性技術(shù)棧,為開發(fā)者提供 “一站式” 完整軟件平臺(tái),有效降低開發(fā)門檻、縮短開發(fā)周期,可廣泛應(yīng)用于可穿戴設(shè)備、智能家居、車聯(lián)網(wǎng)、LPWA等領(lǐng)域。