一、嵌入式操作系統的發展
作為嵌入式系統(包括硬、軟件系統)極為重要的組成部分的嵌入式操作系統,通常包括與硬件相關的底層驅動軟件、系統內核、設備驅動接口、通信協議、圖形界面、標準化瀏覽器等。嵌入式操作系統具有通用操作系統的基本特點,如能夠有效管理越來越復雜的系統資源;能夠把硬件虛擬化,使得開發人員從繁忙的驅動程序移植和維護中解脫出來;能夠提供庫函數、驅動程序、工具集以及應用程序
。與通用操作系統相比較,嵌入式操作系統在系統實時高效性、硬件的相關依賴性、軟件固態化以及應用的專用性等方面具有較為突出的特點。
嵌入式操作系統伴隨著嵌入式系統的發展經歷了四個比較明顯的階段:
第一階段:無操作系統的嵌入算法階段,以單芯片為核心的可編程控制器形式的系統,具有與監測、伺服、指示設備相配合的功能。應用于一些專業性極強的工業控制系統中,通過匯編語言編程對系統進行直接控制,運行結束后清除內存。系統結構和功能都相對單一,處理效率較低,存儲容量較小,幾乎沒有用戶接口。
第二階段:以嵌人式CPU為基礎、簡單操作系統為核心的嵌入式系統。CPU種類繁多,通用性比較差;系統開銷小,效率高;一般配備系統仿真器,操作系統具有一定的兼容性和擴展性;應用軟件較專業,用戶界面不夠友好;系統主要用來控制系統負載以及監控應用程序運行。
第三階段:通用的嵌人式實時操作系統階段,以嵌入式操作系統為核心的嵌入式系統。能運行于各種類型的微處理器上,兼容性好;內核精小、效率高,具有高度的模塊化和擴展性;具備文件和目錄管理、設備支持、多任務、網絡支持、圖形窗口以及用戶界面等功能;具有大量的應用程序接口(APl);嵌入式應用軟件豐富。
第四階段:以基于Intemet為標志的嵌入式系統。這是一個正在迅速發展的階段。目前大多數嵌入式系統還孤立于lnlemet之外,但隨著 Intemet的發展以及Intemet技術與信息家電、工業控制技術等結合日益密切,嵌入式設備與Intemet的結合將代表著嵌入式技術的真正未來。
二、使用實時操作系統的必要性
嵌入式實時操作系統在目前的嵌入式應用中用得越來越廣泛,尤其在功能復雜、系統龐大的應用中顯得愈來愈重要。
1.嵌人式實時操作系統提高了系統的可靠性。在控制系統中,出于安全方面的考慮,要求系統起碼不能崩潰,而且還要有自愈能力。不僅要求在硬件設計方面提高系統的可靠性和抗干擾性,而且也應在軟件設計方面提高系統的抗干擾性,盡可能地減少安全漏洞和不可靠的隱患。長期以來的前后臺系統軟件設計在遇到強干擾時,使得運行的程序產生異常、出錯、跑飛,甚至死循環,造成了系統的崩潰。而實時操作系統管理的系統,這種干擾可能只是引起若干進程中的一個被破壞,可以通過系統運行的系統監控進程對其進行修復。通常情況下,這個系統監視進程用來監視各進程運行狀況,遇到異常情況時采取一些利于系統穩定可靠的措施,如把有問題的任務清除掉。
2.提高了開發效率,縮短了開發周期。在嵌入式實時操作系統環境下,開發一個復雜的應用程序,通?梢园凑軟件工程中的解耦原則將整個程序分解為多個任務模塊。每個任務模塊的調試、修改幾乎不影響其他模塊。商業軟件一般都提供了良好的多任務調試環境。
3.嵌入式實時操作系統充分發揮了32位CPU的多任務潛力。32位CPU比8、16位CPU快,另外它本來是為運行多用戶、多任務操作系統而設計的,特別適于運行多任務實時系統。32位CPU采用利于提高系統可靠性和穩定性的設計,使其更容易做到不崩潰。例如,CPU運行狀態分為系統態和用戶態。將系統堆棧和用戶堆棧分開,以及實時地給出CPU的運行狀態等,允許用戶在系統設計中從硬件和軟件兩方面對實時內核的運行實施保護。如果還是采用以前的前后臺方式,則無法發揮32位CPU的優勢。從某種意義上說,沒有操作系統的計算機(裸機)是沒有用的。在嵌入式應用中,只有把CPU嵌入到系統中,同時又把操作系統嵌入進去,才是真正的計算機嵌入式應用。
延伸閱讀
文章來源于領測軟件測試網 http://www.anti-gravitydesign.com/