當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]多年經(jīng)驗(yàn)傾情奉獻(xiàn)--如何選擇適合當(dāng)前項(xiàng)目的最佳操作系統(tǒng)?

編者按:過(guò)去由于認(rèn)識(shí)上的局限性,對(duì)如何選用合適的操作系統(tǒng)博主同樣走過(guò)了很多彎路。在企業(yè)的發(fā)展過(guò)程中,為了滿足客戶的需求,我們大批量使用了正版uC/OS-II、WinCE、Vxworks、MontaVista Realtime Linux以及開(kāi)源的嵌入式Linux操作系統(tǒng)。在基于成本核算的項(xiàng)目管理過(guò)程中,博主領(lǐng)略了各種操作系統(tǒng)的優(yōu)劣。對(duì)于初學(xué)者來(lái)說(shuō),到底學(xué)習(xí)哪一種操作系統(tǒng)比較好呢?這要看你的條件和興趣了,因此不能一概而論。今特別從技術(shù)經(jīng)濟(jì)的角度出發(fā),將個(gè)人的管理經(jīng)驗(yàn)奉獻(xiàn)給大家,本文僅一家之言,不一定適合所有的行業(yè),也希望您尋求各方面專家的幫助以免誤導(dǎo)。

能滿足大多數(shù)項(xiàng)目需求的uC/OS-II
uC/OS-II最大的應(yīng)用價(jià)值是簡(jiǎn)潔與實(shí)用,當(dāng)一個(gè)系統(tǒng)選用uC/OS-II時(shí),最多只需要2M的NOR Flash,2M的SDRAM或最多8M的SDRAM,因此整個(gè)系統(tǒng)的成本是最低的。但很多人卻看不起這個(gè)小玩意兒,片面地認(rèn)為它沒(méi)有什么價(jià)值,而事實(shí)上uC/OS-II卻能滿足很多項(xiàng)目的需求。最近又推出了新的版本,命名為µC/OS-III,其新的一些特性是:搶占式多任務(wù),在同一優(yōu)先級(jí)支持任務(wù)的輪詢調(diào)度,沒(méi)有任務(wù)數(shù)的限制,內(nèi)核提供豐富的服務(wù):信號(hào)量、互斥信號(hào)燈、完全支持優(yōu)先級(jí)繼承、事件標(biāo)志、消息隊(duì)列、定時(shí)器、固定大小的內(nèi)存塊管理,以及內(nèi)置性能測(cè)量。

如果將它移植到ARM9,您會(huì)發(fā)現(xiàn)它的啟動(dòng)速度是最快的,甚至只需要1秒的時(shí)間。當(dāng)開(kāi)發(fā)基于GUI的產(chǎn)品時(shí),您會(huì)發(fā)現(xiàn)最終的效果可以與其它的操作系統(tǒng)媲美。當(dāng)您點(diǎn)擊HMI人機(jī)界面產(chǎn)品的效果時(shí),我想您就不會(huì)忽視uC/OS-II的價(jià)值了??墒呛芏嗳瞬恢廊绾螌C/OS-II移植到ARM9,其實(shí)只要支持MMU即可。但也有很多人根本就沒(méi)有嘗試過(guò),或者根本就沒(méi)有這種意愿,于是就主觀臆斷下結(jié)論,一棍子將uC/OS-II打死,所以一些開(kāi)發(fā)人員常常只選自己會(huì)的而不選對(duì)的,而且思想非常頑固。博主在過(guò)去的開(kāi)發(fā)生涯中,也犯過(guò)各種類(lèi)似的錯(cuò)誤。

是不是只要選擇uC/OS-II就一勞永逸了呢?當(dāng)然不是。雖然它能夠滿足很多產(chǎn)品對(duì)CF卡、SD卡、TCP/IP以太網(wǎng)、CAN-bus/CANopen/DeviceNet/J1939現(xiàn)場(chǎng)總線、GUI圖形用戶界面、RS232、RS485等多方面的需求,但它還是有一定的局限性。如果需要支持Wi-Fi等更多的軟件時(shí),那就非常麻煩了。但還是有一些人要反駁博主,uC/OS-II要收費(fèi)不劃算,事實(shí)上只要粗略地計(jì)算一下開(kāi)發(fā)成本,其結(jié)論自然也就一目了然了。

