跳轉到內容

作業系統設計/案例研究/QNX

來自華夏公益教科書

QNX 作業系統非常適合即時應用程式。它提供了多工處理、優先順序驅動的搶佔式排程和快速上下文切換——所有這些都是即時系統的基本要素。

QNX 也是非常靈活的。開發人員可以輕鬆地定製作業系統以滿足其應用程式的需求。從包含幾個小型模組的核心的“精簡”配置到配備了為數百個使用者提供服務的全功能網路範圍系統,QNX 允許您設定系統以僅使用您完成手頭工作所需的資源。

QNX 透過兩個基本原則實現了其獨特的高效性、模組化和簡單性

  • 微核心架構
  • 基於訊息的程序間通訊

QNX 的微核心架構

[編輯 | 編輯原始碼]

QNX 包含一個負責一組協作程序的小核心。該結構更像是一個團隊而不是一個層次結構,因為幾個同等等級的參與者相互互動並與他們的“四分衛”核心互動。

協調系統管理器的 QNX 微核心。

核心是任何作業系統的核心。在某些系統中,“核心”包含如此多的功能,以至於從所有意圖和目的來看,它就是整個作業系統!但 QNX 微核心確實是一個核心。首先,與即時執行器的核心一樣,QNX 微核心非常小。其次,它只專注於兩個基本功能

訊息傳遞
微核心處理整個系統中所有程序之間所有訊息的路由
排程
排程程式是微核心的一部分,並在程序由於訊息或中斷而更改狀態時被呼叫

與程序不同,微核心本身從未被排程執行。它只有在核心呼叫(來自程序或硬體中斷)的直接結果下才會被進入。

華夏公益教科書