嵌入式系統(tǒng)
(作者未知) 2009/5/10
(接上頁)法是加法,利用家電行業(yè)的硬件解決方案(絕大部分是非x86的)加以改進(jìn),加上嵌入式操作系統(tǒng),再加上應(yīng)用軟件。這是所謂家電PC化的做法,這種加法的優(yōu)勢是成本低,特色突出,缺點是產(chǎn)品研發(fā)周期長,難度大(需要深入了解硬件和操作系統(tǒng))。如果選擇這種做法,Linux是一個好選擇,它讓你能夠深入到系統(tǒng)底層,如果你愿意并且有能力。
四、幾種代表性嵌入式操作系統(tǒng)比較
(一)VxWorks
VxWorks操作系統(tǒng)是美國WindRiver公司于1983年設(shè)計開發(fā)的一種嵌入式實時操作系統(tǒng)(RTOS),是Tornado嵌入式開發(fā)環(huán)境的關(guān)鍵組成部分。良好的持續(xù)發(fā)展能力、高性能的內(nèi)核以及友好的用戶開發(fā)環(huán)境,在嵌人式實時操作系統(tǒng)領(lǐng)域逐漸占據(jù)一席之地。
VxWorks具有可裁剪微內(nèi)核結(jié)構(gòu);高效的任務(wù)管理;靈活的任務(wù)間通訊;微秒級的中斷處理;支持POSIX 1003.1b實時擴(kuò)展標(biāo)準(zhǔn);支持多種物理介質(zhì)及標(biāo)準(zhǔn)的、完整的TCP/IP網(wǎng)絡(luò)協(xié)議等。
然而其價格昂貴。由于操作系統(tǒng)本身以及開發(fā)環(huán)境都是專有的,價格一般都比較高,通常需花費10萬元人民幣以上才能建起一個可用的開發(fā)環(huán)境,對每一個應(yīng)用一般還要另外收取版稅。一般不通供源代碼,只提供二進(jìn)制代碼。由于它們都是專用操作系統(tǒng),需要專門的技術(shù)人員掌握開發(fā)技術(shù)和維護(hù),所以軟件的開發(fā)和維護(hù)成本都非常高。支持的硬件數(shù)量有限。
(二)Windows CE
Windows CE與Windows系列有較好的兼容性,無疑是Windows CE推廣的一大優(yōu)勢。其中WinCE3.0是一種針對小容量、移動式、智能化、32位、了解設(shè)備的模塊化實時嵌人式操作系統(tǒng)。為建立針對掌上設(shè)備、無線設(shè)備的動態(tài)應(yīng)用程序和服務(wù)提供了一種功能豐富的操作系統(tǒng)平臺,它能在多種處理器體系結(jié)構(gòu)上運行,并且通常適用于那些對內(nèi)存占用空間具有一定限制的設(shè)備。它是從整體上為有限資源的平臺設(shè)計的多線程、完整優(yōu)先權(quán)、多任務(wù)的操作系統(tǒng)。它的模塊化設(shè)計允許它對從掌上電腦到專用的工業(yè)控制器的用戶電子設(shè)備進(jìn)行定制。操作系統(tǒng)的基本內(nèi)核需要至少200KB的ROM。由于嵌入式產(chǎn)品的體積、成本等方面有較嚴(yán)格的要求,所以處理器部分占用空間應(yīng)盡可能的小。系統(tǒng)的可用內(nèi)存和外存數(shù)量也要受限制,而嵌入式操作系統(tǒng)就運行在有限的內(nèi)存(一般在ROM或快閃存儲器)中,因此就對操作系統(tǒng)的規(guī)模、效率等提出了較高的要求。從技術(shù)角度上講,Windows CE作為嵌入式操作系統(tǒng)有很多的缺陷:沒有開放源代碼,使應(yīng)用開發(fā)人員很難實現(xiàn)產(chǎn)品的定制;在效率、功耗方面的表現(xiàn)并不出色,而且和Windows一樣占用過的系統(tǒng)內(nèi)存,運用程序龐大;版權(quán)許可費也是廠商不得不考慮的因素。
(三)嵌入式Linux
這是嵌入式操作系統(tǒng)的一個新成員,其最大的特點是源代碼公開并且遵循GPL協(xié)議,在近一年多以來成為研究熱點,據(jù)IDG預(yù)測嵌入式Linux將占未來兩年的嵌入式操作系統(tǒng)份額的50%。
由于其源代碼公開,人們可以任意修改,以滿足自己的應(yīng)用,并且查錯也很容易。遵從GPL,無須為每例應(yīng)用交納許可證費。有大量的應(yīng)用軟件可用。其中大部分都遵從GPL,是開放源代碼和免費的。可以稍加修改后應(yīng)用于用戶自己的系統(tǒng)。 有大量的免費的優(yōu)秀的開發(fā)工具,且都遵從GPL,是開放源代碼的。有龐大的開發(fā)人員群體。無需專門的人才,只要懂Unix/Linux和C語言即可。隨著Linux在中國的普及,這類人才越來越多。所以軟件的開發(fā)和維護(hù)成本很低。優(yōu)秀的網(wǎng)絡(luò)功能,這在Internet時代尤其重要。穩(wěn)定——這是Linux本身具備的一個很大優(yōu)點。內(nèi)核精悍,運行所需資源少,十分適合嵌入式應(yīng)用。
支持的硬件數(shù)量龐大。嵌入式Linux和普通Linux并無本質(zhì)區(qū)別,PC上用到的硬件嵌入式Linux幾乎都支持。而且各種硬件的驅(qū)動程序源代碼都可以得到,為用戶編寫自己專有硬件的驅(qū)動程序帶來很大方便。
在嵌入式系統(tǒng)上運行Linux的一個缺點是Linux體系提供實時性能需要添加實時軟件模塊。而這些模塊運行的內(nèi)核空間正是操作系統(tǒng)實現(xiàn)調(diào)度策略、硬件中斷異常和執(zhí)行程序的部分。由于這些實時軟件模塊是在內(nèi)核空間運行的,因此代碼錯誤可能會破壞操作系統(tǒng)從而影響整個系統(tǒng)的可靠性,這對于實時應(yīng)用將是一個非常嚴(yán)重的弱點。
(四)µC/OS一Ⅱ
µC/OS一Ⅱ是著名的源代碼公開的實時內(nèi)核,是專為嵌入式應(yīng)用設(shè)計的,可用于8位,16位和32位單片機(jī)或數(shù)字信號處理器(DSP)。它是在原版本µC/OS的基礎(chǔ)上做了重大改進(jìn)與升級,并有了近十年的使用實踐,有許多成功應(yīng)用該實時內(nèi)核的實例。它的主要特點(未完,下一頁)
|