資源豐富、繼承性最好的WinCE

如果一次購(gòu)買(mǎi)超過(guò)3000個(gè)授權(quán),價(jià)格還是很便宜的,這是很多用戶都能夠承受的。由于WinCE與Windows一脈相承的關(guān)系,且使用同樣的開(kāi)發(fā)工具,那么對(duì)于熟練掌握Windows編程的軟件開(kāi)發(fā)人員來(lái)說(shuō)也就非常方便了,所以很多客戶還是選擇WinCE。如果項(xiàng)目中還需要用到GUI的話,那么WinCE可以說(shuō)是最佳的選擇了,這是WinCE最明顯的優(yōu)勢(shì)之一。

如果無(wú)論開(kāi)發(fā)什么產(chǎn)品都選擇WinCE的話,肯定是不劃算的。比如選用uC/OS-II就可以實(shí)現(xiàn)的項(xiàng)目,如果因?yàn)殚_(kāi)發(fā)人員的喜好而選用WinCE,至少需要2片32M的SDRAM,1片32M的NOR Flash或一片2M的NOR Flash+128M的NAND Flash(因?yàn)槿萘可俚墓I(yè)級(jí)NAND Flash越來(lái)越難購(gòu)買(mǎi)),可想而知其硬件成本還是非常之高的。

高貴、實(shí)時(shí)、穩(wěn)定的Vxworks<、strong>

Vxworks最大的應(yīng)用價(jià)值是實(shí)時(shí)性和穩(wěn)定性,其血統(tǒng)高貴,由于系統(tǒng)使用了Vxworks,用戶對(duì)產(chǎn)品的信任度立即凸顯。根據(jù)博主的經(jīng)驗(yàn),如果一次性購(gòu)買(mǎi)的授權(quán)數(shù)量適當(dāng)大一些,其價(jià)格是很多企業(yè)都能夠接受的,最終您一定會(huì)驚訝得不可思議,在計(jì)算成本時(shí)甚至可以忽略不計(jì)。

雖然原廠需要收至少47250美元的年費(fèi),但您可以得到所有豐富的源代碼,并使用于任何CPU微處理器。如果您只選用某一系列處理器或不需要升級(jí)源代碼,那么以后每年的費(fèi)用則是可以節(jié)省的,只要支付每個(gè)產(chǎn)品的授權(quán)費(fèi)用即可。如果您不需要源代碼,那么所要支付的年費(fèi)將會(huì)更加便宜。

開(kāi)源、自由的嵌入式Linux
嵌入式Linux最大的應(yīng)用價(jià)值是開(kāi)源,如果需要支持Wi-Fi的話,那么嵌入式Linux是很好的選擇之一,搭配QT開(kāi)發(fā)GUI人機(jī)界面也是非常不錯(cuò)的。但很多人選擇嵌入式Linux的出發(fā)點(diǎn)是免費(fèi),這是絕對(duì)錯(cuò)誤的,因?yàn)楹芏嗥髽I(yè)長(zhǎng)期采取放羊式的產(chǎn)品開(kāi)發(fā)方法,即便一些企業(yè)實(shí)施了項(xiàng)目管理,但對(duì)于成本核算還是缺乏參照物,幾乎沒(méi)有購(gòu)買(mǎi)商業(yè)化操作系統(tǒng)開(kāi)發(fā)產(chǎn)品的經(jīng)驗(yàn),從而忽略了開(kāi)發(fā)人員的高工資開(kāi)支。

