隨著3G時(shí)代的來臨,手機(jī)對(duì)嵌入式軟件提出了更為嚴(yán)格的要求,而在嵌入式軟件里邊,尤其重要的是實(shí)時(shí)操作系統(tǒng)平臺(tái)。與2G和2.5G的手機(jī)相比,無論從復(fù)雜度或?qū)崿F(xiàn)上來說,3G手機(jī)都復(fù)雜的多。這就要求實(shí)時(shí)操作系統(tǒng)平臺(tái)不僅要可靠、穩(wěn)定,而且要容易使用,具備良好的電源管理、支持空中下載、完善的調(diào)電保護(hù)機(jī)制等,同時(shí)要非常容易地和第三方的上層應(yīng)用軟件集成等。隨著手機(jī)中多CPU/DSP系統(tǒng)的增加,對(duì)分布式系統(tǒng)的支持也成為必然,這樣客戶就如在一個(gè)CPU里編程一樣方便。
本文針對(duì)下一代手機(jī)對(duì)實(shí)時(shí)操作系統(tǒng)的要求,結(jié)合Enea公司的OSE RTOS做了一個(gè)分析介紹。2005年全球銷售的2G/2.5G手機(jī)里15%使用Enea的OSE RTOS,WCDMA手機(jī)里40% -50%左右含有OSE RTOS;方案如愛立信、諾基亞、杰爾系統(tǒng)、英飛凌等;手機(jī)如:索愛、LG、NEC、夏普、三星、夏新、TCL等。
容易使用,維護(hù)成本少
軟件的開發(fā)難易程度在很大程度上直接影響了產(chǎn)品開發(fā)的進(jìn)度,同時(shí)軟件的維護(hù)成本也極大地影響了系統(tǒng)的成本。
傳統(tǒng)的操作系統(tǒng)都是基與郵箱、管道和隊(duì)列來實(shí)現(xiàn)進(jìn)程間的通訊的;對(duì)于一個(gè)固定大小的數(shù)據(jù)交換進(jìn)程間通訊(IPC),開發(fā)者究竟是選擇郵箱,管道,還是隊(duì)列是一個(gè)比較復(fù)雜的問題,而且會(huì)不同程度的影響系統(tǒng)的性能(數(shù)據(jù)被兩次復(fù)制);整個(gè)系統(tǒng)中可能會(huì)有數(shù)一萬計(jì)的進(jìn)程間通訊,所以對(duì)于一般的軟件開發(fā)人員很難選擇一個(gè)的方法?!⊥瑫r(shí)傳統(tǒng)的操作系統(tǒng)通過使用信號(hào)量等來實(shí)現(xiàn)同步,而信號(hào)量其固有的缺點(diǎn):如死鎖、優(yōu)先級(jí)反轉(zhuǎn)等都會(huì)造成系統(tǒng)的不穩(wěn)定。傳統(tǒng)操作系統(tǒng)的出錯(cuò)處理都比較煩瑣:例如有一萬條內(nèi)存分配語句,就會(huì)有一萬條內(nèi)存出錯(cuò)判斷語句,這樣會(huì)很大程度地增加代碼的大小。
OSE操作系統(tǒng)是基于消息傳遞(Message-Passing)的體系結(jié)構(gòu),這使進(jìn)程間通訊只需要通過消息(Message)就可非常容易的實(shí)現(xiàn),而且數(shù)據(jù)是零拷貝的(只是指針發(fā)生變化),這樣極大地提高了系統(tǒng)的性能。同時(shí)OSE的消息傳遞機(jī)制可用自動(dòng)實(shí)現(xiàn)同步。OSE集中式的出錯(cuò)處理機(jī)制使系統(tǒng)的出錯(cuò)判斷變得非常簡(jiǎn)單:如上邊所說的有一萬條內(nèi)存分配的語句,OSE只需要一條集中式的出錯(cuò)判斷就夠了,而且這條語句會(huì)告訴用戶什么地方出了什么錯(cuò),是什么樣的錯(cuò)誤,這樣極大地減少了系統(tǒng)的代碼,提高了系統(tǒng)的性能。
電源管理
電源管理是衡量操作系統(tǒng)一個(gè)非常重要的參數(shù),因?yàn)檫@會(huì)很大地影響終手機(jī)的電池使用時(shí)間。一般的操作系統(tǒng)不提供或只提供一個(gè)非常簡(jiǎn)單的電源管理,而要求開發(fā)者自己來實(shí)現(xiàn)電源管理,這會(huì)使開發(fā)者專著于開發(fā)操作系統(tǒng)本該有的部分,而會(huì)延長(zhǎng)整個(gè)系統(tǒng)的開發(fā)周期。
OSE提供的優(yōu)化電源管理機(jī)制使客戶專著于應(yīng)用程序的開發(fā),而且這種機(jī)制已經(jīng)在數(shù)以億計(jì)的手機(jī)里運(yùn)行著。OSE內(nèi)核自帶的優(yōu)化電源管理機(jī)制極大地提高了手機(jī)的電池使用壽命。通過OSE的電源管理機(jī)制檢測(cè)后,客戶可以根據(jù)需要進(jìn)行不同程度的電源管理。
空中下載OTA:軟件的動(dòng)態(tài)熱升級(jí)
空中下載OTA的功能越來越多地受到重視。現(xiàn)在大部分可以空中下載的都是獨(dú)立與手機(jī)應(yīng)用的JAVA程序。而Native的C應(yīng)用程序運(yùn)行速度快,而且不需要很多內(nèi)存支持。所以實(shí)現(xiàn)Native的C應(yīng)用程序下載是非常重要的。這樣就對(duì)操作系統(tǒng)提出了挑戰(zhàn):空中不僅下載Native的C應(yīng)用程序,而且要根據(jù)需要是否存入閃存里,以便下次手機(jī)啟動(dòng)時(shí)不需要重新下載。同時(shí)手機(jī)里原來的應(yīng)用程序可能也需要在線升級(jí),或移除原來不用的應(yīng)用程序,而要求不影響手機(jī)的運(yùn)行;這些需要都對(duì)操作系統(tǒng)提出了挑戰(zhàn)。
到目前為止,只有OSE可以實(shí)現(xiàn)這樣的功能。通過OSE的軟件熱升級(jí)模塊,可以在線升級(jí)客戶的應(yīng)用程序,同時(shí)升級(jí)的應(yīng)用可以根據(jù)需要放入閃存里。客戶可以移除不需要的部分應(yīng)用,而不影響系統(tǒng)的整體運(yùn)行。
只需NAND閃存的手機(jī)
由于手機(jī)的應(yīng)用越來越多,對(duì)內(nèi)存的需求越來越大。而傳統(tǒng)的NOR閃存與NAND閃存比較起來具有價(jià)格高、體積大的特點(diǎn)。因此開發(fā)只需NAND閃存的手機(jī)就成為迫切的需要,而這就要求操作系統(tǒng)來提供這部分的功能。OSE通過開發(fā)的Demand Paging技術(shù)可以實(shí)現(xiàn)只需NAND閃存的手機(jī)。通過OSE的Demand Paging技術(shù),客戶可以只使用標(biāo)準(zhǔn)的NAND閃存來對(duì)軟件進(jìn)行存儲(chǔ)和運(yùn)行,極大地減少了系統(tǒng)成本。
安全的內(nèi)存管理
內(nèi)存的管理在任何的嵌入式系統(tǒng)里都特別重要,因?yàn)檫@會(huì)極大地影響系統(tǒng)的實(shí)時(shí)性和安全性。傳統(tǒng)操作系統(tǒng)的動(dòng)態(tài)內(nèi)存分配都不同程度地影響了系統(tǒng)的實(shí)時(shí)性和安全性(有碎片)。為了實(shí)現(xiàn)分配的實(shí)時(shí)性和安全性,很多客戶在傳統(tǒng)操作系統(tǒng)之上做了一層,從而實(shí)現(xiàn)了類似的功能。OSE的內(nèi)存分配是經(jīng)過近二十年的無數(shù)的客戶測(cè)試的安全的分配機(jī)制,使客戶只專著與開發(fā)客戶的應(yīng)用。同時(shí)OSE的內(nèi)存保護(hù)機(jī)制在手機(jī)里也是特有的,并且有八年的歷史證明。
OSE的內(nèi)存保護(hù)機(jī)制使手機(jī)的應(yīng)用程序和系統(tǒng)程序分離,極大地提高了系統(tǒng)的安全性。OSE的動(dòng)態(tài)內(nèi)存分配機(jī)制,支持沒有碎片的內(nèi)存安全分配機(jī)制,同時(shí)極大地提高了內(nèi)存的分配性能。
掉電保護(hù)
調(diào)電保護(hù)是非常明顯的而且非常重要的手機(jī)特性。在現(xiàn)有的手機(jī)中,大部分客戶都是根據(jù)需要自己做一定的保護(hù)機(jī)制。如果從整體考慮,操作系統(tǒng)的文件系統(tǒng)應(yīng)該在此扮演很重要的角色,可是現(xiàn)實(shí)情況并非如此。
Enea在世界手機(jī)巨頭的驅(qū)使下,實(shí)現(xiàn)了手機(jī)很好的掉電保護(hù)處理:通過OSE的Crash Safe Flash文件系統(tǒng)來進(jìn)行保護(hù),可以非常容易地對(duì)掉電進(jìn)行保護(hù)處理。
同一結(jié)構(gòu)的OS支持基帶和應(yīng)用處理器:多核支持 (ARM+DSP)
現(xiàn)在大部分的手機(jī)都是基帶處理器和應(yīng)用處理器的模式,手機(jī)里大多包含ARM和DSP,而且兩個(gè)部分都有很多代碼。在某種程度上用戶很可能要求應(yīng)用處理器的部分代碼移植到基帶處理器上,或基帶處理器上的部分代碼移到應(yīng)用處理器上。如果兩個(gè)處理器運(yùn)行不同的操作系統(tǒng),這會(huì)給移植帶來很大的麻煩。而OSE即可以運(yùn)行在基帶處理器上,又可以運(yùn)行在應(yīng)用處理器上,所以非常容易來實(shí)現(xiàn)這種應(yīng)用,世界上除了OSE外,還沒有第二個(gè)OS支持這種應(yīng)用。同時(shí)OSE支持分布式應(yīng)用的模塊LINX使用戶非常容易地對(duì)多核系統(tǒng)進(jìn)行編程,如同在一個(gè)CPU里編程一樣。
OSE的內(nèi)核可以同時(shí)支持ARM和DSP,兩個(gè)版本的API幾乎一樣,從而使ARM上的代碼和 DSP上的代碼可以非常容易的相互移植。OSE支持分布式系統(tǒng)的模塊LINX使用戶非常容易地對(duì)多核系統(tǒng)進(jìn)行編程,如同在一個(gè)CPU里編程一樣。
手機(jī)數(shù)據(jù)庫
隨著手機(jī)應(yīng)用程序和數(shù)據(jù)的增加,對(duì)手機(jī)數(shù)據(jù)庫的需求已經(jīng)成為必然。Enea根據(jù)市場(chǎng)的需求,開發(fā)了適用于手機(jī)市場(chǎng)的Polyhedra FlashLite關(guān)系型實(shí)時(shí)數(shù)據(jù)庫,具有性能高、代碼小的特點(diǎn);同時(shí)支持SQL語言,支持ODBC、JDBC標(biāo)準(zhǔn)。
開發(fā)工具
開發(fā)調(diào)試工具在軟件的開發(fā)過程中起著舉足輕重的作用。傳統(tǒng)的JTAG開發(fā)調(diào)試,只適合與小的應(yīng)用系統(tǒng),如果系統(tǒng)有上千上萬個(gè)任務(wù),使用JTAG就很難發(fā)現(xiàn)問題的所在。所以系統(tǒng)級(jí)的調(diào)試工具就變的非常容易。
OSE的系統(tǒng)級(jí)調(diào)試工具使用戶非常容易對(duì)系統(tǒng)的整體進(jìn)行調(diào)試,如可以看到內(nèi)存的Profile、CPU的Profile等OSE的軟仿真可以仿真實(shí)際系統(tǒng)。
第三方軟件和業(yè)界標(biāo)準(zhǔn)的支持
對(duì)第三方上層軟件和業(yè)界標(biāo)準(zhǔn)的支持也是衡量操作系統(tǒng)很重要的標(biāo)志。Enea已經(jīng)支持很多第三的軟件和業(yè)界標(biāo)準(zhǔn)。例如在Application Framework領(lǐng)域,Enea已經(jīng)和Access、Trolltech Pollex、Teleca Obigo、Feynman、Openwave、SKY Mobile Media等;在業(yè)界變準(zhǔn)方面,OSE支持POSIX標(biāo)準(zhǔn),支持JAVA CLDC和CDC標(biāo)準(zhǔn),同時(shí)Enea也是OMTP的成員。
Enea無線開發(fā)平臺(tái)
下一代手機(jī)對(duì)實(shí)時(shí)操作系統(tǒng)(RTOS)的要求
更新時(shí)間: 2007-11-01 09:10:54來源: 粵嵌教育瀏覽量:1420
粵嵌動(dòng)態(tài)
推薦閱讀
- ·廣州粵嵌通信科技股份有限公司關(guān)于虛假返還款項(xiàng)通知的嚴(yán)正聲明
- ·佛山市冠宇達(dá)電源有限公司專場(chǎng)招聘會(huì)(長(zhǎng)沙校區(qū))
- ·北京朝歌數(shù)碼科技股份有限公司專場(chǎng)招聘
- ·深圳研賽自動(dòng)化設(shè)備公司專場(chǎng)招聘(長(zhǎng)沙校區(qū))
- ·深圳市興禾自動(dòng)化股份有限公司專場(chǎng)招聘(長(zhǎng)沙校區(qū))
- ·中山市弘億實(shí)業(yè)有限公司專場(chǎng)招聘會(huì)
- ·東莞市德聲實(shí)業(yè)有限公司專場(chǎng)招聘
- ·深圳華創(chuàng)智聯(lián)電子有限公司專場(chǎng)招聘
- ·廣州2512全網(wǎng)運(yùn)營就業(yè)班
- ·廣州2511嵌入式開發(fā)就業(yè)班