加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

《嵌入式操作系統(tǒng)史話》之六:開源的嵌入式OS

2014/02/17
2
  • 4評(píng)論
閱讀需 20 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

在討論開源嵌入式操作系統(tǒng)(簡(jiǎn)稱嵌入式OS)之前,我們先把開源軟件搞清楚?!伴_源軟件”目前并沒有明確定義,也沒有標(biāo)準(zhǔn)許可證。許多公司采用開放源代碼一詞,大概有這樣兩種情況。第一,開源軟件的許可條款是一個(gè)組合條款,并不都是GPL。比如Android里面就有多種許可證(GPL、Apache和BSD)[1]。我們知道Linux 內(nèi)核是采用GPL,用戶任何修改必須開源給社區(qū)。Android 的許可可以讓用戶為自己的應(yīng)用制作專用軟件(遵循Apache和BSD許可)。第二,一些商業(yè)軟件稱自己是開源軟件,其實(shí)它們只是開放源代碼給用戶或者大眾,讓大家免費(fèi)評(píng)估和試用,如果你真正的使用在商業(yè)項(xiàng)目了,需要技術(shù)服務(wù)了,那對(duì)不起,他們要收費(fèi)了。這樣的開源軟件不屬于我們本篇討論的范圍。


Linux
由Linus Torvalds在1991年發(fā)表的Linux開放操作系統(tǒng),是由在互聯(lián)網(wǎng)上的志愿者們開發(fā)的,吸引了許許多多忠實(shí)的追隨者,自1999年穩(wěn)定的2.2 版本發(fā)布以來,Linux早已經(jīng)在服務(wù)器和臺(tái)式機(jī)上取得了巨大的成功,正在嵌入式系統(tǒng)中大放異彩。許多人認(rèn)為Linux可以獲得在嵌入式市場(chǎng)上的認(rèn)可,真正的關(guān)鍵的原因是得益于Linux高質(zhì)量和其生命力,當(dāng)然可以給Linux開發(fā)人員提供了靈活性和開放源碼選擇,不收取運(yùn)行時(shí)許可使用費(fèi)也是開發(fā)者選擇Linux的理由。與商業(yè)軟件授權(quán)方式不同的是,開發(fā)者可以自由修改的Linux,以滿足他們的應(yīng)用需要。在技術(shù)上,因?yàn)榛赨NIX技術(shù),Linux提供廣泛的功能強(qiáng)大的操作系統(tǒng)功能,包括內(nèi)存保護(hù)、進(jìn)程和線程,以及豐富的網(wǎng)絡(luò)協(xié)議,Linux與POSIX標(biāo)準(zhǔn)兼容,從而提高了應(yīng)用的可移植性。Linux支持多種微處理器總線架構(gòu)和設(shè)備,通常情況下,芯片公司驅(qū)動(dòng)程序,應(yīng)用相關(guān)的中間件,工具和應(yīng)用程序都是先為Linux開發(fā)的,后來移植到其他OS平臺(tái),這些特性都非常適合于嵌入式系統(tǒng)應(yīng)用。


