什么叫做微內核?與安卓系統有什么區別?
微內核微內核設計的基本思想是簡(jiǎn)化內核功能,在內核之外的用戶(hù)態(tài)盡可能多地實(shí)現系統服務(wù),同時(shí)加入相互之間的安全保護。內核只提供最基礎的服務(wù),比如多進(jìn)程調度、多進(jìn)程通信(IPC)等。其中進(jìn)程通信是作為連接應用與用戶(hù)態(tài)系統服務(wù)的橋梁。
安卓系統Android是宏內核的,也就是把所有系統服務(wù)都放到內核里,這樣的內核是龐大的,Android 操作系統 1 億行代碼,內核一項就超過(guò) 2000 萬(wàn)行代碼,非常復雜。數據的交換和服務(wù)請求都在系統服務(wù)的代碼之間完成,也是比較直接,高效的辦法。
與安卓系統的區別優(yōu)點(diǎn)
1.微內核,內核小,可以實(shí)現形式化驗證,能顯著(zhù)提高安全
2.系統服務(wù)模塊化,可移植性高
缺點(diǎn)
1.通過(guò)進(jìn)程通信的方式交換數據或者調用系統服務(wù),而不是使用系統調用,造成額外的操作系統開(kāi)銷(xiāo)
2.系統服務(wù)之間頻繁收發(fā)數據,可能存在時(shí)延
總結Android 操作系統未來(lái)轉向 Chorm PC、平板,手表有 Android 的系統、IoT 有 IoT 系統,谷歌也在開(kāi)發(fā)下一代操作系統,Fuchsia,它是微內核的,可適配各種各樣硬件終端,但是 Fuchsia 還不是分布式設計,性能還不夠好,但是是微內核架構,可以看到整個(gè)操作系統未來(lái)發(fā)展方向是微內核的。