嵌入式操作系統簡析
根據IEEE(電氣和電子工程師協會)的定義,嵌入式系統是“控制、監視或者輔助裝置、機器和設備運行的裝置”(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。從中可看出嵌入式系統是軟件和硬件的綜合體,還可以涵蓋機械等附屬裝置。嵌入式系統是與應用緊密結合的,具有很強專用性,必須結合實際系統需求進行合理的裁減利用。國內一個普遍被認同的定義是:以應用為中心、以計算機技術為基礎、軟件硬件可裁剪、適應應用系統對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統。
一.嵌入式操作系統基本要點包括以下7點
1.前后臺系統
對基于芯片開發來說,應用程序一般是一個無限的循環,可稱為前后臺系統或超循環系統。循環中調用相應的函數完成相應的操作,這部分可以看成后臺行為。中斷服務程序處理異步事件,這部分可以看成前臺行為。后臺也可以叫任務級,前臺也可以叫中斷級。時間相關性很強的關鍵操作一定是靠中斷服務程序來保證的。
2.操作系統
操作系統是計算機最基本的程序,操作系統復雜計算機系統全部軟硬資源的分配與回收、控制與協調等并發的活動,提供用戶獲得良好的工作環境,為用戶擴展新的系統能提供軟件平臺。
3.實時操作系統
實時操作系統是一段嵌入式系統啟動后首先執行的背景程序,用戶的應用程序是運行與RTOS之上的各個任務,RTOS根據各個任務的要求,進行資源管理,消息管理,任務調用及異常處理等工作。每個任務均有一個優先級,動態切換各個任務,保證對實時性的要求。
4.代碼的臨界區
代碼的臨界區是指處理時不可分割的代碼,運行這些代碼不允許被打斷。一旦這部分代碼開始執行,則不允許任何中斷打入,為確保臨界區代碼的執行,在進入臨界區之間要關中斷,而臨界區代碼執行完成以后要立即開中斷。
5.資源
程序運行時可使用的軟、硬件環境統稱為資源,資源可以是輸入輸出設備,例如打印機、鍵盤和顯示器。資源也可以是一個變量、一個結構或一個數組等。
6.共享資源
可以被一個以上任務使用的資源叫做共享資源,為了防止數據被破壞,每個任務在共享資源打交通時,必須獨占該資源,這叫做互斥。
7.任務
一個任務也稱為作一個線程,是一個簡單的程序,該程序可以認為CPU完全屬于該程序自己,實時應用程序的設計過程,包括如何把問題分割成多個任務,每個任務都是整個應用的某一部分,被賦予一定的優先級,有它自己的一套CPU寄存器和自己的棧空間。

評論