RTT大牛告诉你,混合微内核是什么?
RT-Thread之前寫過好幾篇文章介紹微內核,然而不少開發者依然不清楚到底微內核操作系統是什么。為此,我們特別整理了5期快問快答,來為大家答疑解惑!
RT-Thread Smart稱作是混合微內核操作系統,為什么叫混合微內核操作系統呢?
RT-Thread Smart和當前的版本及Linux有什么區別?
有什么特色呢,用于什么場景?
資源占用情況如何呢?
效率又是怎么樣呢?
且待我們一一解答,今天先來解釋RT-Thread Smart混合微內核操作系統是什么。
<插播一句:9月1日RT-Thread將在北京舉行發布會發布RT-Thread Smart混合微內核操作系統,歡迎報名來現場交流了解更多信息,觀看微內核應用Demo>>
首先來看看這幾個概念
PART ONE
什么是宏內核操作系統?
操作系統的特性組件均以內核態運行,而用戶程序在用戶態運行。比如 Linux 是一種典型的宏內核操作系統,不僅僅內核組件、驅動程序、網絡協議棧、文件系統等等均在內核態運行。宏內核操作系統要求在內核態運行的程序代碼具備極高的健壯性,否則任何一部分的錯誤或異常非常容易擴散到整個操作系統,引發系統崩潰等嚴重問題。
PART TWO
什么是微內核操作系統?
操作系統的內核模塊運行在內核態,網絡協議棧、文件系統等和用戶程序一樣運行在用戶態。這種操作系統的內核可以做的很小,功能單一簡練,比較容易形成穩定的內核。用戶態的大型組件即使有發生異常,既不會影響其他進程的運行,也不會導致操作系統內核崩潰。
PART THREE
什么是混合微內核操作系統?
混合微內核操作系統是 睿賽德科技針對目前行業痛點定義的一款新形態的操作系統,支持將系統服務組件或驅動按需納入內核態中運行,以獲得更佳的性能,也支持將系統的大部分系統組件及驅動移到內核之外即用戶態,以一個個單獨的服務進程運行,內核與服務進程之間通過消息傳遞完成交互。
這樣,從外在看,這種操作系統兼具微內核操作系統的特性,又具備了宏內核的高性能特性,為開發者提供了更多系統性能調優方面的可能。
下面用一個通俗的例子來做個比喻解釋下微內核和混合微內核:
操作系統內核 - 比喻為總經理在總經理辦公室(內核態)
某個進程 A - 比喻為處理工作的職員A,在外面的辦公區某個工位(該進程空間)
某個進程 B(用戶應用程序或系統服務) - 比喻為處理工作的職員B,在外面的辦公區另一個工位(該進程空間)
微內核場景下, 職員A和職員B,分別和總經理交流,分別在不同的工位,即使A發生錯誤,也不影響B以及總經理的安全,而且此時總經理辦公室非常簡單,處理的事務也很簡單,只負責任務計劃(調度)、通信(IPC)、工位分配(內存管理)等,可以做到足夠的簡單穩定,這些都是微內核特有的優秀屬性。
在某些情況下,假設A需要B的服務,則仍舊需要A先敲門進總經理辦公室(操作系統中進程間互相訪問,需要調用內核機制),再出來,總經理然后把B叫進來,B提供服務,經由總經理轉給A。?這期間,A和B與總經理交流都要頻繁敲門開門關門(系統調用),會消耗部分資源。如果A對B的服務請求過分頻繁,則系統的響應速度會比較低。
此時,如果B能夠直接搬進總經理辦公室(內核態),如果A需要請求服務,則B就在總經理邊上,響應就會變得十分迅速,這就是 某些進程(例如B)可以在用戶態執行,也可以按需遷移到內核態(總經理室)運行。這時的內核特性,就是表現為混合微內核,而不是一個純粹的微內核。
這個比喻不一定恰當,但應該能一定程度幫助我們理解什么是微內核操作系統以及混合微內核操作系統,如有建議請留言探討。
下一問我們將解答下RT-Thread Smart和Linux、RT-Thread的區別,敬請關注。
你可以添加微信?17775982065?為好友,注明:公司+姓名,拉進 RT-Thread 官方微信交流群!
RT-Thread
讓物聯網終端的開發變得簡單、快速,芯片的價值得到最大化發揮。Apache2.0協議,可免費在商業產品中使用,不需要公布源碼,無潛在商業風險。
長按二維碼,關注我們
總結
以上是生活随笔為你收集整理的RTT大牛告诉你,混合微内核是什么?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 富勒WMS系统手册
- 下一篇: 上海富勒wms_【快消 | 三草两木牵手