當(dāng)我們?cè)谠O(shè)計(jì)信息電器、數(shù)字醫(yī)療設(shè)備等嵌入式產(chǎn)品時(shí),嵌入式操作系統(tǒng)的選擇至關(guān)重要。一般而言,在選擇嵌入式操作系統(tǒng)時(shí),可以遵循以下原則。總的來(lái)說(shuō),就是“做加法還是做減法”的問(wèn)題。
市場(chǎng)進(jìn)入時(shí)間
制定產(chǎn)品時(shí)間表與選擇操作系統(tǒng)有關(guān)系,實(shí)際產(chǎn)品和一般演示是不同的。目前是Windows程序員可能是人力資源最豐富的?,F(xiàn)成資源最多的也就可能是WinCE。使用WinCE能夠很快進(jìn)入市場(chǎng)。因?yàn)閃inCE+X86做產(chǎn)品實(shí)際上是在做減法,去掉你不要的功能,能很快出產(chǎn)品,但伴隨的可能是成本高,核心競(jìng)爭(zhēng)力差。而某些高效的操作系統(tǒng)可能由于編程人員缺乏,或由于這方面的技術(shù)積累不夠,影響開(kāi)發(fā)進(jìn)度。
可移植性
操作系統(tǒng)相關(guān)性。當(dāng)進(jìn)行嵌入式軟件開(kāi)發(fā)時(shí),可移植性是要重點(diǎn)考慮的問(wèn)題。良好的軟件移植性應(yīng)該比較好,可以在不同平臺(tái)、不同系統(tǒng)上運(yùn)行,跟操作系統(tǒng)無(wú)關(guān)。軟件的通用性和軟件的性能通常是矛盾的。即通用以損失某些特定情況下的優(yōu)化性能為代價(jià)。很難設(shè)想開(kāi)發(fā)一個(gè)嵌入式瀏覽器而僅能在某一特定環(huán)境下應(yīng)用。反過(guò)來(lái)說(shuō),當(dāng)產(chǎn)品與平臺(tái)和操作系統(tǒng)緊密結(jié)合時(shí),往往你的產(chǎn)品的特色就蘊(yùn)含其中。
可利用資源
產(chǎn)品開(kāi)發(fā)不同于學(xué)術(shù)課題研究,它是以快速、低成本、高質(zhì)量的推出適合用戶需求的產(chǎn)品為目的的。集中精力研發(fā)出產(chǎn)品的特色,其他功能盡量由操作系統(tǒng)附加或采用第三方產(chǎn)品,因此操作系統(tǒng)的可利用資源對(duì)于選型是一個(gè)重要參考條件。Linux和WinCE都有大量的資源可以利用,這是他們被看好的重要原因。其它有些實(shí)時(shí)操作系統(tǒng)由于比較封閉,開(kāi)發(fā)時(shí)可以利用的資源比較少,因此多數(shù)功能需要自己獨(dú)立開(kāi)發(fā)。從而影響開(kāi)發(fā)進(jìn)度。近來(lái)的市場(chǎng)需求顯示,越來(lái)越多的嵌入式系統(tǒng),均要求提供全功能的Web瀏覽器。而這要求有一個(gè)高性能、高可靠的GUI的支持。
系統(tǒng)定制能力
信息產(chǎn)品不同于傳統(tǒng)PC的Wintel結(jié)構(gòu)的單純性,用戶的需求是千差萬(wàn)別的,硬件平臺(tái)也都不一樣,所以對(duì)系統(tǒng)的定制能力提出了要求。要分析產(chǎn)品是否對(duì)系統(tǒng)底層有改動(dòng)的需求,這種改動(dòng)是否伴生著產(chǎn)品特色?Linux由于其源代碼開(kāi)放的天生魅力,在定制能力方面具有優(yōu)勢(shì)。隨著Wince 3.0原碼的開(kāi)放,以及微軟在嵌入式領(lǐng)域力度的加強(qiáng),其定制能力會(huì)有所提升。
成本
成本是所有產(chǎn)品不得不考慮的問(wèn)題。操作系統(tǒng)的選擇會(huì)對(duì)成本有什么影響呢?Linux免費(fèi),WinCE等商業(yè)系統(tǒng)需要支付許可證使用費(fèi),但這都不是問(wèn)題的答案。成本是需要綜合權(quán)衡以后進(jìn)行考慮的---選擇某一系統(tǒng)可能會(huì)對(duì)其它一系列的因素產(chǎn)生影響,如對(duì)硬件設(shè)備的選型、人員投入、以及公司管理和與其它合作伙伴的共同開(kāi)發(fā)之間的溝通等許多方面的影響。
中文內(nèi)核支持
國(guó)內(nèi)產(chǎn)品需要對(duì)中文的支持。由于操作系統(tǒng)多數(shù)是采用西文方式,是否支持雙字節(jié)編碼方式,是否遵循GBK,GB18030等各種國(guó)家標(biāo)準(zhǔn),是否支持中文輸入與處理,是否提供第三方中文輸入接口是針對(duì)國(guó)內(nèi)用戶的嵌入式產(chǎn)品的必需考慮的重要因素。
上面提到用WinCE+x86出產(chǎn)品是減法,這實(shí)際上就是所謂PC家電化;另外一種做法是加法,利用家電行業(yè)的硬件解決方案(絕大部分是非x86的)加以改進(jìn),加上嵌入式操作系統(tǒng),再加上應(yīng)用軟件。這是所謂家電PC化的做法,這種加法的優(yōu)勢(shì)是成本低,特色突出,缺點(diǎn)是產(chǎn)品研發(fā)周期長(zhǎng),難度大(需要深入了解硬件和操作系統(tǒng))。如果選擇這種做法,Linux是一個(gè)好選擇,它讓你能夠深入到系統(tǒng)底層,如果你愿意并且有能力。