嵌入式操作系統是當下最為流行的了,他是一個用途廣泛的系統軟件,通常包括與硬件相關的底層驅動軟件、系統內核、設備驅動接口、通信協議、圖形界面、標準化瀏覽器等。可以把它比作人的大腦一樣,在運行各個分配、任務調度,控制、協調并發活動等功能。對于嵌入式操作系統有:嵌入式Linux、WindowsEmbedded、VxWorks等就不舉例了,想要了解的可以和客服要相關資料哦,來回到正題,看看對嵌入式系統的詳細了解吧:
嵌入式操作系統的種類
一般情況下,嵌入式操作系統可以分為兩類,一類是面向控制、通信等領域的實時操作系統,如WindRiver公司的VxWorks、ISI的pSOS、 QNX系統軟件公司的QNX、ATI的Nucleus等;另一類是面向消費電子產品的非實時操作系統,這類產品包括個人數字助理(PDA)、移動電話、機頂盒、電子書、WebPhone等。
a、非實時操作系統
早期的嵌入式系統中沒有操作系統的 概念,程序員編寫嵌入式程序通常直接面對裸機及裸設備。在這種情況下,通常把嵌入式程序分成兩部分,即前臺程序和后臺程序。前臺程序通過中段來處理事件,其結構一般為無限循環;后臺程序則掌管整個嵌入式系統軟、硬件資源的分配、管理以及任務的調度,是一個系統管理調度程序。這就是通常所說的前后臺系統。一 般情況下,后臺程序也叫任務級程序,前臺程序也叫事件處理級程序。在程序運行時,后臺程序檢查每個任務是否具備運行條件,通過一定的調度算法來完成相應的操作。對于實時性要求特別嚴格的操作通常由中斷來完成,僅在中斷服務程序中標記事件的發生,不再做任何工作就退出中斷,經過后臺程序的調度,轉由前臺程序 完成事件的處理,這樣就不會造成在中斷服務程序中處理費時的事件而影響后續和其他中斷。
實際上,前后臺系統的實時性比預計 的要差。這是因為前后臺系統認為所有的任務具有相同的優先級別,即是平等的,而且任務的執行又是通過FIFO隊列排隊,因而對那些實時性要求高的任務不可 能立刻得到處理。另外,由于前臺程序是一個無限循環的結構,一旦在這個循環體中正在處理的任務崩潰,使得整個任務隊列中的其他任務得不到機會被處理,從而造成整個系統的崩潰。由于這類系統結構簡單,幾乎不需要RAM/ROM的額外開銷,因而在簡單的嵌入式應用被廣泛使用。
b、實時操作系統
實時系統是指能在確定的時間內執行其功能并對外部的異步事件做出響應的計算機系統。其操作的正確性不僅依賴于邏輯設計的正確程度,而且與這些操作進行的時間有關。“在確定的時間內”是該定義的核心。也就是說,實時系統是對響應時間有嚴格要求的。
實時系統對邏輯和時序的要求非常嚴格,如果邏輯和時序出現偏差將會引起嚴重后果。實時系統有兩種類型:軟實時系統和硬實時系統。軟實時系統僅要求事件響應是實時的,并不要求限定某一任務必須在多長時間內完成;而在硬實時系統中,不僅要求任務響應要實時,而且要求在規定的時間內完成事件的處理。通常,大多 數實時系統是兩者的結合。實時應用軟件的設計一般比非實時應用軟件的設計困難。實時系統的技術關鍵是如何保證系統的實時性。
實時多任務操作系統是指具有實時性、能支持實時控制系統工作的操作系統。其首要任務是調度一切可利用的資源完成實時控制任務,其次才著眼于提高計算機系統的使用效率,重要特點是要滿足對時間的限制和要求。實時操作系統具有如下功能:任務管理(多任務和基于優先級的任務調度)、任務間同步和通信(信號量和 郵箱等)、存儲器優化管理(含ROM的管理)、實時時鐘服務、中斷管理服務。實時操作系統具有如下特點:規模小,中斷被屏蔽的時間很短,中斷處理時間短,任務切換很快。
實時操作系統可分為可搶占型和不可搶占型兩類。對于基于優先級的系統而言,可搶占型實時操作系統是指內核可 以搶占正在運行任務的CPU使用權并將使用權交給進入就緒態的優先級更高的任務,是內核搶了CPU讓別的任務運行。不可搶占型實時操作系統使用某種算法并決定讓某個任務運行后,就把CPU的控制權完全交給了該任務,直到它主動將CPU控制權還回來。中斷由中斷服務程序來處理,可以激活一個休眠態的任務,使之進入就緒態;而這個進入就緒態的任務還不能運行,一直要等到當前運行的任務主動交出CPU的控制權。使用這種實時操作系統的實時性比不使用實時操作系統的系統性能好,其實時性取決于最長任務的執行時間。不可搶占型實時操作系統的缺點也恰恰是這一點,如果最長任務的執行時間不能確定,系統的實時性就不能確 定。
可搶占型實時操作系統的實時性好,優先級高的任務只要具備了運行的條件,或者說進入了就緒態,就可以立即運行。也就是 說,除了優先級最高的任務,其他任務在運行過程中都可能隨時被比它優先級高的任務中斷,讓后者運行。通過這種方式的任務調度保證了系統的實時性,但是,如果任務之間搶占CPU控制權處理不好,會產生系統崩潰、死機等嚴重后果。
嵌入式系統的特點
(1)嵌入式系統是面向特定應用的。嵌入式系統中的CPU是專門為特定應用設計的,具有低功耗、體積小、集成度高等特點,能夠把通用CPU中許多由板卡完成的任務集成在芯片內部,從而有利于整個系統設計趨于小型化。
(2)嵌入式系統涉及先進的計算機技術、半導體技術、電子技術、通信和軟件等各個行業。是一個技術密集、資金密集、高度分散、不斷創新的知識集成系統。
(3)嵌入式系統的硬件和軟件都必須具備高度可定制性。
(4)嵌入式系統的生命周期相當長。嵌入式系統和具體應用有機地結合在一起,其升級換代也是和具體產品同步進行的。
(5)嵌入式系統本身并不具備在其上進行進一步開發的能力。在設計完成以后,用戶如果需要修改其中的程序功能,必須借助于一套專門的開發工具和環境。
(6)為了提高執行速度和系統可靠性,嵌入式系統中的軟件一般都固化在存儲器芯片或單片機中,而不是存貯于磁盤等載體中。
嵌入式操作系統的優勢
1)專用性很強:嵌入式操作系統的優勢在于個性化很強,其中的軟件系統和硬件的結合非常緊密,一般要針對硬件進行系統的移植,即使在同一品牌、同一系列的產品中也需要根據系統硬件的變化和增減不斷進行修改。同時針對不同的任務,往往需要對系統進行較大更改,程序的編譯下載要和系統相結合。
2)系統內核小:對于一般應用在小型電子裝置來說,系統資源有限,而嵌入式操作系統的內核要比傳統的操作系統小的多。
3)高實時性:EOS實時性一般較強,可用于各種設備控制中
4)可裁剪性:支持開放性和可伸縮性的體系結構。
5)系統精簡安全:嵌入式操作系統一般沒有系統軟件和應用軟件的明顯區分,不要求其功能設計及實現上過于復雜,這樣一方面利于控制系統成本,同時也利于實現系統安全。
6)統一的接口。提供設備統一的驅動接口。
7)固化代碼。在嵌入式系統中,嵌入式操作系統和應用軟件被固化在嵌入式系統計算機的ROM中。
8)生命周期較長:由于嵌入式操作系統是與具體應用應用有機結合在一起,升級換代也是同步進行。
9)強穩定性,弱交互性。嵌入式操作系統的優勢在于運行開始就不需要用戶過多的干預,用戶接口一般不提供操作命令,它通過系統的調用命令向用戶程序提供服務,這就要負責系統管理的EOS具有較強的穩定性。
10)操作方便、簡單、提供友好的圖形GUI和圖形界面,提供強大的網絡功能,支持TCP/IP協議及其他協議,提供TCP/UDP/IP/PPP協議支持及統一的MAC訪問層接口,為各種移動計算設備預留接口。
11)可滿足便攜虛擬儀器的需要:嵌入式操作系統目前已進入后PC時代,它的小體積、高可靠能夠滿足實現野戰和惡劣環境下的便攜虛擬儀器的需要。
12)可靈活定制:相比于通用型計算機系統,嵌入式系統功耗低、可靠性高;功能強大、性能價格比高;實時性強,支持多任務;占用空間小,效率高;面向特定應用,可根據需要靈活定制。
看了這些對操作系統是否已經了解的清楚了呢,還想要了解更多,可以咨詢客服,免費得資料哦