從博主使用的情況來(lái)看,嵌入式Linux的內(nèi)核是比較穩(wěn)定的,而相對(duì)Vxowork、WinCE來(lái)說(shuō)卻是最貴的。但為什么博主還是要推薦選用嵌入式Linux呢?首先Linux是支持新微處理器、新驅(qū)動(dòng)軟件和新協(xié)議軟件最多、速度最快的平臺(tái),比如最近發(fā)布的USB3.0驅(qū)動(dòng)軟件。由于其最大的好處就是開(kāi)源,所以我們可以根據(jù)需要而任意裁剪,即便某些驅(qū)動(dòng)不穩(wěn)定,但因?yàn)橛性创a我們也可以任意修改,所以嵌入式Linux最大的應(yīng)用價(jià)值不是免費(fèi)。隨著Linux技術(shù)與時(shí)俱進(jìn)式的發(fā)展,Linux技術(shù)將會(huì)越來(lái)越完善,因?yàn)長(zhǎng)inux存在的價(jià)值,將時(shí)刻提醒壟斷性商業(yè)化軟件回歸大眾化的價(jià)格,市場(chǎng)勢(shì)必呈現(xiàn)按需配置的多元化用戶自由選擇的新時(shí)代。

事實(shí)上,我聽(tīng)到的、感受到的和所接觸到的很多嵌入式Linux開(kāi)發(fā)工程師都是非常優(yōu)秀的人才,他們的成功案例激發(fā)了我們投入使用開(kāi)源嵌入式Linux的決心。在學(xué)習(xí)和應(yīng)用嵌入式LInux的過(guò)程中,目前大多數(shù)人還是停留在了解內(nèi)核原理,會(huì)寫(xiě)會(huì)修改驅(qū)動(dòng)程序的層面,而對(duì)如何開(kāi)發(fā)出一個(gè)穩(wěn)定的基于嵌入式Linux的產(chǎn)品,還是缺乏必要的能力。往往開(kāi)發(fā)出來(lái)的軟件不是“一勞永逸”而是“一逸永勞”,無(wú)論是軟件架構(gòu),還是模塊化都不盡人意。因此要想成為優(yōu)秀的嵌入式Linux開(kāi)發(fā)人員,一定要繼承基于Windows平臺(tái)軟件的優(yōu)秀技術(shù)成果,最好有一些通用軟件的開(kāi)發(fā)經(jīng)驗(yàn)作為基礎(chǔ)。因?yàn)樵谇度胧絃inux軟件的技術(shù)發(fā)展和積累過(guò)程中,有關(guān)基于嵌入式Linux軟件架構(gòu)、模式等技術(shù)相應(yīng)的參考資料還是比較缺乏的,所以兼容并蓄地吸收基于Windows軟件平臺(tái)的開(kāi)發(fā)方法還是非常有必要的,但很多人卻缺乏這種意識(shí),所以在開(kāi)發(fā)產(chǎn)品的過(guò)程中,常常會(huì)出現(xiàn)“跑起來(lái)很興奮,但要穩(wěn)定卻需費(fèi)很大的勁”。

隨著開(kāi)發(fā)工具的發(fā)展和創(chuàng)新,嵌入式Linux的開(kāi)發(fā)難度將會(huì)極度地降低,博主將推出在Windows下支持嵌入式Linux的TKStudio集成開(kāi)發(fā)平臺(tái),能夠非常方便地實(shí)現(xiàn)嵌入式Linux內(nèi)核、驅(qū)動(dòng)程序與應(yīng)用層軟件的調(diào)試,上百人的開(kāi)發(fā)與技術(shù)支持團(tuán)隊(duì)將為您打造穩(wěn)定的嵌入式Linux軟硬件一體化開(kāi)發(fā)平臺(tái)。 [!--empirenews.page--]

開(kāi)源軟件

剛起步的一些網(wǎng)站、企業(yè)或個(gè)人由于對(duì)價(jià)格的敏感往往選擇免費(fèi)的開(kāi)源軟件,這些軟件的性能正變得越來(lái)越好。然而大公司更注重將鋒線降到最低點(diǎn),因而他們?cè)敢膺x用收費(fèi)的微軟軟件或者紅帽子等公司Linux系統(tǒng)提供商的服務(wù)。公司知道,他們向軟件公司開(kāi)出了一張支票,就同時(shí)得到了一份合約,有了這份合約,這些公司就會(huì)得到“高水準(zhǔn)服務(wù)的保證”。也就是說(shuō),如果軟件出了故障,那么您就可以撥打某個(gè)維修電話了。

