嵌入式開源軟件:君子合而不同
近十年來,開源軟件已經主宰了嵌入式系統。網景公司的聯合創始人,同時也是LinkedIn主要投資人的Marc Andressen,最近發表了一篇“軟件正在鯨吞世界”的文章。當今嵌入式軟件的適用場合比任何其他種類軟件加起來還要廣。嵌入式軟件是交通、安全、醫療、食品、農業、國防和娛樂等應用系統的核心,事實上這些行業的每個領域都以各種方式深入到我們日常生活中。
嵌入式軟件設計的復雜度在以指數級的速度增加。在一定程度上,它反映并且遵循了集成式設備中,門電路的復雜度在過去的40年里每18個月增加一倍的 規律。代碼復雜度的增加和互不分割的全球化市場變革有所重疊。對于缺貨產品的需求成倍增長,產品的功能增多,開發成本降低,這些都導致采購需求、合作和代 碼復用的增加。開源軟件作為代碼復用的最終表現,已經成了當今嵌入式市場競爭的主要推動因素。
從1983年***GNU,到2011侵入到整個IT系統,開源已經滲透到了軟件開發的每個層面。開源軟件已經成為40%嵌入式項目的選擇(下載報告 全文:選擇研究:嵌入式工程調查,來自VDC Research),因為它能提供的優勢包括:快速面市、低開發成本、更好的安全性、反復經過檢驗的質量、多樣性、令授權成本、諸多知名供應商提供的多個 選擇等等。
開源征服嵌入式設備
開源軟件在嵌入式應用的典型例子包括Android(嵌入式Linux和其他開源實時操作系統RTOS),用于手機和PDA的Qt用戶界面,冰箱和 工業控制系統,大約十萬種其他項目,涵蓋從通信軟件棧,網絡瀏覽、用戶界面、遠程管理、嵌入式數據庫、音頻和視頻編解碼,甚至虛擬機(例如Java虛擬 機)。40%用于嵌入式環境的實時操作系統(RTOS)都是開源的,除了Android外還包括重量級的廠商如MontaVista,QNX和 Mentor。
應該管理開源應用
開源軟件的優勢只有在其實際應用得到管理的時候才能體現。開源軟件從來都有明確的條款,有相應的授權、版權、安全隱患說明和出口管制分類。如果不了 解或者不遵守這些條款,就有可能導致產品質量問題。消費產品等嵌入式設備大量售出,任何質量問題或損害授權條款的問題都有可能造成嚴重的經濟損失。
項目層面,或者組織層面的政策通常限定了條款的可接受度。雖然有人覺得很難承認,但今天占有豐富資源的開發者都不會從最基礎的部分開始寫代碼,因為 他們知道哪兒能獲得所需代碼,自己只要靠創造力優化代碼就可以了。指望開發者在軟件開發時間緊張的情況下了解并管理代碼條例不太合理也不現實,因此相關組 織就越來越多地允許管理下的開源軟件在項目中的使用,縮短開發間隔,降低開發成本。
曾經有專門針對100多個覆蓋跨國大組織到50人以下的小技術公司進行的調查,發現了嵌入式領域應用并管理開源軟件的***的做法。在產品推出市場之 前建立授權政策、采用軟件包預批核流程、對現有的軟件目錄創建基本準則、實時而且定期規范軟件分析等,都是嵌入式領域采取的做法。
開源軟件開始主導嵌入式設備市場,其對于嵌入式系統公司的開發者和管理層,以及對嵌入式解決方案最終用戶都能帶來廣泛的優勢。這些優勢包括更低的開 發成本、更低的市場產品成本、更短的面市時間、更快的產品進化速度、反復經過檢驗的高質量方案、方案的多樣性以及確保長期產品可用,同時降低了供需變化不 確定性的資源。每一項采用開源軟件帶來的優勢對于資源豐富的開發者來說都***吸引力,他們可以集中注意力于在現有代碼,在此基礎上加上自己的創造力,實現 更快的創新周期。立即可用的開源代碼也有短處,例如用來了解整個嵌入式項目的開源內容的代碼記錄和整理會有滯后、需要保持新版本的更新進度、存在潛在的授 權和版權條款問題以及要考慮安全可行性和修補并減輕這些問題。
架構完善的開源軟件使用流程(OSSAP)讓組織能夠使用可控制和可管理的模式發揮開源軟件的優勢。OSSAP所包含的步驟包括建立政策、軟件包的 預批核、建立現有代碼和來自商業供應商和外包團體的代碼掃描的基本準則。定期掃描項目代碼合集,進入項目庫或在開發者進行開發的時候實時發現并管理軟件, 確保任何時候項目中的開源軟件內容都可以被知曉或了解,而構建時間的掃描確保了最終推向市場的產品滿足采取的開源政策。


























