如何區分嵌入式系統和嵌入式操作系統
時間:2024-05-15 來源:華清遠見
一、嵌入式系統
嵌入式系統- -般指非pc系統,有計算機功能但又不稱之為計算機的設備或器材。它是以應用為中心,軟硬件可裁減的,適應應用系統對功能、可靠性、成本、體積、功耗等綜合性嚴格要求的專用計算機系統。簡單地說,嵌入式系統集系統的應用軟件與硬件于一體,類似于pc中bios的工作方式,具有軟件代碼小、高度自動化、響應速度快等特點,特別適合于要求實時和多任務的體系。
嵌入式系統主要由嵌入式處理器、相關支撐硬件、嵌入式操作系統及應用軟件系統等組成,它是可獨立工作的“器件”。嵌入式系統幾乎包括了生活中的所有電器設備,如掌上pda、移動計算設備、電視機頂盒、手機上網、數字電視、多媒體、汽車、微波爐、數字相機、家庭自動化系統、電梯、空調、安全系統、自動售貨機、蜂窩式電話、消費電子設備、工業自動化儀表與醫療儀器等。
嵌入式系統的硬件部分,包括處理器/微處理器、存儲器及外設器件和i/o端口、圖形控制器等。嵌入式系統有別于- -般的計算機處理系統,它不具備像硬盤那樣大容量的存儲介質,而大多使用eprom、 eeprom或閃存 (flash memory)作為存儲介質。軟件部分包括操作系
統軟件(要求實時和多任務操作)和應用程序編程。應用程序控制著系統的運作和行為;而操作系統控制著應用程序編程與硬件的交互作用。
二、嵌入式操作系統
嵌入式操作系統是一種支持嵌入式系統應 用的操作系統軟件,它是嵌入式系統(包括硬、軟件系統)極為重要的組成部分,通常包括與硬件相關的底層驅動軟件、系統內核、設備驅動接口、通信協議、圖形界面、標準化瀏覽器等browser. 嵌入式操作系統具有通用操作系統的基本特點,如能夠有效管理越來越復雜的系統資源;能夠把硬件虛擬化,使得開發人員從繁忙的驅動程序移植和維護中解脫出來;能夠提供庫函數、驅動程序、I具集以及應用程序。與通用操作系統相比較,嵌入式操作系統在系統實時高效性、硬件的相關依賴性、軟件固態化以及應用的專用性等方面具有較為突出的特點。
1.嵌入式操作系統的種類
一般情況下,嵌入式操作系統可以分為兩類,一類 是面向控制、通信等領域的實時操作系統,如windriver公司的vxworks、isi的psos、qnx系統軟件公司的qnx、 ati的nucleus等; 另-類是面向消費電子產品的非實時操作系統,這類產品包括個人數字助理(pda)、移動電話、機頂盒、電子書webphone等。
2.非實時操作系統
早期的嵌入式系統中沒有操作系統的概念,程序員編寫嵌入式程序通常直接面對裸機及裸設備。在這種情況下,通常把嵌入式程序分成兩部分,即前臺程序和后臺程序。前臺程序通過中段來處理事件,其結構一般為無限循環;后臺程序則掌管整個嵌入式系統軟、硬件資源的分配、管理以及任務的調度,是一個系統管 理調度程序。這就是通常所說的前后臺系統。-般情況下,后臺程序也叫任務級程序,前臺程序也叫事件處理級程序。在程序運行時,后臺程序檢查每個任務是否具備運行條件,通過一定的調度算法來完成相應的操作。對于實時性要求特別嚴格的操作通常由中斷來完成,僅在中斷服務程序中標記事件的發生,不再做任何工作就退出中斷,經過后臺程序的調度,轉由前臺程序完成事件的處理,這樣就不會造成在中斷服務程序中處理費時的事件而影響后續和其他中斷。
實際上,前后臺系統的實時性比預計的要差。這是因為前后臺系統認為所有的任務具有相同的優先級別,即是平等的,而且任務的執行又是通過ffo隊列排隊,因而對那些實時性要求高的任務不可能立刻得到處理。另外,由于前臺程序是一個無限循環的結構,一旦在這個循環體中正在處理的任務崩潰,使得整個任務隊列中的其他任務得不到機會被處理,從而造成整個系統的崩潰。由于這類系統結構簡單,幾乎不需要ram/rom的額外開銷,因而在簡單的嵌入式應用被廣泛使用。
3.實時操作系統
實時系統是指能在確定的時間內執行其功能并對外部的異步事件做出響應的計算機系統。其操作的正確性不僅依賴于邏輯設計的正確程度,且與這些操作進行的時間有關。“在確定的時間內”是該定 義的核心。也就是說,實時系統是對響應時間有嚴格要求的。
實時系統對邏輯和時序的要求非常嚴格,如果邏輯和時序出現偏差將會引起嚴重后果。實時系統有兩種類型:軟實時系統和硬實時系統。軟實時系統僅要求事件響應是實時的,并不要求限定某一 任務必須在多長時間內完成;而在硬實時系統中,不僅要求任務響應要實時,而且要求在規定的時間內完成事件的處理。通常,大多數實時系統是兩者的結合。實時應用軟件的設計一般比非實時應用軟件的設計困難。實時系統的技術關鍵是如何保證系統的實時性。實時多任務操作系統是指具有實時性、能支持實時控制系統工作的操作系統。其首要任務是調度一切可利用的資源完成實時控制任務,其次才著眼于提高計算機系統的使用效率,要特點是要滿足對時間的限制和要求。實時操作系統具有如下功能:任務管理(多任務和基于優先級的任務調度)、任務間同步和通信(信號量和郵箱等)存儲器優化管理(含rom的管理)、實時時鐘服務、中斷管理服務。
實時操作系統具有如下特點:規模小,中斷被屏蔽的時間很短,中斷處理時間短,任務切換很快。實時操作系統可分為可搶占型和不可搶占型兩類。對于基于優先級的系統而言,可搶占型實時操作系統是指內核可以搶占正在運行任務的cpu使用權并將使用權交給進入就緒態的優先級更高的任務,是內核搶了cpu讓別的任務運行。可搶占型實時操作系統使用某種算法并決定讓某個任務運行后,就把cpu的控制權完全交給了該任務,直到它主動將cpu控制權還回來。中斷由中斷服務程序來處理,可以激活一個休 眠態的任務,使之進入就緒態;而這個進入就緒態的任務還不能運行,一直要等到當前運行的任務主動交出cpu的控制權。使用這種實時操作系統的實時性比不使用實時操作系統的系統性能好,其實時性取決于最長任務的執行時間。可搶占型實時操作系統的缺點也恰恰是這一點, 如果最長任務的執行時間不能確定,系統的實時性就不能確定。