Montavista Linux
談到嵌入式Linux,MontaVista是一定要提到的,它對(duì)于Linux在嵌入式系統(tǒng)商業(yè)應(yīng)用起到重要的作用,MontaVista創(chuàng)始人和首席執(zhí)行官正是第3篇里面講到的Jim Ready,他是公認(rèn)的商業(yè)操作系統(tǒng)的先驅(qū),有超過25年在嵌入式軟件行業(yè)的經(jīng)驗(yàn)。當(dāng)他還在Ready System時(shí)候,他就關(guān)注Linux的發(fā)展,93年他曾下載過0.98版本Linux并嘗試運(yùn)行起來,他預(yù)見到Linux將成為未來影響嵌入式市場(chǎng)的一個(gè)重要因素。1999年在Alloy創(chuàng)業(yè)投資公司的支持下,Jim開始建立一個(gè)嵌入式Linux軟件工程師的公司,目標(biāo)是開發(fā)一個(gè)嵌入式Linux 軟件平臺(tái),也就是Hard Hat Linux。如圖1戴帽子的企鵝的宣傳畫。2001年Hard Hat Linux 2.0 版本發(fā)布之后,在Red hat(紅帽)公司一再要求下,產(chǎn)品改名為Montavista Linux,之后陸續(xù)發(fā)布了2.1/3.0/3.1/4.0和后來5.0 版本。從技術(shù)上看,Montavista Linux不只是一個(gè)通用的Linux發(fā)行版,它更是為嵌入式系統(tǒng)所需的可靠性和實(shí)時(shí)性(通過對(duì)2.4內(nèi)核加入實(shí)時(shí)補(bǔ)?。┒脑O(shè)計(jì),支持高端嵌入式系統(tǒng)使用的處理器架構(gòu)x86、ARM、PowerPC 和MIPS 、一系列的驅(qū)動(dòng)程序和板級(jí)支持包。它有一整套的開發(fā)工具,閃存和固態(tài)存儲(chǔ)文件系統(tǒng),還有可以很容易地監(jiān)視系統(tǒng)的完整性和性能的各種工具[2]。

圖1: Hard hat Linux戴帽子企鵝的宣傳畫


Montavista創(chuàng)建以后的10年間,借助開源軟件之勢(shì),迅速發(fā)展,并成功的將其Montavista Linux應(yīng)用在通信基礎(chǔ)設(shè)備,智能手機(jī),數(shù)字電視機(jī)和機(jī)頂盒等各種嵌入式系統(tǒng)中,國際頂級(jí)的設(shè)備制造商紛紛采用它的技術(shù)和產(chǎn)品,比如NEC、Motorola和三星電子。Montavista Linux 的出現(xiàn)對(duì)于傳統(tǒng)的商業(yè)RTOS 是很大的沖擊,客戶逐漸認(rèn)識(shí)到開源軟件的價(jià)值,紛紛轉(zhuǎn)向開源,遵循開源規(guī)則的Montavista就是最好的選擇之一,雖然期間也有幾個(gè)競(jìng)爭(zhēng)對(duì)手,比如1995年在匹斯堡成立的timesys,雖然也有著不錯(cuò)的產(chǎn)品,但是畢竟遠(yuǎn)離硅谷又不熟悉嵌入式軟件運(yùn)作模式,所以沒有形成對(duì)Montavista 威脅,真正的威脅還是傳統(tǒng)的RTOS巨頭,當(dāng)他們認(rèn)識(shí)到開源軟件潮流已經(jīng)到來的時(shí)候,市場(chǎng)的競(jìng)爭(zhēng)才真正到來了。經(jīng)歷幾輪的風(fēng)險(xiǎn)投資,Montavista 沒有能夠?qū)崿F(xiàn)盈利預(yù)期,再經(jīng)過2008年金融危機(jī)的沖擊,2009年Montavista被半導(dǎo)體公司Cavium收購。


Red Hat的eCos
eCos全稱是Embedded Configurable Operating System,它出生于1997年,可以說是嵌入式領(lǐng)域的一個(gè)后來者,相對(duì)其他的系統(tǒng)來說,它非常年輕,在設(shè)計(jì)理念上面是比較新穎的,eCos絕大多數(shù)代碼使用C++寫作完成。eCos最早是Cygnus公司開發(fā)(該公司成立于1989年,大家一定知道Cygwin吧,就是他們開發(fā)的),1999年被RedHat收購,2002年RedHat因?yàn)樨?cái)務(wù)上的原因放棄了RedHat項(xiàng)目,解雇了eCos的開發(fā)人員,2004年在eCos開發(fā)者的呼吁下,RedHat 同意把eCos版權(quán)轉(zhuǎn)給開源軟件基金會(huì)。之后,eCos主要開發(fā)人員組建了一個(gè)新的eCosCentric公司,繼續(xù)進(jìn)行eCos的開發(fā)和技術(shù)支持。


eCos 最大的特點(diǎn)是模塊化,內(nèi)核可配置。如果說嵌入式Linux太龐大了,那么eCos可能就能夠滿足你的要求。它是一個(gè)針對(duì)16/32/64位處理器的可移植開放源代碼的嵌入式RTOS。和Linux不同,它是由專門設(shè)計(jì)嵌入式系統(tǒng)的工程師設(shè)計(jì)的。eCos提供的Linux兼容的API能讓開發(fā)人員輕松的將Linux應(yīng)用移植到eCos。 eCos 的核心具備一般OS功能,如驅(qū)動(dòng)和內(nèi)存管理、異常和中斷處理、線程的支持,還具備RTOS的特點(diǎn),如可搶占、最小中斷延遲、線程同步等。eCos支持大量外設(shè)、通訊協(xié)議和中間件,比如以太網(wǎng)、USB、 IPv4/IPv6、SNMP、HTTP等。


