耿志存
摘 要:本文首先闡述了嵌入式軟件發(fā)展趨勢, 分析了采用嵌入式操作系統(tǒng)的原因, 然后詳細(xì)研究了嵌入式操作系統(tǒng)中的關(guān)鍵技術(shù):實(shí)時(shí)性、可配置性、可靠性、可移植性等相關(guān)技術(shù), 最后對嵌入式操作系統(tǒng)的特點(diǎn)進(jìn)行了總結(jié)并展望了它的發(fā)展前景。
關(guān)鍵詞:嵌入式;系統(tǒng);技術(shù)
一、嵌入式XP操作系統(tǒng)發(fā)展趨勢
現(xiàn)如今,以計(jì)算機(jī)技術(shù)、通信技術(shù)和軟件技術(shù)為核心的信息技術(shù)取得了迅猛的發(fā)展,各種裝備與設(shè)備上嵌入式計(jì)算和系統(tǒng)的廣泛應(yīng)用大大地推動了行業(yè)的滲透性應(yīng)用,嵌入式XP操作系統(tǒng)已成為信息產(chǎn)業(yè)中最為耀眼的“明星”之一。
嵌入式系統(tǒng)被描述為:“以應(yīng)用為中心、軟件硬件可裁剪的、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗等嚴(yán)格綜合性要求的專用計(jì)算機(jī)系統(tǒng)”,由嵌入式硬件和嵌入式軟件兩部分組成。硬件是支撐,軟件是靈魂,幾乎所有的嵌入式產(chǎn)品中都需要嵌入式軟件來提供靈活多樣、并且應(yīng)用特制的功能。由于嵌入式系統(tǒng)應(yīng)用廣泛,嵌入式軟件在整個軟件產(chǎn)業(yè)中占據(jù)了重要地位,并得到世界各國的廣泛關(guān)注。
二、嵌入式XP操作系統(tǒng)的關(guān)鍵技術(shù)
在一個完整的嵌入式系統(tǒng)中,嵌入式XP操作系統(tǒng)介于底層硬件和上層應(yīng)用程序之間,它是整個系統(tǒng)中不可缺少的重要組成部分。嵌入式XP操作系統(tǒng)與傳統(tǒng)操作系統(tǒng)的基本功能是一致的,即:首先嵌入式操作系統(tǒng)必須能正確、高效地訪問和管理底層的各種硬件資源,很好地處理資源管理中的沖突;其次嵌入式操作系統(tǒng)要能為應(yīng)用程序提供功能完備、使用方便、與底層硬件細(xì)節(jié)無關(guān)的系統(tǒng)調(diào)用接口。但嵌入式XP操作系統(tǒng)也有其獨(dú)特的需求和技術(shù)特點(diǎn),主要區(qū)別是:1、許多嵌入式系統(tǒng)應(yīng)用有實(shí)時(shí)性要求,因此多數(shù)嵌入式操作系統(tǒng)都具備實(shí)時(shí)性的技術(shù)指標(biāo),能保障系統(tǒng)的實(shí)時(shí)響應(yīng)速度;2、為適應(yīng)嵌入式系統(tǒng)計(jì)算資源的限制,嵌入式操作系統(tǒng)核心部分的體積必須盡可能的小;3、為了適應(yīng)各種應(yīng)用需求的變化,嵌入式操作系統(tǒng)還應(yīng)該具有可裁減性、可移植性的特點(diǎn),讓開發(fā)人員可以根據(jù)需要對嵌入式操作系統(tǒng)進(jìn)行剪裁和移植;4、嵌入式XP操作系統(tǒng)往往是長期連續(xù)運(yùn)行的,因此要求要有很高的可靠性,不能“死機(jī)”;5、針對特定的應(yīng)用需求,嵌入式操作系統(tǒng)往往還要對某些模塊做特別的性能優(yōu)化和功能增強(qiáng)。
(一)實(shí)時(shí)性
許多應(yīng)用場合對嵌入式系統(tǒng)有實(shí)時(shí)性的要求,比如汽車的安全氣囊要求能在一個極短的時(shí)間內(nèi)偵測到汽車碰撞事件的發(fā)生并控制打開安全氣囊。為了實(shí)現(xiàn)上述目標(biāo),一方面硬件的傳感器和安全氣嚢要有足夠快的響應(yīng)速度,另一方面就是微處理器、嵌入式操作系統(tǒng)和相應(yīng)的事件響應(yīng)程序要能處理得足夠快。嵌入式操作系統(tǒng)為了提高實(shí)時(shí)性能,就必須盡量縮短操作系統(tǒng)代碼中的關(guān)閉中斷過程,并通過精心的設(shè)計(jì)確定關(guān)中斷的時(shí)間長短。這些設(shè)計(jì)包括:1、操作系統(tǒng)中的進(jìn)程須是具有嚴(yán)格優(yōu)先級差異的,而且應(yīng)該是搶占式的操作系統(tǒng)內(nèi)核,即最高優(yōu)先級的進(jìn)程即使是最后出現(xiàn),也應(yīng)該最先獲得運(yùn)行,而且是無條件立即停止當(dāng)前進(jìn)程的運(yùn)行來切換到具有最高優(yōu)先級的進(jìn)程。2、與實(shí)時(shí)處理相關(guān)的函數(shù)應(yīng)盡量都是可重入的,即函數(shù)中均使用局部變量。如果使用全局變量,為保證程序的正確性必須對全局變量的訪問加鎖,而這樣的保護(hù)措施有可能導(dǎo)致進(jìn)程堵塞,從而影響操作系統(tǒng)的實(shí)時(shí)性。3、高效的克服優(yōu)先級反轉(zhuǎn)問題,防止高優(yōu)先級的進(jìn)程由于等待某些被低優(yōu)先級進(jìn)程已占用的資源,從而被其他低優(yōu)先級的進(jìn)程搶先運(yùn)行,影響系統(tǒng)的實(shí)時(shí)性能。4、其他實(shí)時(shí)操作系統(tǒng)內(nèi)核的設(shè)計(jì),如解決周期性任務(wù)的調(diào)度和時(shí)間抖動問題等。
(二)可靠性、可配置性、可移植性
任何軟件都有可能存在錯誤,嵌入式操作系統(tǒng)也不例外。運(yùn)行在桌面上的操作系統(tǒng)有時(shí)會“死機(jī)”,使用者還可以通過重啟計(jì)算機(jī)來予以容忍,但是嵌入式XP系統(tǒng)往往要長期在無人值守的環(huán)境下運(yùn)行,甚至是常年運(yùn)行,因此對可靠性的要求就成為嵌入式操作系統(tǒng)的一個重要特點(diǎn)。
可配置性是嵌入式操作系統(tǒng)的又一個重要特征,也是區(qū)別于通用操作系統(tǒng)的一個重要特點(diǎn)。在嵌入式領(lǐng)域,底層硬件和應(yīng)用需求往往變化多端,有的系統(tǒng)需要存儲管理單元來在虛擬地址空間上運(yùn)行程序;有的嵌入式系統(tǒng)希望具有優(yōu)先級搶先調(diào)度機(jī)制;有的嵌入式系統(tǒng)希望實(shí)時(shí)時(shí)鐘的周期為20ms,有的希望是1ms;有的嵌入式系統(tǒng)的底層硬件有多級中斷,有的只有一級中斷等等。所有這些變化使一個嵌入式操作系統(tǒng)要想占據(jù)更大的市場份額,就必須自身具備可配置性,并且配置功能方便易用,使得同一個嵌入式操作系統(tǒng)的代碼在經(jīng)過較為方便的配置后,可以在特定的硬件平臺和應(yīng)用需求下獲得最佳的性能。
可移植性是指同一個嵌入式操作系統(tǒng)在進(jìn)行適當(dāng)修改后可以在不同的硬件平臺上成功運(yùn)行。由于移植的目的是希望在不同的底層硬件平臺(或者說是不同的嵌入式處理器)上運(yùn)行,因此嵌入式操作系統(tǒng)為了獲得良好的可移植性,一般都將移植時(shí)需要修改的代碼集中在少數(shù)幾個與硬件操作相關(guān)的C程序或匯編程序中,或者將相關(guān)代碼獨(dú)立成外設(shè)驅(qū)動程序,以方便系統(tǒng)開發(fā)人員的移植工作。
三、結(jié)語
本文介紹了嵌入式操作系統(tǒng)所具備的特點(diǎn),各行業(yè)巨大的智能化裝備需求拉動了嵌入式系統(tǒng)的發(fā)展。同傳統(tǒng)的通用計(jì)算機(jī)系統(tǒng)不同,嵌入式系統(tǒng)面向特定應(yīng)用領(lǐng)域,根據(jù)應(yīng)用需求定制開發(fā),并隨著智能化產(chǎn)品的普遍需求滲透到各行各業(yè)。未來隨著嵌入式系統(tǒng)的應(yīng)用需求越來越多樣化、越來越復(fù)雜,嵌入式操作系統(tǒng)的特點(diǎn)越來越具有特色,來適用于不同的嵌入式應(yīng)用需求,不斷加快嵌入式系統(tǒng)的開發(fā)周期,同時(shí)又能降低嵌入式系統(tǒng)的研發(fā)和生產(chǎn)成本。
參考文獻(xiàn):
[1]吳朝暉.嵌入式軟件發(fā)展趨勢.電子產(chǎn)品世界[J].2005,2:36,48.
[2]Simpson.[美].WindowsXP寶典[M].北京:電子工業(yè)出版社,2006.
[3]鄒思軼.嵌入式Linux設(shè)計(jì)與應(yīng)用[M].北京:清華大學(xué)出版社,2002.
[4]邵貝貝.嵌入式軟件的安全可靠性控制.電子產(chǎn)品世界[J].2005,2:38,40.
[5]Daniel.BovetP,MarcoCesati著,陳莉君等譯.深入理解Linux內(nèi)核[M].第二版.北京:中國電力出版社,2004.