開(kāi)放源碼:嵌入式系統開(kāi)發(fā)面臨新環(huán)境
隨著(zhù)新公司的涌現以及對壓縮成本的要求,嵌入式系統開(kāi)發(fā)界正在逐漸接受開(kāi)放源碼的軟件。目前,已經(jīng)有大批量供貨的消費電子產(chǎn)品的開(kāi)發(fā)采用了那些從互聯(lián)網(wǎng)上下載的開(kāi)放源碼的軟件產(chǎn)品。容易獲得、創(chuàng )新的編程方式、良好的適應性,以及零復用費用是人們津津樂(lè )道的開(kāi)放源碼產(chǎn)品的優(yōu)點(diǎn)。盡管懷疑論者依然對開(kāi)放源碼產(chǎn)品在授權及技術(shù)支持方面提出質(zhì)疑,但是可以看到越來(lái)越多的人開(kāi)始在新項目中放棄選擇那些商業(yè)化的軟件,轉而嘗試使用開(kāi)放源碼的軟件。
本文引用地址:http://dyxdggzs.com/article/201609/305173.htm開(kāi)發(fā):不再是個(gè)人游戲
與商業(yè)化的軟件不同,開(kāi)放源碼軟件的開(kāi)發(fā)是在社區中完成的。通常程序員先在社區中建立一個(gè)開(kāi)放源碼的項目,然后有眾多程序員共同合作完成對源碼的改進(jìn)并共享修改后的成果。以這種方式開(kāi)發(fā)出的軟件中,最著(zhù)名的就是Linux操作系統。今天,隨著(zhù)其他通過(guò)GNU項目開(kāi)發(fā)出的軟件的增加,Linux也已經(jīng)演化出了很多根據不同需要開(kāi)發(fā)的項目,而且在其周?chē)奂藬狄郧в嫷拈_(kāi)發(fā)者和不少商業(yè)公司。
商業(yè)公司的介入也在轉變人們對開(kāi)發(fā)源碼軟件的傳統認識,即它們不過(guò)是程序員出于個(gè)人愛(ài)好在業(yè)余時(shí)間產(chǎn)出的智力勞動(dòng)成果。IBM、Apple和Sun等大公司已經(jīng)參與了開(kāi)放源碼的項目,并基于項目所產(chǎn)生的源碼開(kāi)發(fā)出了多款軟、硬件產(chǎn)品。僅IBM的Linux技術(shù)中心就雇傭了超過(guò)200名的全職程序員從事開(kāi)放源碼項目的開(kāi)發(fā)工作。 商業(yè)公司非常清楚,開(kāi)放源碼已經(jīng)成為了一種潮流,順應這種潮流,未來(lái)其軟、硬件產(chǎn)品也會(huì )隨著(zhù)開(kāi)放源碼產(chǎn)品的廣泛應用而大行其道。
使用:成本與風(fēng)險不斷降低
開(kāi)放源碼產(chǎn)品給嵌入式系統開(kāi)發(fā)者帶來(lái)的最大的好處就是降低開(kāi)發(fā)成本。即使是對大批量的產(chǎn)品,商業(yè)化的操作系統或是第三方應用支持軟件包的版稅也是嵌入式設備開(kāi)發(fā)成本中很大一個(gè)組成部分。因此,降低成本的一個(gè)行之有效的方法就是在開(kāi)發(fā)中選用一個(gè)或是更多的開(kāi)放源碼的程序。也許對開(kāi)放源碼程序的移植會(huì )產(chǎn)生一些成本,但是從開(kāi)發(fā)總成本考慮還是會(huì )帶來(lái)明顯的節省。
在考慮成本問(wèn)題時(shí)還有一點(diǎn)十分重要:與商業(yè)化的軟件相比,開(kāi)放源碼軟件的適應性是一個(gè)顯著(zhù)的優(yōu)點(diǎn)。開(kāi)發(fā)者可以根據自己實(shí)際的應用要求,在開(kāi)放的源碼基礎上編寫(xiě)出一個(gè)新的軟件版本,使得軟件對系統計算和存儲資源的占用最小化。而與之相對應,商業(yè)化軟件由于要考慮到最大限度地覆蓋客戶(hù)需求,會(huì )在產(chǎn)品中包括開(kāi)發(fā)者并不需要的其他功能,而開(kāi)發(fā)者又不得不為這部分功能買(mǎi)單。而且商業(yè)軟件的供應商也承認,最初的購置費用只占嵌入式軟件整個(gè)生命周期使用費用的一小部分。
對于那些選擇自己開(kāi)發(fā)的開(kāi)發(fā)者來(lái)說(shuō),開(kāi)放源碼軟件也是具有吸引力的,他們通常需要將諸如任務(wù)表、網(wǎng)絡(luò )和用戶(hù)界面等操作系統功能集成到一個(gè)單一的應用軟件包中。隨著(zhù)其所開(kāi)發(fā)的嵌入式設備的復雜性的增加,這些開(kāi)發(fā)者不得不在不增加預算的前提下盡量去滿(mǎn)足客戶(hù)的需求。開(kāi)放源碼的操作系統為開(kāi)發(fā)者提供了一套將經(jīng)測試的支持軟件集成在一起的低成本的技術(shù)手段,可以使開(kāi)發(fā)者集中精力進(jìn)行獨特應用功能的開(kāi)發(fā)。今天的開(kāi)放源碼操作系統已經(jīng)足夠成熟,可以將使用者的風(fēng)險降到最低限度。
對開(kāi)放源碼軟件持反對意見(jiàn)者通常會(huì )指出,由于沒(méi)有版權的約束和保護,這可能會(huì )阻礙開(kāi)發(fā)者公布其編寫(xiě)的代碼。但事實(shí)證明,這種觀(guān)點(diǎn)是片面的,在開(kāi)放源碼資源網(wǎng)站www.opensource.org上,我們可以看到超過(guò)40種的經(jīng)驗證的軟件授權方式。簡(jiǎn)單地說(shuō),開(kāi)發(fā)者和版權所有者可以根據他們的需要,按照他們認為合適的任何一種方式達成授權協(xié)議。比如有些授權就介于商業(yè)應用和非贏(yíng)利用戶(hù)之間,如出于教育研究目的的授權。
目前比較流行的授權模式包括GPL(General Public License)、BSD(Berkeley Software Distribution)和Mozilla Public License三種。其中GPL開(kāi)放程度最高,BSD則對授權的開(kāi)放度做出了一些限制,而Mozilla Public License介于前二者之間,允許開(kāi)發(fā)者將基于開(kāi)放源碼開(kāi)發(fā)的軟件分為受保護的和可共享的兩部分。
服務(wù):商業(yè)公司介入
除了授權模式,嵌入式系統的開(kāi)發(fā)者在考慮是否選用開(kāi)放源碼的軟件產(chǎn)品考慮的另一個(gè)問(wèn)題是,可以獲得什么樣的技術(shù)支持。對于一些小的程序,開(kāi)發(fā)者可以直接下載源代碼自己進(jìn)行維護和支持。但是對于那些比較復雜的系統,如操作系統,許多開(kāi)發(fā)者選擇了尋找有經(jīng)驗的支持團隊的方法。在這方面,我們可以發(fā)現開(kāi)放源碼軟件的另一個(gè)優(yōu)點(diǎn),即開(kāi)放的系統可以使你獲得兼容的售后支持,即使你更換了供應商,也仍然可以保留原有的軟件并獲得相應的支持。
各家嵌入式Linux供應商也根據自己客戶(hù)的特點(diǎn)設計出了不同的商業(yè)模式。MontaVista通過(guò)收取年費的方式銷(xiāo)售它的Linux產(chǎn)品,用戶(hù)繳費后可以獲得最新的軟件版本、無(wú)限制的通過(guò)電話(huà)或電子郵件的技術(shù)支持,或是訪(fǎng)問(wèn)專(zhuān)為客戶(hù)設立的網(wǎng)站獲取更新版本、補丁程序和參加社區論壇。此外,大多數年費服務(wù)包中還包括向用戶(hù)提供的培訓。LynuxWorks的運作方式稍有不同,它向嵌入式系統開(kāi)發(fā)者同時(shí)提供開(kāi)放源碼和商業(yè)化的兩種操作系統。BlueCat Linux與公司所提供的滿(mǎn)足實(shí)時(shí)需要的商業(yè)化操作系統LynxOS兼容,其6個(gè)月的服務(wù)包售價(jià)為2699美元。
目前作為嵌入式Linux供應商,MontaVista和LynuxWorks與IBM, Red Hat, Panasonic和Sony等公司合作,組成了嵌入式Linux聯(lián)盟以防止在源代碼流行的過(guò)程中出現的分裂問(wèn)題,該問(wèn)題可能會(huì )造成應用程序不兼容的后果。聯(lián)盟提出的解決方案是出臺一個(gè)平臺規范來(lái)定義嵌入式Linux的API。遵從該平臺規范的應用程序和中間件的開(kāi)發(fā)者可以保證他們的產(chǎn)品在兼容的Linux系統中運行。
延伸:硬件也開(kāi)放
這些基于開(kāi)放源碼的自由軟件,特別是操作系統和支持軟件的另一個(gè)來(lái)源,就是嵌入式單片機硬件供應商。很多硬件供應商為客戶(hù)提供開(kāi)放源碼的軟件以提高自身產(chǎn)品的附加值,以利于硬件產(chǎn)品的銷(xiāo)售。
同時(shí),在開(kāi)發(fā)源碼的軟件的推動(dòng)下,嵌入式系統開(kāi)發(fā)者已經(jīng)在進(jìn)行一些新的嘗試--開(kāi)發(fā)開(kāi)放源碼的硬件產(chǎn)品。比如,小型化的嵌入式LART(Linux-advanced-radio-terminal)計算機可以運行Linux,其硬件包括功耗小于1W的、工作頻率為220MHz的SA-1100 StrongARM CPU。在標準配置中,它包括32M的DRAM和4M的flash存儲器。LART的硬件不是免費的,但是其全部設計、圖紙、裝配圖、文檔和軟件是免費的,并可從LART網(wǎng)站上下載獲得。開(kāi)發(fā)者可以通過(guò)一種近似于軟件所采用的GPL的授權方式獲得LART的硬件設計授權,并且不用繳納版稅和授權費即可復制該硬件系統。
評論