eCos的專利受eCos 許可證所保護(hù),這是一個(gè)GPL 許可證的修改版,其準(zhǔn)許開發(fā)者在其上開發(fā)的應(yīng)用程序(即eCos 以外自行撰寫的部分)可以不用跟著GPL 一起發(fā)布。應(yīng)用程序開發(fā)者可免費(fèi)的取得其完整的源碼,并針對(duì)其作任意的修改與在其上開發(fā)自己的應(yīng)用程序并發(fā)布,唯一的限制只是若有修改到eCos 本身,其需將修改的源碼回報(bào)給eCos 開發(fā)小組。當(dāng)開發(fā)者將其當(dāng)為產(chǎn)品時(shí),也不需支付版稅。


許多公司都在使用eCos,并先后成功推出了使用eCos的嵌入式產(chǎn)品,比如
Brother網(wǎng)絡(luò)彩色激光打印機(jī)、DelphiCommuiport車載信息處理系統(tǒng)、IomegaHipZip數(shù)字音頻播放器、Ikendi指紋識(shí)別系統(tǒng)、3Glab移動(dòng)電話、GPS衛(wèi)星地面設(shè)備等。[3、4]


Android
Android是谷歌公司開發(fā)的針對(duì)高端智能手機(jī)的一個(gè)操作系統(tǒng)(OS),其實(shí)Android不僅僅是一個(gè)OS,也是一個(gè)軟件平臺(tái),可以應(yīng)用在更加廣泛的設(shè)備中。在實(shí)際應(yīng)用中,Android是一個(gè)在Linux上的應(yīng)用架構(gòu),優(yōu)勢(shì)是能夠幫助開發(fā)者快速地布置應(yīng)用軟件。Android成功的關(guān)鍵是它的授權(quán)方式,它是一個(gè)開源軟件,主要的源代碼的授權(quán)方式是Apache,該授權(quán)允許使用者在Android源代碼上增加自己的知識(shí)產(chǎn)權(quán),而不一定要公開源代碼。


直到今天,Android 的開發(fā)主要還是集中在移動(dòng)終端上,這是谷歌的主要目標(biāo)市場(chǎng),相關(guān)軟件IP和開發(fā)工具也都是針對(duì)這個(gè)市場(chǎng)設(shè)計(jì)和配置的,在這個(gè)市場(chǎng)上Android已經(jīng)成為智能手機(jī)市場(chǎng)占有率最大的OS。在其他的市場(chǎng)上Android也的潛力巨大,一般來說,任何有復(fù)雜的軟件需求的地方,一個(gè)封裝好的有連接和用戶界面的設(shè)備,比如車載信息系統(tǒng)(IVT),智能電視,Android 都會(huì)有用武之地。消費(fèi)電子,通信,汽車電子,醫(yī)療儀器和智能家居應(yīng)用都是Android 潛在的應(yīng)用目標(biāo),但是Android 要從移動(dòng)終端應(yīng)用真正的走出來,確實(shí)很有挑戰(zhàn)[5],目前我們看到的是在平板電腦和智能電視上Android 有不錯(cuò)的表現(xiàn),基于Android 照相機(jī)、智能手表和電視盒已經(jīng)出現(xiàn),更多的應(yīng)用也在開發(fā)之中。 見圖2 。
????


圖2:各種基于Android 非手機(jī)的產(chǎn)品


結(jié)語
除了上面介紹的Linux、Montavista、eCos、Android這些開源OS已經(jīng)在嵌入式系統(tǒng)中大量使用外,還有在軍事工業(yè)和航空航天上應(yīng)用的RTEM[6],來自日本基于ITRON技術(shù)規(guī)范的Toppers,二者都基于GPL 許可證。Toppers還要求如果應(yīng)用已經(jīng)嵌入到設(shè)備里,需要報(bào)告給Toppers協(xié)會(huì)[7]。此外現(xiàn)在可以看到的商業(yè)嵌入式Linux 還有Windriver Linux、Enea Linux等產(chǎn)品。開源嵌入式OS有一些開源社區(qū)和組織,他們對(duì)于開源軟件在嵌入式系統(tǒng)的發(fā)展和應(yīng)用起到重要的作用, 目前比較活躍的有Linaro,它是由ARM、飛思卡爾、三星等公司合資成立的,致力于為ARM架構(gòu)開發(fā)開源軟件的非盈利性組織[8]。GENIVI聯(lián)盟已經(jīng)在全球擁有170家成員,它通過提出一個(gè)基于開源 Linux平臺(tái),希望改變車載信息娛樂軟件的開發(fā)和使用方式[9、10]。關(guān)于GENIVI我們?cè)诤竺嬗嘘P(guān)汽車電子的嵌入式OS文章中還會(huì)談到。


