?
前文說到,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ù)默默無聞,憑著熱情和執(zhí)著堅(jiān)守在嵌入式OS的戰(zhàn)場,嵌入式OS得發(fā)展離不開這些綠葉。我僅就其中3個(gè)做一個(gè)介紹。
嵌入式OS的前輩-SMX
Micro digital公司創(chuàng)立于1997年,SMX (simple multitasking executive)是一個(gè)嵌入式OS,也是一個(gè)RTOS。公司最初只是在嵌入式系統(tǒng)領(lǐng)域做工程應(yīng)用和服務(wù)。SMX開發(fā)始于1987年,1989年第一個(gè)版本的SMX發(fā)表了,之后近20年SMX 逐漸豐富和完善,形成包括內(nèi)核、文件、網(wǎng)絡(luò)、圖形、USB和WiFi模塊的一個(gè)比較完整的嵌入式OS。
Micro digital的創(chuàng)始人Ralph Moore是這個(gè)行業(yè)的前輩,早期從事大型計(jì)算機(jī)的研究,后來自學(xué)編程成為微處理器的程序員,經(jīng)過多年研究成功地開發(fā)出SMX。 之后Ralph 轉(zhuǎn)入公司業(yè)務(wù)開發(fā)和銷售,最近幾年他潛心在v4版本的SMX 多任務(wù)內(nèi)核設(shè)計(jì)和開發(fā), 最新版本的SMX 內(nèi)核已經(jīng)在2014年1月正式發(fā)布[1]。
我在2000年1月曾經(jīng)訪問過Micro digital,它位于美國南加州Costa Mesa ,距離著名Orange Country(橘郡)不遠(yuǎn),旁邊就是UC Irvine大學(xué)。我去的時(shí)候,當(dāng)時(shí)公司有Ralph 和他的兒子David 還有一個(gè)行政助理Betty。最近當(dāng)我計(jì)劃寫這篇文章查閱SMX 網(wǎng)站的時(shí)候,我看到這3個(gè)人依然在,另外還增加5個(gè)工程師。 與Ralph 的見面促成我們之后的合作,昆明一家公司購買SMX RTOS ,運(yùn)行工業(yè)PC上,用于生產(chǎn)線自動化控制系統(tǒng)。除了這個(gè)客戶外,SMX這個(gè)產(chǎn)品沒有找到更多機(jī)會在國內(nèi)推廣,但是SMX 代理的GUI模塊-PEG,我們在國內(nèi)找到了一些用戶,PEG即可以支持SMX,也可以獨(dú)立甚至在其他的RTOS運(yùn)行,我們把PEG移植到VRTX和PPC823平臺上面,還開發(fā)了中文字庫,這樣市場就容易推廣了。
SMX 有20多年的歷史,上百個(gè)成功應(yīng)用,最新版本SMX 4.2在內(nèi)核性能提高、減少存儲器使用、提高安全和可靠性、增加新的特性等方面有了很大的改變[2]。SMX不是很有名氣的RTOS,即無法與功能完整的QNX和微軟Window CE相比,也無法與小巧靈活的uc/OS 并論。SMX是介于二者之間,即保持嵌入式OS的實(shí)時(shí)性,也盡可能放入更多的功能,可以滿足高性能嵌入式系統(tǒng)的需求。 最難能可貴的是SMX團(tuán)隊(duì)在嵌入式OS上堅(jiān)持不懈的精神。
?
開源新兵-FreeRTOS
FreeRTOS最近幾年的名氣越來越大了,許多MCU公司的最新ARM Cortex MCU都有移植好的FreeRTOS版本支持。最早聽到這個(gè)名字是在學(xué)習(xí)飛利浦的8051單片機(jī)的時(shí)候,它應(yīng)該是為數(shù)不多的可以支持8位MCU的RTOS中的一個(gè)(另外稍有名氣的可能是CMX)。讓我更多地了解FreeRTOS的人是我的老朋友-Interniche公司的Larry Lader,Interniche公司做嵌入式TCP/IP已經(jīng)20多年了,TCP/IP 運(yùn)行最好是在一個(gè)OS上面,最近我訪問硅谷的時(shí)候,Larry告訴我,他的許多用戶都在使用FreeRTOS[3]。
FreeRTOS的創(chuàng)始人是 Richard Barry,F(xiàn)reeRTOS軟件的開發(fā)始于2002年,是一個(gè)針對MCU的標(biāo)準(zhǔn)交叉開發(fā)平臺,已經(jīng)移植到了27個(gè)MCU核上,可以支持17種工具鏈。根據(jù)EEtime 2011年統(tǒng)計(jì)每年有超過8萬次FreeRTOS下載?,F(xiàn)在,F(xiàn)reeRTOS 項(xiàng)目是由Real Time Engineers Ltd 擁有、運(yùn)行和維護(hù)。Richard Barry 同時(shí)還參加基于FreeRTOS技術(shù)、面向安全和關(guān)鍵應(yīng)用的軟件-SafeRTOS開發(fā)[4]。
FreeRTOS是一個(gè)緊湊的實(shí)時(shí)內(nèi)核,具備RTOS基本功能,占用存儲器也比較少。但是缺少內(nèi)存分配功能,內(nèi)核調(diào)試需要借助第三方-Percepio的嵌入式OS跟蹤工具Tracealyzer,F(xiàn)reeRTOS不支持MPU,沒有自身的中間件模塊,總體看FreeRTOS比較同類的產(chǎn)品功能上有比較大的差距。圖書和資料方面,Richard Barry寫了一本書,《使用FreeRTOS實(shí)時(shí)內(nèi)核:實(shí)用指南》,國內(nèi)的網(wǎng)友有翻譯成中文電子版本。最近幾年國內(nèi)的嵌入式軟件開發(fā)圖書中也有章節(jié)對FreeRTOS做了介紹。
FreeRTOS 遵循GPL的軟件授權(quán)協(xié)議,商業(yè)用戶亦可購買商業(yè)授權(quán)獲得其私有的授權(quán)協(xié)議,這樣的好處,任何基于FreeRTOS修改和相關(guān)的用戶代碼均可以不公開,這也就是我們通常所說的雙授權(quán)協(xié)議,雙授權(quán)是FreeRTOS的最大的優(yōu)勢。如果你采用開源授權(quán),那對不起,你必須要把FreeRTOS內(nèi)核相關(guān)修改貢獻(xiàn)出來,如果你是商業(yè)產(chǎn)品,希望保留這些修改為自己企業(yè)商業(yè)機(jī)密,那么就購買商業(yè)授權(quán)吧。
?
埋頭苦干的ThreadX
ThreadX 創(chuàng)始人Edward L. Lamie博士曾經(jīng)是美國加州大學(xué)斯坦尼斯分校計(jì)算機(jī)科學(xué)系教授,多年從事計(jì)算機(jī)科學(xué)的教學(xué)和科研工作,有多本專著出版。其中《Real-Time Embedded Multithreading: Using ThreadX and ARM》已經(jīng)被出版成多種文字,中文版由北航出版社出版。Lamie的其他作者還包括 Pascal Programming 和PL/1
Programming:a structured,Disciplined Approach[5]。
講到ThreadX 和Lamie 博士,還有一段小故事。據(jù)業(yè)界人士介紹,Lamie也是Nucleus RTOS(公司叫Accelerated Technology)的創(chuàng)始人。Nucleus從1.0版本發(fā)展到1.3版本后被Mentor收購,Mentor將Nucleus的版本修改為1.11后繼續(xù)發(fā)展,而Lamie另立公司Express Logic,重新開發(fā)一個(gè)ThreadX,最初版本是3.0,現(xiàn)在已經(jīng)發(fā)展到了5.X。ThreadX和Nucleus雖然大體結(jié)構(gòu)和大部分機(jī)制相似,但是Lamie 博士還是做了很多變化。據(jù)最新的報(bào)道,ThreadX 已經(jīng)嵌入在超過15億個(gè)設(shè)備當(dāng)中,其中包括大量的消費(fèi)電子產(chǎn)品,比如HP打印機(jī)、多種3G手機(jī)芯片和近年來日趨增加的物聯(lián)網(wǎng)設(shè)備[6]。
ThreadX是提供源代碼、一次性授權(quán)的嵌入式OS,與小型RTOS一樣,ThreadX在技術(shù)上并無特別的新意。除了內(nèi)核以外ThreadX 可以提供基本的嵌入式OS的中間件,包括FILEX,GUIX,NETX,USBX等,提供2種內(nèi)核開發(fā)工具-TraceX和StackX,其他工具要借助第三方了,比如IAR和ARM KEIL。Express Logical在市場上非常低調(diào),腳踏實(shí)地的把產(chǎn)品做好,應(yīng)用好和服務(wù)好,贏得客戶的口碑,如果你注意一下ThreadX的公司網(wǎng)站和宣傳資料,他們總是強(qiáng)調(diào)有多少設(shè)備使用了ThreadX,2007年的數(shù)字是4.5億,到了現(xiàn)在已經(jīng)是15億了,這與學(xué)者出身的Lamie 博士嚴(yán)謹(jǐn)和務(wù)實(shí)不無關(guān)系。Express Logic位于加州San Diego ,這里匯集了無線通信和醫(yī)療領(lǐng)域的美國高科技公司,著名的高通(Qualcom)公司總部就在San Diego,德州儀器、三星、Intel、摩托羅拉、松下等全球主流的高科技企業(yè)均在此地設(shè)有專門的無線通信研發(fā)機(jī)構(gòu),這些幫助了ThreadX在無線通訊領(lǐng)域有大量的應(yīng)用。我最近在參觀美國CES2014展覽的時(shí)候,看到一款高通公司最新開發(fā)的智能手表-Toq,據(jù)現(xiàn)場的人員介紹就是使用了ThreadX 嵌入式OS,見圖1。
圖1 高通(Qualcom)的智能手表-Toq
小結(jié)
嵌入式應(yīng)用千變?nèi)f化,構(gòu)建這些應(yīng)用的嵌入式平臺也是百花齊放,其中核心技術(shù)-嵌入式OS自然也不能一統(tǒng)天下了。眾多嵌入式OS的小公司和個(gè)人主導(dǎo)開源項(xiàng)目為嵌入式應(yīng)用大家族增添了異彩,也為嵌入式OS發(fā)展起到了創(chuàng)新和探索的作用。這些綠葉是嵌入式OS大家庭不可缺少的成員,上面我介紹的只是其中3個(gè),還有更多,他們的名字有AMX、CMX、RTXC、EmbOS(德國),RTX(英國)iTron(日本)、Chrous(法國)、RT-thread(中國)、IRMX、DSP/BIOS、INTEGRITY和SafeRTOS(英國)等。
參考資料:
[1]https://www.smxrtos.com/management.html
[2]smx special feature www.smxinfo.com
[3]https:/www.interniche.com
[4]https://en.wikipedia.org/wiki/FreeRTOS
[5] Edward L lamie 著 張炯譯 嵌入式實(shí)時(shí)操作系統(tǒng)多線程計(jì)算-基于ThreadX和ARM 北京航空航天大學(xué)出版社
[6] https://rtos.com/news/
與非網(wǎng)原創(chuàng)內(nèi)容,未經(jīng)許可,不得轉(zhuǎn)載
?
摘要:對嵌入式操作系統(tǒng)的定義,國內(nèi)外專家學(xué)者和企業(yè)界人士的理解都不盡相同,具有代表性的意見有兩種;一種是說嵌入式系統(tǒng)就是嵌入式的計(jì)算機(jī)系統(tǒng),另外一種認(rèn)為嵌入式系統(tǒng)是一種機(jī)電結(jié)合、軟硬結(jié)合執(zhí)行某種特殊功能的系統(tǒng)……
摘要:摩托羅拉自1974年發(fā)布第一款MC6800 --8位微處理器到1979發(fā)布的MC68000(簡稱68K)-16/32位CPU之后,其芯片因?yàn)榧纯梢允褂迷谟?jì)算機(jī)系統(tǒng)中,也可以使用在嵌入式系統(tǒng),很快成為當(dāng)時(shí)行業(yè)的標(biāo)準(zhǔn)。最早開發(fā)嵌入式OS的公司,許多都是借助摩托羅拉的市場起家的……
摘要:除了上一篇提到的OS-9以外,最早出現(xiàn)的嵌入式操作系統(tǒng)(簡稱為嵌入式OS)當(dāng)屬VRTX,因其在技術(shù)上創(chuàng)新性,得到用戶和嵌入式系統(tǒng)公司的廣泛支持,VRTX可稱為商業(yè)嵌入式OS的開拓和領(lǐng)導(dǎo)者……
摘要:在討論開源的嵌入式操作系統(tǒng)(簡稱嵌入式OS)之前,我們先把開源軟件搞清楚。“開源軟件”目前并沒有明確定義,也沒有標(biāo)準(zhǔn)許可證。許多公司采用開放源代碼一詞,大概有這樣兩種情況……
摘要:風(fēng)河公司(Wind River System)是一家專業(yè)從事嵌入式OS、軟件開發(fā)工具、解決方案平臺和服務(wù)的軟件公司,由Jerry Fiddle和David Wilner在1981年美國加州創(chuàng)立。VxWorks是風(fēng)河公司推出的實(shí)時(shí)多任務(wù)操作系統(tǒng)(RTOS)……
摘要:手機(jī)屬于嵌入式設(shè)備,手機(jī)軟件平臺使用的操作系統(tǒng)屬于嵌入式OS的范疇。傳統(tǒng)的功能手機(jī)(Feature Phone)使用了實(shí)時(shí)多任務(wù)操作系統(tǒng)(RTOS)為基礎(chǔ)的手機(jī)軟件平臺。入門級的智能手機(jī)采用了半開放的嵌入式OS(比如Symbian),而今天高端的智能手機(jī)多采用Android和IOS這樣的通用型的OS……
摘要:為你介紹那些開源的操作系統(tǒng),Android以及它的競爭對手們的整個(gè)OS產(chǎn)業(yè)生態(tài)……
摘要:根據(jù)IEEE 2009年2月的報(bào)告,豪華級別的汽車的軟件代碼長度將超過1億行,如此巨大的代碼量不使用嵌入式操作系統(tǒng)(以下簡稱嵌入式OS)和軟件平臺架構(gòu)是不可想象的,以此聯(lián)動產(chǎn)生的軟件研發(fā)、測試和維護(hù)成本也是巨大的,帶給汽車的安全性和可靠性隱患更是無法預(yù)估的。由此也成為嵌入式Os逐鹿的新戰(zhàn)場……
摘要:嵌入式OS發(fā)展到今天已經(jīng)有30多年歷史了,未來的嵌入式OS 會是什么樣的?技術(shù)會有哪些變化?商業(yè)還會蓬勃發(fā)展,還是逐漸消亡呢?筆者在撰寫《嵌入式操作系統(tǒng)史話》專欄期間,恰逢美國的CES2014,我參觀了LG,三星、SONY,奧迪等大企業(yè)展位,看到Intel、恩智浦和TI等半導(dǎo)體公司最新芯片解決方案,了解到國外嵌入式OS最新發(fā)展的一些情況……