微內(nèi)核操作系統(tǒng)
microkernel operating system
定義:把操作系統(tǒng)的最基本的功能放在一個微內(nèi)核中實現(xiàn),其他功能盡量放在核心態(tài)以外的用戶態(tài)實現(xiàn)。
學科:計算機科學與技術(shù)_計算機體系結(jié)構(gòu)_處理系統(tǒng)。
相關(guān)名詞:宏內(nèi)核 核心態(tài) 用戶態(tài)
圖片來源:視覺中國
【延伸閱讀】
微內(nèi)核操作系統(tǒng)結(jié)構(gòu)是20世紀80年代后期發(fā)展起來的。由于它能有效地支持多處理機運行,故非常適用于分布式系統(tǒng)環(huán)境。當前比較流行的、能支持多處理機運行的操作系統(tǒng),幾乎都采用了微內(nèi)核結(jié)構(gòu)。
“內(nèi)核”指的是一個處在硬件與各類軟件之間,為軟件提供文件控制、多任務(wù)控制等功能的系統(tǒng)軟件,是操作系統(tǒng)最基本的部分。直接對硬件操作是非常復雜的,所以內(nèi)核通常用硬件抽象的方法來完成這些操作。硬件抽象隱藏了復雜性,為應(yīng)用軟件和硬件提供了一套簡潔、統(tǒng)一的接口,使程序設(shè)計更為簡單。
目前內(nèi)核的主要分類有四種:宏內(nèi)核(單內(nèi)核)、微內(nèi)核、混合內(nèi)核和外內(nèi)核。在微內(nèi)核中,內(nèi)核只提供核心的功能,比如任務(wù)調(diào)度、內(nèi)存管理等,其他功能模塊被移出內(nèi)核,運行在不同的進程中。這樣即使某一個模塊出現(xiàn)問題,只要重啟這個模塊的進程即可,不會影響到其他模塊,穩(wěn)定性大大增加。而且由于模塊獨立的性質(zhì),可以做到模塊的按需加載。但是模塊間的相互調(diào)用需要通過進程間通信,通信效率相對較低。
微內(nèi)核操作系統(tǒng)一般有四個特點:具有足夠小的內(nèi)核;基于客戶/服務(wù)器模式;應(yīng)用“機制與策略分離”原理;采用面向?qū)ο蠹夹g(shù)。微內(nèi)核操作系統(tǒng)有如下優(yōu)點:提高了可擴展性,不僅可以在操作系統(tǒng)中增加新的功能,還可修改原有功能,以及刪除已過時的功能,以形成一個更加精干有效的操作系統(tǒng);增強了可靠性,即當某個服務(wù)器出現(xiàn)錯誤時,不會影響內(nèi)核,也不會影響其他服務(wù)器;增強了可移植性;提供了對分布式系統(tǒng)的支持。
在微內(nèi)核操作系統(tǒng)中,由于采用了非常小的內(nèi)核,以及客戶/服務(wù)器模式和消息傳遞機制,微內(nèi)核操作系統(tǒng)也有一些不可避免的缺點。例如,與早期的操作系統(tǒng)相比,微內(nèi)核操作系統(tǒng)的運行效率有所降低。
(延伸閱讀作者:大連理工大學計算機科學與技術(shù)學院教授 楊鑫)
責任編輯:張鵬輝