參考資料:
[1]何小慶,Linux和Android:哪個(gè)是你下一個(gè)設(shè)計(jì)的正確選擇?http://wlkxw.cn/allenhe/blog/13-03/292378_84176.html
[2] https://www.mvista.com/
[3] https://www.rtems.net/Documnet/eCosIntro.htm? eCos 簡(jiǎn)介
[4]Anthony Massa 著 顏若麟等譯《嵌入式可配置實(shí)時(shí)操作系統(tǒng)eCos軟件開發(fā)》北京航空航天大學(xué)出版社。
[5]Colin Wall 著 何小慶等譯《嵌入式軟件開發(fā)精解》機(jī)械工業(yè)出版社
[6]https://www.rtems.org/
[7]https://www.toppers.jp/cn/index.html
[8] https://www.linaro.org/
[9] https://www.genivi.org/
[10] 明導(dǎo):GENIVI聯(lián)盟保持開源車載信息娛樂開發(fā)的領(lǐng)導(dǎo)地位https://www.prnasia.com/story/archive/prna_086_1306316_1

與非網(wǎng)原創(chuàng)內(nèi)容,未經(jīng)許可,不得轉(zhuǎn)載

?

系列之一:何為嵌入式操作系統(tǒng)?

摘要:對(duì)嵌入式操作系統(tǒng)的定義,國內(nèi)外專家學(xué)者和企業(yè)界人士的理解都不盡相同,具有代表性的意見有兩種;一種是說嵌入式系統(tǒng)就是嵌入式的計(jì)算機(jī)系統(tǒng),另外一種認(rèn)為嵌入式系統(tǒng)是一種機(jī)電結(jié)合、軟硬結(jié)合執(zhí)行某種特殊功能的系統(tǒng)……

系列之二:嵌入式OS的“摩托”系

摘要:摩托羅拉自1974年發(fā)布第一款MC6800 --8位微處理器到1979發(fā)布的MC68000(簡(jiǎn)稱68K)-16/32位CPU之后,其芯片因?yàn)榧纯梢允褂迷谟?jì)算機(jī)系統(tǒng)中,也可以使用在嵌入式系統(tǒng),很快成為當(dāng)時(shí)行業(yè)的標(biāo)準(zhǔn)。最早開發(fā)嵌入式OS的公司,許多都是借助摩托羅拉的市場(chǎng)起家的……

系列之三:VRTX--商業(yè)嵌入式OS的開拓者

摘要:除了上一篇提到的OS-9以外,最早出現(xiàn)的嵌入式操作系統(tǒng)(簡(jiǎn)稱為嵌入式OS)當(dāng)屬VRTX,因其在技術(shù)上創(chuàng)新性,得到用戶和嵌入式系統(tǒng)公司的廣泛支持,VRTX可稱為商業(yè)嵌入式OS的開拓和領(lǐng)導(dǎo)者……

摘要:μC/OS的故事起始于1989年。那時(shí),我(注:即Jean Labrosse先生)加入到位于美國佛羅里達(dá)州勞德代爾堡市的Dynalco控制公司,并開始為大型工業(yè)往復(fù)式發(fā)動(dòng)機(jī)設(shè)計(jì)全新的、基于微控制器的點(diǎn)火控制系統(tǒng)……
摘要:由于《μC/OS,The Real-Time Kernel》書寫得很成功,在二十世紀(jì)90年代,使用μC/OS的工程師越來越多。開發(fā)者很容易就可以把操作系統(tǒng)移植到新的硬件平臺(tái)上,開發(fā)了無數(shù)基于μC/OS的應(yīng)用……

系列之七:風(fēng)河-嵌入式OS的常青樹

摘要:過去30年間,風(fēng)河和VxWorks在嵌入式OS領(lǐng)域一直處在領(lǐng)先地位,在航空航天、通信、工業(yè)控制等行業(yè)有著廣泛的應(yīng)用,在業(yè)內(nèi)被稱為嵌入式OS的常青樹……

系列之八:手機(jī)中的嵌入式OS

摘要:手機(jī)屬于嵌入式設(shè)備,手機(jī)軟件平臺(tái)使用的操作系統(tǒng)屬于嵌入式OS的范疇。傳統(tǒng)的功能手機(jī)(Feature Phone)使用了實(shí)時(shí)多任務(wù)操作系統(tǒng)(RTOS)為基礎(chǔ)的手機(jī)軟件平臺(tái)。入門級(jí)的智能手機(jī)采用了半開放的嵌入式OS(比如Symbian),而今天高端的智能手機(jī)多采用Android和IOS這樣的通用型的OS……

