|
哪的嵌入式培訓(xùn)較好_嵌入式系統(tǒng)開(kāi)發(fā)選擇Linux,
在過(guò)去的十年中,嵌入式系統(tǒng)的開(kāi)發(fā)發(fā)生了很大的變化。以前嵌入式設(shè)備往往是一個(gè)孤立的、資源有限的系統(tǒng),它們追求的是在有限的價(jià)格上滿(mǎn)足一定的功能性要求。通常它們采用那些功能并不強(qiáng)大的cpu,這也是開(kāi)發(fā)者不得不盡可能地壓縮嵌入式系統(tǒng)性能的原因。而今天人們對(duì)嵌入式設(shè)備在智能化和互連性上提出了要求,這使得嵌入式設(shè)備不再是孤立的,他們要通過(guò)互聯(lián)網(wǎng)、無(wú)線(xiàn)或是其他的方式實(shí)現(xiàn)相互連接,同時(shí)它們也是軟件生態(tài)系統(tǒng)(softwareecosystem)的一部分。最初的嵌入式設(shè)備是單一用途的,它們擁有各自獨(dú)特的顯示方式和用戶(hù)界面;而今天它們變成了我稱(chēng)之為“等同pc”的系統(tǒng)。它們必須運(yùn)行很多相同的應(yīng)用程序,它們需要采用相同的方式實(shí)現(xiàn)互連或是在某些情況下增強(qiáng)互連性。因此你可以看到在傳統(tǒng)的實(shí)時(shí)操作系統(tǒng)(rtos)之上建立應(yīng)用程序的必要性。作為內(nèi)部開(kāi)發(fā)(in-housedeveloped)操作系統(tǒng)的替代方式,rtos的出現(xiàn)使得建立嵌入式應(yīng)用變得更加容易。
在2000年以前,大多數(shù)的嵌入式系統(tǒng)仍然建立在內(nèi)部開(kāi)發(fā)的操作系統(tǒng)(os)基礎(chǔ)之上,但在此之后,windriver和其他的商業(yè)化rtos產(chǎn)品逐漸贏得了越來(lái)越大的市場(chǎng)份額。
如果開(kāi)發(fā)者試圖通過(guò)內(nèi)部開(kāi)發(fā)建立某些嵌入式系統(tǒng),就不得不建立從固件到應(yīng)用程序的完整的軟件棧(softwarestack)。垂直集成在給開(kāi)發(fā)者帶來(lái)很大的控制能力的同時(shí),也需要其在開(kāi)發(fā)和維護(hù)上進(jìn)行大量的投入。在過(guò)去的五年中,在經(jīng)歷了全球性的經(jīng)濟(jì)危機(jī)之后,面市時(shí)間(time-to-market)意味著一切,追求附加值成為電子業(yè)重要的追求。因此,如果你是一個(gè)工程經(jīng)理,考慮到你手中的資源,你是寧愿投資去創(chuàng)建一個(gè)自主產(chǎn)權(quán)的操作系統(tǒng)軟件平臺(tái),還是去開(kāi)發(fā)那些可以給你的應(yīng)用帶來(lái)差異化的技術(shù)呢?我相信你會(huì)選擇后者,因?yàn)殚_(kāi)發(fā)者通常希望使他們的應(yīng)用變得與眾不同。這就使得內(nèi)部開(kāi)發(fā)操作系統(tǒng)整合自主產(chǎn)權(quán)內(nèi)核的方法逐漸被淘汰。
如果你使用vxworks或者是psos,仍然免不了要在建立應(yīng)用軟件和中間件上進(jìn)行大量投入。這是因?yàn)閲@在這些操作系統(tǒng)周邊的生態(tài)資源十分有限。例如對(duì)于vxworks,只有一種webserver可供使用,而如果采用linux,會(huì)有八九種webserver供你選擇;vxworks只提供了一種網(wǎng)頁(yè)瀏覽器,而linux有16種不同的網(wǎng)頁(yè)瀏覽器支持。通常情況下對(duì)于某種實(shí)時(shí)系統(tǒng)你只能選擇一種文件系統(tǒng)——通常情況下為與windows兼容而選用fat文件系統(tǒng);而linux包含八九種本地文件系統(tǒng),它們可以與十多種外部文件系統(tǒng)兼容。
傳統(tǒng)的rtos與linux相比還有一個(gè)很大的不同——傳統(tǒng)的rtos是一系列“服務(wù)”的集合(librariesofservices),開(kāi)發(fā)者需要一個(gè)功能就加入一個(gè)功能,如果開(kāi)發(fā)者不需要就將它們?nèi)サ。但這就意味著建立在一個(gè)rtos上的系統(tǒng)的每一個(gè)執(zhí)行程序都是不同的,因?yàn)殚_(kāi)發(fā)者只是與那些需要的“服務(wù)”相聯(lián)系,你建立的是一組非常獨(dú)特的服務(wù)集合。這并不象是一個(gè)操作系統(tǒng)。而象linux這樣的操作系統(tǒng)提供了一個(gè)統(tǒng)一的平臺(tái),這使得那些智能設(shè)備不但可以獲得更好的互連性,增強(qiáng)它們彼此之間的差異性,同時(shí)也使它們獲得了不同的生命周期。
以手機(jī)的開(kāi)發(fā)為例,一部智能手機(jī)在離開(kāi)工廠時(shí),它具有一系列確定的功能。但是在銷(xiāo)售渠道中,人們往往希望對(duì)它原有的功能進(jìn)行修改,或是加入其他的功能。運(yùn)營(yíng)商希望在他們銷(xiāo)售的手機(jī)中體現(xiàn)出更多的差異化,他們希望加入諸如游戲等更多的服務(wù)。而最終用戶(hù)也許還希望能夠從第三方購(gòu)買(mǎi)到更豐富的游戲(和其他服務(wù))。如果開(kāi)發(fā)者的手機(jī)是一個(gè)單一用途的設(shè)備,它只能提供有限的服務(wù),那么在它基礎(chǔ)上建立服務(wù)和其他增值功能將是非常困難的。但如果開(kāi)發(fā)者面對(duì)的是一部采用嵌入式linux的手機(jī),并了解api和相關(guān)的標(biāo)準(zhǔn),他們就可以十分迅速地建立起豐富的軟件生態(tài)系統(tǒng)并迅速占領(lǐng)市場(chǎng)。產(chǎn)品長(zhǎng)期的差異化與互連性息息相關(guān),這包括它的網(wǎng)絡(luò)互連性、與中間件的互連性,以及與外圍生態(tài)環(huán)境的互連性。linux作為一個(gè)“在互聯(lián)網(wǎng)上成長(zhǎng)起來(lái)的動(dòng)物”,無(wú)論從哪方面講都應(yīng)該算是互連性最好的操作系統(tǒng)。
有人會(huì)將linux與微軟的windows相比較,確實(shí)windows具有很好的互連性,且具有非常全面的軟件棧。但一旦開(kāi)發(fā)者用windows建立了產(chǎn)品,他也就喪失了實(shí)現(xiàn)差異化的機(jī)會(huì)。僅僅將windowsos加到你的產(chǎn)品中并實(shí)現(xiàn)商用是十分迅速的。所以如果你想獲得面市時(shí)間上的優(yōu)勢(shì),windows會(huì)給你帶來(lái)很多功能性上的優(yōu)勢(shì)。但是你獲得功能性的同時(shí),也就失去了差異化的機(jī)會(huì)。
當(dāng)然,windows還有其他一些技術(shù)上的問(wèn)題,這主要體現(xiàn)在可靠性和軟件規(guī)模方面。windows的“體積”十分龐大。人們都在說(shuō)linux很大,確實(shí)與傳統(tǒng)rtos的70~80k的代碼規(guī)模相比,linux的大小通常在幾兆字節(jié),而最小的windowsce的代碼規(guī)模也有27mb(biplip標(biāo)注:應(yīng)該是2~3mb)。出于政治和法律上的考慮,微軟是不能將windows進(jìn)行拆分的。
同時(shí),windows和其它rtos還將遇到來(lái)自用戶(hù)不斷增加的使用成本(runtimecosts)方面的挑戰(zhàn),因?yàn)樗麄兪杖「哳~的版稅。嵌入式windows的版權(quán)費(fèi)大約為每拷貝12~15美元。對(duì)于那些大 |
|