新聞中心

EEPW首頁 > 消費電子 > 設(shè)計應(yīng)用 > 三種嵌入式操作系統(tǒng)的深入分析與比較

三種嵌入式操作系統(tǒng)的深入分析與比較

——
作者:原野 時間:2007-04-23 來源:21IC 收藏
1、嵌入式系統(tǒng)與嵌入式  

1.1 
  

是以嵌入式計算機為技術(shù)核心,面向用戶、面向產(chǎn)品、面向應(yīng)用,軟硬件可裁減的,適用于對功能、可靠性、成本、體積、功耗等綜合性能有嚴格要求的專用計算機系統(tǒng)。   

應(yīng)具有的特點是:高可靠性;在惡劣的環(huán)境或突然斷電的情況下,系統(tǒng)仍然能夠正常工作;許多嵌入式應(yīng)用要求實時性,這就要求嵌入式具有實時處理能力;嵌入式系統(tǒng)和具體應(yīng)用有機地結(jié)合在一起,它的升級換代也是具體產(chǎn)品同步進行;嵌入式系統(tǒng)中的軟件代碼要求高質(zhì)量、高可靠性,一般都固化在只讀存儲器中或閃存中,也就是說軟件要求固態(tài)化存儲,而不是存儲在磁盤等載體中。   

1.2 嵌入式   

嵌入式操作系統(tǒng)EOS(Embedded Operating System)是一種用途廣泛的系統(tǒng)軟件,過去它主要應(yīng)用于工業(yè)控制和國防系統(tǒng)領(lǐng)域。EOS負責(zé)嵌入系統(tǒng)的全部軟、硬件資源的分配、調(diào)度作,控制、協(xié)調(diào)并發(fā)活動;它必須體現(xiàn)其所在系統(tǒng)的特征,能夠通過裝卸某些模塊來達到系統(tǒng)所要求的功能。目前,已推出一些應(yīng)用成功的EOS產(chǎn)品系列。隨著 Internet技術(shù)的發(fā)展、信息家電的普及應(yīng)用及EOS的微型化和專業(yè)化,EOS開始從單一的弱功能向高專業(yè)化的強功能方向發(fā)展。嵌入式操作系統(tǒng)在系統(tǒng)實時高效性、硬件的相關(guān)依賴性、軟件固化以及應(yīng)用的專用性等方面具有較為突出的特點。EOS是相對于一般操作系統(tǒng)而方的,它除具備了一般操作系統(tǒng)最基本的功能,如任務(wù)調(diào)度、同步機制、中斷處理、文件處理等外,還有以下特點:   

       ①可裝卸性。開放性、可伸縮性的體系結(jié)構(gòu)。   

       ②強實時性。EOS實時性一般較強,可用于各種設(shè)備控制當中。   

       ③統(tǒng)一的接口。提供各種設(shè)備驅(qū)動接口。   

       ④操作方便、簡單、提供友好的圖形GUI,圖形界面,追求易學(xué)易用。   

       ⑤提供強大的網(wǎng)絡(luò)功能,支持TCP/IP協(xié)議及其它協(xié)議,提供TCP/UDP/IP/PPP協(xié)議支持及統(tǒng)一的MAC訪問層接口,為各種移動計算設(shè)備預(yù)留接口。   

       ⑥強穩(wěn)定性,弱交互性。嵌入式系統(tǒng)一旦開始運行就不需要用戶過多的干預(yù),這就要負責(zé)系統(tǒng)管理的EOS具有較強的穩(wěn)定性。嵌入式操作系統(tǒng)的用戶接口一般不提供操作命令,它通過系統(tǒng)的調(diào)用命令向用戶程序提供服務(wù)。   

       ⑦固化代碼。在嵌入式系統(tǒng)中,嵌入式操作系統(tǒng)和應(yīng)用軟件被固化在嵌入式系統(tǒng)計算機的ROM中。輔助存儲器在嵌入式系統(tǒng)中很少使用,因此,嵌入式操作系統(tǒng)的文件管理功能應(yīng)該能夠很容易地拆卸,而用各種內(nèi)存文件系統(tǒng)。   

       ⑧更好的硬件適應(yīng)性,也就是良好的移植性。   

