微內(nèi)核
微內(nèi)核(Micro kernel)是提供操作系統(tǒng)核心功能的內(nèi)核的精簡版本,它設(shè)計成在很小的內(nèi)存空間內(nèi)增加移植性,提供模塊化設(shè)計,以使用戶安裝不同的接口,如DOS、Workplace OS、Workplace UNIX等。IBM、Microsoft、開放軟件基金會(OSF)和UNIX系統(tǒng)實驗室(USL)等新操作系統(tǒng)都采用了這一研究成果的優(yōu)點。
微內(nèi)核的優(yōu)缺點
一、優(yōu)點
系統(tǒng)服務(wù)模塊化,可移植性高;
內(nèi)核安全性提高(模塊內(nèi)部的 Bug 不影響內(nèi)核穩(wěn)定,將黑客利用軟件漏洞造成的破壞限制在單個模塊內(nèi)部);
可以多套系統(tǒng)服務(wù)共存,相當(dāng)于同時運行多種操作系統(tǒng);
穩(wěn)定統(tǒng)一的接口(可以獨立維護私有驅(qū)動以及服務(wù),不需要跟內(nèi)核源碼綁定);
在商業(yè)上,微內(nèi)核可以避免代碼受到一些開源協(xié)議的影響,比如 GPL 協(xié)議;
內(nèi)核精簡,可以進行形式化驗證,利用數(shù)學(xué)證明內(nèi)核的安全性;
數(shù)學(xué)可證明的實時性;
非常適合多處理器系統(tǒng)設(shè)計,在多處理器核心計算機上,互相依賴的系統(tǒng)服務(wù)可以同時運行;
二、缺點
通過進程通信的方式交換數(shù)據(jù)或者調(diào)用系統(tǒng)服務(wù),而不是使用系統(tǒng)調(diào)用,造成額外的操作系統(tǒng)開銷;
使用一些頻繁使用的系統(tǒng)服務(wù)時,比如網(wǎng)絡(luò)收發(fā)數(shù)據(jù),造成的進程上下文切換對操作系統(tǒng)來說也是一個負擔(dān);
由于系統(tǒng)服務(wù)高度模塊化,系統(tǒng)服務(wù)之間存在大量的內(nèi)存復(fù)制;
對互相之間存在復(fù)雜調(diào)用關(guān)系的系統(tǒng)服務(wù),難以設(shè)計通信接口;
系統(tǒng)服務(wù)與內(nèi)核在地址空間上分離,造成代碼局部性差,降低了 cache 命中率。
-
微內(nèi)核架構(gòu)
+關(guān)注
關(guān)注
0文章
5瀏覽量
6540 -
微內(nèi)核
+關(guān)注
關(guān)注
0文章
58瀏覽量
13431
發(fā)布評論請先 登錄
相關(guān)推薦
評論