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