國際上用于信息電器的嵌入式操作系統(tǒng)有40種左右?,F(xiàn)在,市場上非常流行的EOS產(chǎn)品,包括3Com公司下屬子公司的palm OS,全球占有份額達50%,Microsoft公司的Windows CE不過29%。在美國市場,Palm OS更以80%的占有率遠超Windows CE。開放源代碼的Linux很適于做信息家電的開發(fā)。比如:中科紅旗軟件技術(shù)有限公司開發(fā)的紅旗嵌入式Linux和美商網(wǎng)虎公司開發(fā)的基于Xlinux 的嵌入式操作系統(tǒng)“夸克”?!翱淇恕笔悄壳叭澜缱钚〉腖inux,它有兩具很突出的特點,就是體積小和使用GCS編碼。 

2、三種常用的嵌入式操作系統(tǒng)

2.1 palm OS

Palm是3Com公司的產(chǎn)品,其操作系統(tǒng)為Palm OS。Palm OS是一種32位的嵌入式操作系統(tǒng)。Palm提供了串行通信接口和紅外線傳輸接口,利用它可以方便地與其它外部設(shè)備通信、傳輸數(shù)據(jù);擁有開放的OS應(yīng)用程序接口,開發(fā)商可根據(jù)需要自行開發(fā)所需的應(yīng)用程序。Palm OS是一套具有術(shù)強開放性的系統(tǒng),現(xiàn)在有大約數(shù)千種專用為Palm OS編寫的應(yīng)用程序,從程序內(nèi)容上看,小到個人管理、游戲,大到行業(yè)解決方案,Palm OS無所不包。在豐富的軟件支持下,基于Palm OS的掌上電腦功能得以不斷擴展。

Palm OS是一套專門為掌上電腦開發(fā)的OS。在編寫程序時,Palm OS充分考慮了掌上電腦內(nèi)存相對較小的情況,因此它只占有非常小的內(nèi)存。由于基于Palm OS編寫的應(yīng)用程序占用的空間也非常小(通常只有幾十KB),所以,基于Palm OS的掌上電腦(雖然只有幾MB的RAM)可以運行眾多應(yīng)用程序。

由于Palm產(chǎn)品的最大特點是使用簡便、機體輕巧,因此決定了Palm OS應(yīng)具有以下特點。

①操作系統(tǒng)的節(jié)能功能。由上

掌上電腦要求使用電源盡可能小,因此在Palm OS的應(yīng)用程序中,如果沒有事件運行,則系統(tǒng)設(shè)備進入半休眠(doze)的狀態(tài);如果應(yīng)用程序停止活動一段時間,則系統(tǒng)自動進入休眠(sleep)狀態(tài)。

②合理的內(nèi)存管理。Palm的存儲器全部是可讀寫的快速RAM,動態(tài)RAM(Dynamic RAM)類似于PC機上的RAM,它為全局變量和其它不需永久保存的數(shù)據(jù)提供臨時的存儲空間;存儲RAM(Storage RAM)類似于PC機上的硬盤,可以永久保存應(yīng)用程序和數(shù)據(jù)。

③Palm OS的數(shù)據(jù)是以數(shù)據(jù)庫(database)的格式來存儲的。數(shù)據(jù)庫是由一組記錄(records)和一些數(shù)據(jù)庫頭信息組成的。為保證程序處理速度和存儲器空間,在處理數(shù)據(jù)的時候,Palm OS不是把數(shù)據(jù)從存儲堆(Storage Heap)拷貝到動態(tài)堆(Dynamic Heap)后再進行處理,而是在存儲堆中直接處理。為避免錯誤地調(diào)用存儲器地址,Palm OS規(guī)定,這一切都必須調(diào)用其內(nèi)存管理器里的API來實現(xiàn)。