如今,開(kāi)源軟件和非開(kāi)源軟件都代表了巨大的市場(chǎng)。從總營(yíng)業(yè)收入來(lái)計(jì)算,微軟遠(yuǎn)遠(yuǎn)超過(guò)了自己的開(kāi)源軟件對(duì)手。但是從用戶數(shù)目來(lái)計(jì)算,兩者之間的差距并非特別大。例如,火狐瀏覽器就在不斷地侵蝕微軟IE瀏覽器的市場(chǎng)份額,而開(kāi)發(fā)商則通過(guò)完全通過(guò)Google公司的廣告收入分成。當(dāng)人們使用火狐瀏覽器搜索內(nèi)容的時(shí)候,就會(huì)鏈接到Google瀏覽器的搜索結(jié)果頁(yè)面。而開(kāi)發(fā)火狐瀏覽器的莫茲拉公司只有不到100人,卻可以和微軟瀏覽器的強(qiáng)大工作團(tuán)隊(duì)競(jìng)爭(zhēng)。這是建立在免費(fèi)基礎(chǔ)上的另一類(lèi)生意,瀏覽器并非一定要捆綁到收費(fèi)的操作系統(tǒng)里一起銷(xiāo)售。

這是一個(gè)免費(fèi)和付費(fèi)軟件共存的混合世界,這種混合世界不僅可能存在,而且可能發(fā)展的很好,因?yàn)橹挥幸坏啦瞬灰欢ㄟm合所有人的口味。

技術(shù)的價(jià)值體現(xiàn)

事實(shí)上技術(shù)的壁壘不在于基礎(chǔ)技術(shù)本身,每個(gè)人實(shí)際的競(jìng)爭(zhēng)在于行業(yè)經(jīng)驗(yàn)的積累,所以不要迷信學(xué)什么最容易賺錢(qián),最容易就業(yè)之類(lèi)騙人的鬼話。即便當(dāng)前容易,但那也是暫時(shí)的。在80C51單片機(jī)開(kāi)始流行的初級(jí)階段,如果會(huì)用C51語(yǔ)言開(kāi)發(fā)產(chǎn)品,看起來(lái)比使用匯編語(yǔ)言顯得水平要高一些;前幾年如果會(huì)用ARM開(kāi)發(fā)產(chǎn)品,看起來(lái)似乎又上了一個(gè)臺(tái)階;再后來(lái)如果掌握了嵌入式Linux,看起來(lái)好象更上一層樓了。

而現(xiàn)實(shí)的情況是很多工程師至今仍然使用變種的80C51單片機(jī)開(kāi)發(fā)產(chǎn)品,但產(chǎn)品的市場(chǎng)占有率和開(kāi)發(fā)人員的價(jià)值依然堅(jiān)挺,對(duì)于這種現(xiàn)象我們熟視無(wú)睹,所以即便有了很好的基礎(chǔ)技術(shù),但未必就能夠創(chuàng)造令人滿意的價(jià)值。博主自創(chuàng)業(yè)以來(lái),開(kāi)發(fā)了穩(wěn)定性高的CAN-bus現(xiàn)場(chǎng)總線系列工控產(chǎn)品,可以毫不夸張地說(shuō),在國(guó)內(nèi)一直具有絕對(duì)的競(jìng)爭(zhēng)優(yōu)勢(shì)和市場(chǎng)占有率,口碑也非常之好,當(dāng)客戶加上與行業(yè)有關(guān)的軟件之后,其售價(jià)立即上升十倍,這才是真正的價(jià)值體現(xiàn)。