系列之九:手機(jī)中的嵌入式OS(二)

摘要:為你介紹那些開源的操作系統(tǒng),Android以及它的競(jìng)爭(zhēng)對(duì)手們的整個(gè)OS產(chǎn)業(yè)生態(tài)……

系列之十:汽車電子-嵌入式OS逐鹿的新戰(zhàn)場(chǎng)

摘要:根據(jù)IEEE 2009年2月的報(bào)告,豪華級(jí)別的汽車的軟件代碼長度將超過1億行,如此巨大的代碼量不使用嵌入式操作系統(tǒng)(以下簡(jiǎn)稱嵌入式OS)和軟件平臺(tái)架構(gòu)是不可想象的,以此聯(lián)動(dòng)產(chǎn)生的軟件研發(fā)、測(cè)試和維護(hù)成本也是巨大的,帶給汽車的安全性和可靠性隱患更是無法預(yù)估的。由此也成為嵌入式Os逐鹿的新戰(zhàn)場(chǎng)……

摘要:20世紀(jì)70年代末,嵌入式OS商業(yè)產(chǎn)品在美國和加拿大等國家出現(xiàn),90年代末嵌入式OS的數(shù)量呈現(xiàn)井噴式增加,最鼎盛的時(shí)候有數(shù)百種之多,即使經(jīng)過30多年的發(fā)展和淘汰,現(xiàn)在依然有數(shù)十余種。我注意到,在眾多的公司中有人盡皆知的著名企業(yè),比如微軟和風(fēng)河,而更多的是映襯在這些大紅花周圍的綠葉公司,其中許多都是小公司,甚至個(gè)人,他們多數(shù)默默無聞……

系列之十二:嵌入式OS的未來

摘要:嵌入式OS發(fā)展到今天已經(jīng)有30多年歷史了,未來的嵌入式OS 會(huì)是什么樣的?技術(shù)會(huì)有哪些變化?商業(yè)還會(huì)蓬勃發(fā)展,還是逐漸消亡呢?筆者在撰寫《嵌入式操作系統(tǒng)史話》專欄期間,恰逢美國的CES2014,我參觀了LG,三星、SONY,奧迪等大企業(yè)展位,看到Intel、恩智浦和TI等半導(dǎo)體公司最新芯片解決方案,了解到國外嵌入式OS最新發(fā)展的一些情況……

谷歌

谷歌

谷歌公司(Google Inc.)成立于1998年9月4日,由拉里·佩奇和謝爾蓋·布林共同創(chuàng)建,被公認(rèn)為全球最大的搜索引擎公司。谷歌是一家位于美國的跨國科技企業(yè),業(yè)務(wù)包括互聯(lián)網(wǎng)搜索、云計(jì)算、廣告技術(shù)等,同時(shí)開發(fā)并提供大量基于互聯(lián)網(wǎng)的產(chǎn)品與服務(wù),其主要利潤來自于關(guān)鍵詞廣告等服務(wù)。

谷歌公司(Google Inc.)成立于1998年9月4日,由拉里·佩奇和謝爾蓋·布林共同創(chuàng)建,被公認(rèn)為全球最大的搜索引擎公司。谷歌是一家位于美國的跨國科技企業(yè),業(yè)務(wù)包括互聯(lián)網(wǎng)搜索、云計(jì)算、廣告技術(shù)等,同時(shí)開發(fā)并提供大量基于互聯(lián)網(wǎng)的產(chǎn)品與服務(wù),其主要利潤來自于關(guān)鍵詞廣告等服務(wù)。收起

查看更多

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

中國軟件行業(yè)協(xié)會(huì)嵌入式系統(tǒng)分會(huì)副理事長,嵌入式系統(tǒng)聯(lián)誼會(huì)秘書長,中國軟件行業(yè)協(xié)會(huì)理事。是國內(nèi)最早涉足嵌入式OS者之一,創(chuàng)辦了北京麥克泰軟件技術(shù)有限公司,有近30年嵌入式技術(shù)和市場(chǎng)經(jīng)驗(yàn)。是《嵌入式操作系統(tǒng)風(fēng)云錄:歷史演進(jìn)與物聯(lián)網(wǎng)未來》一書作者,并譯有《嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-III應(yīng)用開發(fā)》和《嵌入式軟件精解》等多本譯著。目前關(guān)注的領(lǐng)域:嵌入式OS、物聯(lián)網(wǎng)與穿戴設(shè)備和技術(shù)創(chuàng)業(yè)。個(gè)人網(wǎng)站:www.hexiaoqing.net。