Palm OS與同步軟件(HotSync)結(jié)合可以使掌上電腦與PC機上的信息實現(xiàn)同步,把臺式同的功能擴展到了掌上電腦。Palm應(yīng)用范圍相當廣泛,如:聯(lián)絡(luò)及工作表管理、電子郵件及互聯(lián)網(wǎng)通信、銷售人員及組別自動化等等。Palm外圍硬件也十分豐富,有數(shù)碼相機、GPS接收器、調(diào)制解調(diào)器、GSM無線電話、數(shù)碼音頻播放設(shè)備、便攜鍵盤、語音記錄器、條碼掃描、無線尋呼接收器、探測儀。其中Palm與GPS結(jié)合的應(yīng)用,不但可以作導(dǎo)航定位,還可以結(jié)合GPS作氣候的監(jiān)測、地名調(diào)查等。

2.2 Windows CE

Windows CE是微軟開發(fā)的一個開放的、可升級的32位嵌入式操作系統(tǒng),是基于掌上型電腦類的電子設(shè)備操作。它是精簡的Windows 95。Windows CE的圖形用戶界面相當出色。其中CE中的C代表袖珍(Compact)、消費(Consumer)、通信能力(Connectivity)和伴侶(Companion);E代表電子產(chǎn)品(Electronics)。與Windows 95/98、Windows NT不同的是,Windows CE是所有源代碼全部由微軟自行開發(fā)的嵌入式新型操作系統(tǒng),其操作界面雖來源于Windows 95/98,但Windows CE是基于Win32 API重新開發(fā)的、新型的信息設(shè)備平臺。Windows CE具有模塊化、結(jié)構(gòu)化和基于Win32應(yīng)用程序接口以及與處理器無關(guān)等特點。Windows CE不僅繼承了傳統(tǒng)的Windows圖形界面,并且在Windows CE平臺上可以使用Windows 95/98上的編程工具(如Visual Basic、Visual C++等)、使用同樣的函數(shù)、使用同樣的界面網(wǎng)格,使絕大多數(shù)的應(yīng)用軟件只需簡單的修改和移植就可以在Windows CE平臺上繼續(xù)使用。

Windows CE的設(shè)計目標是:模塊化及可伸縮性、實時性能好,通信能力強大,支持多種CPU。它的設(shè)計可以滿足多種設(shè)備的需要,這些設(shè)備包括了工業(yè)控制器、通信集線器以及銷售終端之類的企業(yè)設(shè)備,還有像照相機、電話和家用娛樂器材之類的消費產(chǎn)品。一個典型的基于Windows CE的嵌入系統(tǒng)通常為某個特定用途而設(shè)計,并在不聯(lián)機的情況下工作。它要求所使用的操作系統(tǒng)體積較小,內(nèi)建有對中斷的響應(yīng)功能。