當(dāng)博主在6年前推出第一臺(tái)LA1032邏輯分析儀時(shí),只能賣(mài)2800元。今年推出了LAB6000系列高性能邏輯分析儀時(shí),售價(jià)則為16800~29800元,不曾想到這幾天還賣(mài)斷貨。原因何在?新一代邏輯分析儀是面向終端用戶的高附加值儀器,其購(gòu)買(mǎi)對(duì)象為開(kāi)發(fā)高技術(shù)含量產(chǎn)品,且注重技術(shù)發(fā)展有潛力的高端用戶,因?yàn)槟軌驅(qū)崒?shí)在在地幫助客戶解決實(shí)際的難題創(chuàng)造價(jià)值。

閑談GUI的開(kāi)發(fā)經(jīng)驗(yàn)

我們不僅使用過(guò)WinCE、uC/GUI,而且還使用過(guò)QT,總體來(lái)說(shuō)感覺(jué)都是非常不錯(cuò)的。要想產(chǎn)品賣(mài)得好,GUI圖形用戶界面是至關(guān)重要的,并且要求承擔(dān)設(shè)計(jì)的美工必須對(duì)用戶心理學(xué)、色彩心理學(xué)、人機(jī)工程學(xué)和軟件框架結(jié)構(gòu)必須有深入的研究,最好具有工業(yè)設(shè)計(jì)經(jīng)驗(yàn)。因?yàn)檫@不是技術(shù)活而是藝術(shù),所以一定要有天賦和靈氣。

其次就是GUI中用到的圖片,其實(shí)是非常講究的。一般公司開(kāi)發(fā)的軟件中所使用的圖片都是軟件工程師自己畫(huà)的,稍微大一些的軟件公司雖然配備了專業(yè)的美工,但其圖片質(zhì)量則不敢恭維。為什么會(huì)出現(xiàn)這種糟糕的現(xiàn)象呢?我們傳統(tǒng)的產(chǎn)品開(kāi)發(fā)思路,無(wú)論做什么都不注重細(xì)節(jié),自己做得不好還非常有理,因?yàn)閯e人也是這樣的。其次,我們的習(xí)慣性思維喜歡從頭到尾自己掌控,只要給別人付費(fèi)就不愿意,連非常有價(jià)值的商業(yè)化操作系統(tǒng)都不愿意支付權(quán)利金,所以也就更加不愿意花錢(qián)購(gòu)買(mǎi)國(guó)外的專業(yè)圖庫(kù)了,總之一句話:給別人賺錢(qián)就是不爽。

而我們的做法是向世界級(jí)的第一流企業(yè)購(gòu)買(mǎi)成熟的知識(shí)產(chǎn)權(quán),然后投入人力資源從事基礎(chǔ)研究和開(kāi)發(fā)買(mǎi)不到的技術(shù),全力以赴支持技術(shù)創(chuàng)新,最終轉(zhuǎn)化為有競(jìng)爭(zhēng)力產(chǎn)品。過(guò)去我們也開(kāi)發(fā)過(guò)很多似乎領(lǐng)先的技術(shù),但最后卻付出了比購(gòu)買(mǎi)技術(shù)還要大得多的代價(jià)。很多時(shí)候購(gòu)買(mǎi)一項(xiàng)技術(shù)從談判到消化只需要2個(gè)月,并且同步與世界先進(jìn)技術(shù)水平;而自己開(kāi)發(fā)卻需要一年以上,后期的維護(hù)費(fèi)用不少,而且技術(shù)水平一般。有時(shí)等自己開(kāi)發(fā)出來(lái)之后,技術(shù)水平又落后一大截了,這樣的自主創(chuàng)新事實(shí)上毫無(wú)價(jià)值。

后記:寫(xiě)到這里,我突然感到完全有必要寫(xiě)一篇文章,闡述開(kāi)發(fā)過(guò)程之中的管理之道,那就是“自主創(chuàng)新一定有價(jià)值嗎?”向大家介紹博主多年來(lái)在開(kāi)發(fā)產(chǎn)品和從事基礎(chǔ)技術(shù)研究的成功經(jīng)驗(yàn)與失敗的教訓(xùn),希望對(duì)更多的企業(yè)和初學(xué)者有所幫助。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