
一、嵌入式和實時系統介紹
嵌入式系統在我們的生活中已經無處不在,如火星探測器,汽車上的電動裝置,可視電話,PDA,嵌入式網絡交換系統等等。嵌入式系統在我們的生活中發揮著巨大的作用,嵌入式系統是為實現特定功能,并且軟硬件緊密結合在一起的計算機系統。
實時嵌入式系統是嵌入式系統的一種,它能夠對外部事件給予及時響應。對外部事件的響應有三個步驟:對外部事件的識別,必要的處理,以及結果的輸出。實時系統又分為硬實時和軟實時兩種。在軟實時系統中,系統的宗旨是使各個任務運行得越快越好,對響應時間的介定有一定的靈活性;在硬實時系統中,各任務不僅要執行無誤而且要做到準時,一旦不能在確定的時間內完成,有可能導致災難性后果。實時操作系統(RTOS)以及時的方式進行任務調度、系統資源的管理以及為應用開發提供一個穩固的平臺。RTOS可以是一個小而簡單的系統,也可以是一個大而全的系統,具體要視實際應用而定.目前流行的許多RTOS都是用戶可裁剪定制的,如vxworks和pSOS等。
二、嵌入式操作系統實時性的幾個重要性能指標
成熟度一個操作系統從研發成功到能穩定、可靠運行的過程是需要較長時間的,只有經過廣泛使用才能逐步走向成熟,成熟度是綜合評價操作系統穩定性和可靠性的重要指標。
穩定性穩定性是反映嵌入式實時操作系統在長時間運行過程中不會出現異常情況,保證應用系統能夠穩定、可靠地工作的指標。
可靠性可靠性是反映嵌入式實時操作系統能夠保持正常運行而不受外界影響的能力,通常以系統連續并且可靠運行時間來度量。
安全性安全性是反映嵌入式實時操作系統能夠抵御外部攻擊和應用軟件自身缺陷的能力。
開放性開放性是反映嵌入式實時操作系統符合國際和國家標準水平以及能否得到眾多第三方(主要包括:驅動程序、開發工具、其它功能軟件等)廣泛支持的基本條件。
實時性實時性是反映嵌入式實時操作系統快速響應外部事件的能力。通常包括:系統調用時間、任務切換時間、中斷響應和延遲時間、信號量混洗時間、數據包吞吐率等。
三、嵌入式實時操作系統的體系結構
操作系統發展至今,模塊結構已經非常明確,即可分成處理器管理、存儲器器管理、設備管理和文件管理等模塊,如表1所示。只有文件系統是屬于建立在存儲器上的邏輯管理功能,因為可以說,現今的操作系統是一種直接的計算機硬件的邏輯映射,是硬件組合模型的軟件表達形式。
操作系統最基本的結構是模塊結構和層次結構。模塊結構是最一般的結構化設計。單內核就是模塊結構,但內核的概念是一種層次概念。層次結構是建立在系統功能模塊分類的基礎之上,是一種模塊集合作為“層”的結構。操作系統按模塊間功能調用方式分單內核與微核兩類。另外還有兩種應用模型:虛擬機與客戶機(服務器)模式,它們是建立在操作系統的系統應用擴展模型。
四、如何提高嵌入式實時操作系統的可靠性
提高RTOS的可靠性的關鍵取決于RTOS的架構。例如在實時執行模式架構中,大部分或所有軟件組件都在一個單一的內存地址空間中運行,包括操作系統內核、網絡協議棧、設備驅動程序、應用程序等。雖然這種架構的效率較高,但有兩個明顯的缺陷:任何組件中的一個指針錯誤,都可能破壞操作系統內核或任何其它組件,導致不可預測的行為和整個系統的崩潰;很難動態修復或替換任何有故障的組件,大多數情況下,出現這些問題時系統復位是唯一的選擇。
有一些RTOS試圖通過使用單內核架構來解決這個問題。在這種架構中,用戶的應用程序在隔離的、受保護內存地址空間中運行。如果一個應用程序試圖訪問其地址空間之外的數據,內存管理單元(MMU)將通知操作系統,操作系統可能會采取保護措施,例如終止出錯進程。由于這樣的操作系統需要將大多數或所有驅動程序、文件系統和其它系統服務綁定到內核中,因此任何組件中的一個錯誤都可能帶來災難性的內核故障。