Windows CE的特點有:

 ?、倬哂徐`活的電源管理功能,包括瞬眠/喚醒模式。

  ②使用了對象存儲(object store)技術(shù),包括

文件系統(tǒng)、注冊表及數(shù)據(jù)庫。它還具有很多高性能、高效率的操作系統(tǒng)特 性,包括按需換頁、共享存儲、交叉處理同步、支持大容量堆(heap)等。

 ?、蹞碛辛己玫耐ㄐ拍芰ΑV泛支持各種通信硬件,亦支持直接的局域連接以及撥號連接,并提供與PC、內(nèi)部網(wǎng)以及Internet的連接,還提供與Windows 9x/NT的最佳集成和通信。

 ?、苤С智短字袛?。允許更高優(yōu)先級別的中斷首先得到響應(yīng),而不是等待低級別的ISR完成。這使得該操作系統(tǒng)具有嵌入式操作系統(tǒng)所要求的實時性。

 ?、莞玫木€程響應(yīng)能力。對高級別IST(中斷服務(wù)線程)的響應(yīng)時間上限的要求更加嚴格,在線程響應(yīng)能力方面的改進,幫助開發(fā)人員掌握線程轉(zhuǎn)換的具體時間,并通過增強的監(jiān)控能力和對硬件的控制能力幫助他們創(chuàng)建新的嵌入式應(yīng)用程序。

  ⑥256個優(yōu)先級別。可以使開發(fā)人員在控制嵌入式系統(tǒng)的時序安排方面有更大的靈活性。

 ?、遅indows CE的API是Win32 API的一個子集,支持近1500個Win32 API。有了這些API,足可以編寫任何復(fù)雜的應(yīng)用程序。當然,在Windows CE系統(tǒng)中,所提供的API也可以隨具體應(yīng)

用的需求而定。

在掌上型電腦中,Windows CE包含如下一些重要組件:Pocket Outlook及其組件、語音錄音機、移動頻道、遠程撥號訪問、世界時鐘、計算器、多種輸入法、GBK字符集、中文TTF字庫、英漢雙向詞典、袖珍瀏覽器、電子郵件、Pocket Office、系統(tǒng)設(shè)置、Windows CE Services軟件。

2.3 Linux

Linux是一個類似于Unix的操作系統(tǒng)。它起源于芬蘭一個名為Linus Torvalds的業(yè)余愛好,但是現(xiàn)在已經(jīng)是最為流行的一款開放源代碼的操作系統(tǒng)。Linux從1991年問世到現(xiàn)在,短短10年的時間內(nèi)已發(fā)展成為一個功能強大、設(shè)計完善的操作系統(tǒng),伴隨網(wǎng)絡(luò)技術(shù)進步而發(fā)展起來的Linux OS已成為Microsoft公司的DOS和Windows 95/98的強勁對手。Linux系統(tǒng)不僅能夠運行于PC平臺,還在嵌入式系統(tǒng)方面大放光芒,在各種嵌入式Linux OS迅速發(fā)展的狀況下,Linux OS逐漸形成了可與Windows CE等EOS進行抗衡的局面。目前正在開發(fā)的嵌入式系統(tǒng)中,49%的項目選擇Linux作為嵌入式操作系統(tǒng)。Linux現(xiàn)已成為嵌入式操作的理想選擇。

中科紅旗軟件技術(shù)有限公司開發(fā)的紅旗嵌入式Linux正在成為許多嵌入式設(shè)備廠商的首選。在不到一年的時間內(nèi),紅旗公司先后推出了 PDA、機頂盒、瘦客戶機、交換機用的嵌入式Linux系統(tǒng),并且投入了實際應(yīng)用?,F(xiàn)以紅旗嵌入式Linux為例來講解嵌入式Linux OS的特點:

 ?、倬喌膬?nèi)核,性能高、穩(wěn)定,多任務(wù)。

 ?、谶m用于不同的CPU,支持多種體系結(jié)構(gòu),如X86、ARM、MIPS、ALPHA、SPARC等。

 ?、勰軌蛱峁┩晟频那度胧紾UI以及嵌入式X-Windows。

 ?、芴峁┣度胧綖g覽器、郵件程序、MP3播放器、MPEG播放器、記事本等應(yīng)用程序。

 ?、萏峁┩暾拈_發(fā)工具和SDK,同時提供PC上的開發(fā)版本。

  ⑥用戶可定制,可提供圖形化的定制和配置工具。

 ?、叱S们度胧叫酒尿?qū)動集,支持大量的周邊硬件設(shè)備,驅(qū)動豐富。

  ⑧針對嵌入式的存儲方案,提供實時版本和完善的嵌入式解決方案。

 ?、嵬晟频闹形闹С郑瑥姶蟮募夹g(shù)支持,完整的文檔。

 ?、忾_放源碼,豐富的軟件資源,廣泛的軟件開發(fā)者的支持,價格低廉,結(jié)構(gòu)靈活,適用面廣。

3、三種嵌入式操作系統(tǒng)的

3.1 Linux OS與Windows Ce的

嵌入式Linux OS與Windows CE相比的優(yōu)點:第一,Linux是開放源代碼的,不在存黑箱技術(shù),遍布全球的眾多Linux愛好者都是Linux開發(fā)者的強大技術(shù)支持者;而 Windows CE是非開放性O(shè)S,使第三方很難實現(xiàn)產(chǎn)品定制。第二,Linux的源代碼隨處可得,注釋豐富,文檔齊全,易于解決各種問題。第三,Linux的內(nèi)核小、效率高;而Windows CE在這方面是笨拙的,占用過多的RAM,應(yīng)用程序龐大。第四,Linux是開放源代碼的OS,在價格上極具競爭力,適合中國國情。Windows CE的版權(quán)費用是廠家不得不考慮的因素。第五,Linux不僅支持x86芯片,還是一個跨平臺的系統(tǒng)。到目前為止,它可以支持20~30種CPU,很多 CPU(包括家電業(yè)的芯片)廠商都開始做Linux的平臺移植工作,而且移植的速度遠遠超過Java的開發(fā)環(huán)境。如果今天采用Linux環(huán)境開發(fā)產(chǎn)品,那么將來更換CPU時就不會遇到更換平臺的困擾。第六,Linux內(nèi)核的結(jié)構(gòu)在網(wǎng)絡(luò)方面是非常完整的,它提供了對包括十兆位、百兆位及千兆位的以太網(wǎng)絡(luò),還有無線網(wǎng)絡(luò)、Token ring(令牌環(huán))和光纖甚至衛(wèi)星的支持。第七,Linux在內(nèi)核結(jié)構(gòu)的設(shè)計中考慮適應(yīng)系統(tǒng)的可裁減性的要求,Windows CE在內(nèi)核結(jié)構(gòu)的設(shè)計中并未考慮適應(yīng)系統(tǒng)的高度可裁減性的要求。

嵌入式Linux OS與Windows CE相比的弱點:第一,是開發(fā)難度較高,需要很高的技術(shù)實力;第二,是核心調(diào)試工具不全,調(diào)試不太方便,尚沒有很好的用戶圖形界面;第三,與某些商業(yè)OS 一樣,嵌入式Linux占用較大的內(nèi)存,當然,人們可以去掉部分無用的功能來減小使用的內(nèi)存,但是如果不仔細,將引起新的問題;第四,有些Linux的應(yīng)用程序需要虛擬內(nèi)存,而嵌入式系統(tǒng)中并沒有或不需要虛擬內(nèi)存,所以并非所有的Linux應(yīng)用程序都可以在嵌入式系統(tǒng)中運行。

3.2 palm OS與Windows CE的比較

3Com公司的Palm OS是掌上電腦市場中較為優(yōu)秀的嵌入式操作系統(tǒng),是針對這一市場專門設(shè)計的系統(tǒng)。它有開放的操作系統(tǒng)應(yīng)用程

序接口(API),支持開發(fā)商根據(jù)需要自行開發(fā)所需的應(yīng)用程序,具有十分豐富的應(yīng)用程序。在掌上電腦市場上獨占其霸主地位已久。

從技術(shù)層面上講,Palm OS是一套專門為掌上電腦開發(fā)的操作系統(tǒng),具有許多Windows CE無法比擬的優(yōu)勢;Windows CE過于臃腫,不適合應(yīng)用在廉價的掌上電腦中。

Palm OS是一套具有極強開放性的系統(tǒng)。開發(fā)者向用戶免費提供Palm OS的開發(fā)工具,允許用戶利用該工具在Palm OS基礎(chǔ)上方便地編寫、修改相關(guān)軟件。與之相比,Windows CE的開發(fā)工具就顯得復(fù)雜多了,這使得一般用戶很難掌握。這也Palm OS與Windows CE的另一個主要區(qū)別。

我們從常用EOS的大小、可開發(fā)定制、互操作性、通用性、實時性及應(yīng)用領(lǐng)域幾個方面,通過表1來歸納如下:

結(jié)語

Palm OS、Windows CE、Linux這三種嵌入式操作系統(tǒng)各有不同的特點,不同的用途;但Linux比Palm OS和Windows CE更小、更穩(wěn)定,而且Linux是開放的OS,在價格上極具競爭力。如今整個市場尚未成型,嵌入式操作系統(tǒng)也未形成統(tǒng)一的國際標準,而且Linux的一系列特征又為我們開發(fā)國產(chǎn)的嵌入式操作系統(tǒng)提供了方便,因此,我們有機會在這個未成熟的市場上占有一席之地。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