摘要:從8位/16位單片機發(fā)展到以ARM CPU核為代表的32位嵌入式處理器,,嵌入式操作系統(tǒng)將替代傳統(tǒng)的由手工編制的監(jiān)控程序或調(diào)度程序,成為重要的基礎(chǔ)組件,。本文就目前國內(nèi)在ARM CPU上廣泛采用的三種嵌入式操作系統(tǒng)μC/OS-II,、μCLinux和嵌入式Linux做個分析。
關(guān)鍵詞:嵌入式操作系統(tǒng),,ARM,,μC/OS-II、μCLinux ,,嵌入式Linux
ARM公司是世界最大的半導(dǎo)體知識產(chǎn)權(quán)供應(yīng)商,,擁有全球近200家半導(dǎo)體公司的客戶。目前,,80%的GSM手機,,99%的CDMA手機,以及未來3G手機也都是采用基于ARM核的嵌入式處理器,。提供研究分析信息的機構(gòu)Gartner Inc,2003年6月份統(tǒng)計,,2002年ARM在全球半導(dǎo)體IP供應(yīng)商中排名第一,占市場份額的19.8%,,銷售收入達1.8億美圓,,比2001年增長10%。
目前,除了像TI OMAP, Intel的Xscale和Motorola的IMX系列這樣的移動終端處理器采用ARM核外,,也還有象Samsung, Atmel, Sharp, OKI和Philip等半導(dǎo)體公司設(shè)計一些通用ARM核的處理器,,可以廣泛應(yīng)用在各種嵌入式系統(tǒng),現(xiàn)在在市場上看到比較多的有S3C44B0, 4510,2410,AT91系列和Intel PXA255等,。
ARM處理器是32位設(shè)計,,同時也配置了16位指令集,軟件可以以16位編碼與等價32位代碼相比,,占用的存儲器空間可以節(jié)省約35%,。ARM處理器目前有ARM7, ARM9, ARM9E, ARM10, ARM11系列產(chǎn)品和來自合作伙伴Intel Xscale和Strong ARM系列ARM7,適合于中低端的網(wǎng)絡(luò)設(shè)備,、終端,、各種通用型的嵌入式應(yīng)用和工業(yè)控制等領(lǐng)域。ARM9適合于智能手機,、PDA和先進的控制管理和儀器儀表應(yīng)用,。Intel Xscale系列產(chǎn)品提供了高性能價格比、低功耗,、適用于智能無線終端,、PDA、家庭網(wǎng)絡(luò)和網(wǎng)絡(luò)存儲器設(shè)備等應(yīng)用,。
嵌入式操作系統(tǒng)是ARM CPU重要的軟件基礎(chǔ)
從8位/16位單片機發(fā)展到以ARM CPU核為代表的32位嵌入式處理器,,嵌入式操作系統(tǒng)將替代傳統(tǒng)的由手工編制的監(jiān)控程序或調(diào)度程序,成為重要的基礎(chǔ)組件,。嵌入式操作系統(tǒng)可以提供ARM CPU核和外設(shè)的設(shè)備管理,,如核的初始化、MMU(內(nèi)存管理單元),、定時器,、中斷、串口,、SPI,、GPIO、以太網(wǎng),、圖形接口等,,嵌入式操作系統(tǒng)提供任務(wù)調(diào)度、內(nèi)存管理,、中斷處理,、同步互斥機制、文件系統(tǒng)和網(wǎng)絡(luò)功能,,更重要的一點是嵌入式操作系統(tǒng)對應(yīng)用程序可以起到屏蔽的作用,,讓應(yīng)用程序員面向操作系統(tǒng)級開發(fā)應(yīng)用軟件,并易于在不同的基于ARM核的嵌入式處理器上移植。
嵌入式操作系統(tǒng)都一般具有一定的實時性,,易于裁剪和伸縮,,可以適合于從ARM7到Xscale各種ARM CPU和各種檔次的應(yīng)用,嵌入式操作系統(tǒng)可以使用廣泛流行的ARM開發(fā)工具,,如ARM公司的SDT/ADS和Real View,、IAR EW等也可以使用開源的軟件,如GCC/GDB,、KDE或Eclipe開發(fā)環(huán)境,,市場上還有商業(yè)廠商的專用的開發(fā)工具,,如Tornado,、μC/View、μC/KA,、CODE/Lab,、Metroworks等.
本文就目前國內(nèi)在ARM CPU上廣泛采用的三種嵌入式操作系統(tǒng)做個分析,μC/OS-II,、μCLinux和嵌入式Linux,。后兩種同屬于Linux,前者是針對沒有MMU的微處理器,如ARM7 TDMI核,,后者可適用于絕大多數(shù)有MMU的微處理器中,,如ARM920T,當(dāng)然,,文章也會涉及到其它支持ARM CPU的嵌入式操作系統(tǒng),。
μC/OS-II嵌入式實時內(nèi)核
由Jean Labrosse先生著,邵貝貝老師翻譯的《嵌入式實時操作系統(tǒng)μC/OS-II》先后由電力出版社(第一版)和航空航天大學(xué)出版社出版(第二版)發(fā)行了近萬冊,,相信有數(shù)以千計的學(xué)生,、老師和工程師正在使用μC/OS-II,在過去的一年中(2003),,在《電子產(chǎn)品世界》,、《電子設(shè)計應(yīng)用》和《單片機和嵌入式系統(tǒng)應(yīng)用》等雜志和各種學(xué)術(shù)會議上的有μC/OS-II相關(guān)論文就有幾十余篇。全世界數(shù)百種設(shè)備已經(jīng)在使用μC/OS-II,,包括如手機,、路由器、不間斷電源,、飛行器,、醫(yī)療設(shè)備和工業(yè)控制設(shè)備,在中國也已經(jīng)有包括香港權(quán)智,,首科希電,,安控科技在內(nèi)的10余家公司購買了產(chǎn)品授權(quán)。
μC/OS-II已經(jīng)有ARM7TDMI、ARM9和Strong ARM等各種ARM CPU的移植,,支持包含Atmel,、Hynix、Intel,、Motorola,、Philips、Samsung,、Sharp等公司的ARM核的CPU,。μC/OS-II的移植也相當(dāng)容易,與CPU相關(guān)的代碼包裝在三個文件中,,os_cpu.h,,os_cpu_a.asm,os_cpu_c.c,,而且Jean Labrosse先生的應(yīng)用筆記AN-1011和AN-1012對ARM7,、AN-1337對ARM9的移植過程都做了詳細的說明。
μC/OS-II有60余個系統(tǒng)調(diào)用,,覆蓋任務(wù),、定時器、信號量,、事件標(biāo)志,、郵箱、隊列和內(nèi)存管理,,已經(jīng)包含了傳統(tǒng)嵌入式操作系統(tǒng)內(nèi)核(如PSOS,,VRTX)的功能,還支持互斥型信號量(Mutual Exclusion Semaphone),,這是90年代的嵌入式操作系統(tǒng)內(nèi)核,,如Vxworks和VRTXsa才有的技術(shù)。
μC/OS-II因為是可搶占的實時內(nèi)核,,所以μC/OS-II與商業(yè)嵌入式實時內(nèi)核在性能上沒有什么差異,,μC/OS-II沒有用戶態(tài)和內(nèi)核態(tài),任務(wù)(線程)或中斷和任務(wù)切換的響應(yīng)可以很快,,主要是和不同的ARM CPU相關(guān)的,。最新的2.7x版本還增加了算法以避免在移植中修改OSINTCEXSW()中的堆棧指針。這樣可以保證μC/OS-II在不同的CPU上運行更穩(wěn)定,,移植更方便,。
總之,μC/OS-II是一個非常容易學(xué)習(xí)(有一本很好的講解很清楚的書),,結(jié)構(gòu)簡單,,功能完備和實時性很強的嵌入式操作系統(tǒng)內(nèi)核,,適合于各種嵌入式應(yīng)用以及大專院校教學(xué)和科研。
μC/OS-II目前除了內(nèi)核外還有商業(yè)化文件系統(tǒng)μC/FS,,圖形系統(tǒng)μC/GUI以及任務(wù)調(diào)試工具μC KA和μC View,,但是μC/OS-II自己目前還沒有TCP/IP(有計劃)如果需要,可以購買商用的TCP/IP,,如InterNiche (www.iniche.com),,但價格還是很貴,免費的TCP/IP項目如LWIP (http://www./~adam/lwip/),,但無論在功能還是穩(wěn)定性與商業(yè)代碼無法比擬,,這可能也是目前μC/OS-II的弱點。
最后需要說明,,μC/OS-II不是免費軟件,,任何人學(xué)習(xí)使用μC/OS-II需要購買《嵌入式實時操作系統(tǒng)μC/OS-II》一書,使用了μC/OS-II的產(chǎn)品需要購買產(chǎn)品生產(chǎn)授權(quán),,購買了此授權(quán)的還可以得到開發(fā)期間的技術(shù)支持和升級服務(wù),。
μCLinux操作系統(tǒng)
μCLinux是Linux小型化后,,適合于沒有MMU的微處理器芯片而裁剪成的小型化Linux操作系統(tǒng),,在ARM CPU系列中,ARM7 TDMI,,ARM940T等ARM核的CPU產(chǎn)品,,如果希望使用Linux操作系統(tǒng),只能用μCLinux,,當(dāng)然,,μCLinux也支持Motorola Dragonball, Coldfire等其它中低端嵌入式處理器。
μCLinux保持了傳統(tǒng)Linux操作系統(tǒng)的主要特性,,包括穩(wěn)定,、強大的網(wǎng)絡(luò)和文件系統(tǒng)的支持,μCLinux裁剪了大量的Linux內(nèi)核以縮小尺寸,,適合象512k RAM,,1M Flash這樣小容量,低成本的嵌入式系統(tǒng),。
μCLinux的項目是由Linux 2.0.38內(nèi)核開始的,,第一個項目是Motorola 68EZ328,目前已經(jīng)有2.4 Linux支持的一些移植的版本,,如S3C2500, 44B0等ARM芯片,,這些,你可以在μCLinux的官方網(wǎng)站www.uclinux.org上找到,,μCLinux近期主要是在發(fā)展各種2.4.x版本的移植,,以期跟上Linux社會主流的發(fā)展趨勢(因為今年Linux 2.6將開始成為主流的內(nèi)核),。
μCLinux系統(tǒng)小型化的另一個重要原因是采用了μCLib庫替代Linux的Glib庫,使用μCLib可以大大減少應(yīng)用程序的代碼尺寸,,對于中小型嵌入式應(yīng)用,,μCLib功能可以滿足需要,所以目前即使是某些采用Linux 2.4內(nèi)核的嵌入式LINUX系統(tǒng)也采用μCLib庫的做法,。μCLinux中,,由于沒有內(nèi)存保護機制,應(yīng)用代碼一般采用靜態(tài)連接的方式,,而且在μCLinux中采用Flat文件執(zhí)行格式(Linux是Coff或Elf格式), μCLinux和應(yīng)用代碼都可以支持固化,,存儲在Flash存儲介質(zhì)中,不需象Linux需要經(jīng)過一次Flash到RAM的拷貝,。所有這些,,使得μCLinux更象傳統(tǒng)意義上的嵌入式操作系統(tǒng)。
μCLinux主要是針對沒有MMU的嵌入式處理器開發(fā)設(shè)計,,那么它也失去了有MMU所帶來的Linux操作系統(tǒng)的特色,,比如,上面已經(jīng)提到的靜態(tài)加載(Linux支持動態(tài)應(yīng)用的加載),,μCLinux對內(nèi)存操作是直接的物理內(nèi)存,,這樣,任何程序的異常都可能導(dǎo)致內(nèi)核崩潰,,μCLinux采用Vfovk(),,支持多進程,但需要父子進程協(xié)調(diào)同步,,μCLinux的文件系統(tǒng)相對比較陳舊,,支持的CPU和參考設(shè)計還比較少,社區(qū)的發(fā)展和維護也相對緩慢,。更重要的是,,在國內(nèi)外沒有一家軟件公司有商業(yè)化的μCLinux軟件產(chǎn)品和服務(wù)支持,目前μCLinux官方網(wǎng)站還很少看見象IBM,、Intel這樣的巨型公司身影,,只有2~3家小型的硬件或方案提供商,這對于商業(yè)化的產(chǎn)品開發(fā)中采用是有一定的風(fēng)險,。
嵌入式Linux操作系統(tǒng)
我們這里要討論的是可以嵌入在ARM CPU上的,,有MMU功能的Linux操作系統(tǒng),也可以稱是嵌入式Linux操作系統(tǒng),。芬蘭學(xué)生Linux Torvalds在91年寫完第一個Linux版本時,,怎樣也無法想象到今天Linux在全世界范圍被廣泛注目和應(yīng)用。嵌入式系統(tǒng)作為Linux應(yīng)用的一個重要領(lǐng)域,,由于它的廣泛性和多樣化正在迅速發(fā)展,。
和微軟的軟件不一樣,,Linux不是由一家公司所擁有、維護開發(fā)的,,Linux在市場有多種發(fā)行版本,,所有發(fā)行版本都包含一樣的Linux內(nèi)核、基本工具和應(yīng)用,,不同的發(fā)行版本主要是在附加的工具鏈,、應(yīng)用、配置以及各種內(nèi)核補丁上有所不同,。嵌入式Linux主要是在實時性增強,、內(nèi)核精簡和裁減、支持多種CPU結(jié)構(gòu)(如ARM CPU)等方面做了改進和提高,。
使用Linux在嵌入式系統(tǒng)中有兩種途徑,。 第一是用戶自己裝配(稱為DIY內(nèi)核),你可以在www.kernel.org找到全部Linux代碼,,或直接到ARM CPU的源代碼樹下www.ARMLinux.org.uk找到你需要的Linux版本在ARM下的移植,,或者某些半導(dǎo)體公司,如三星,、Motorola也在自己的網(wǎng)站或銷售自己的ARM評估板的時候送給一張CD,,里面含有一個可以支持他們評估板的最小Linux內(nèi)核系統(tǒng)。如果這個最小內(nèi)核沒有包含GCC/GDB工具鏈,,你可能還要到GNU的網(wǎng)站下載全部的源代碼,,然后再編譯生成你需要版本的ARM工具鏈和應(yīng)用程序庫,,這個過程是相當(dāng)耗時和困難的,。還需要指出,這種DIY內(nèi)核的配置,,添加應(yīng)用和驅(qū)動程序也是不標(biāo)準(zhǔn)的和復(fù)雜的,,這是嵌入式系統(tǒng)的特殊性所在,比如說,,有的基于ARM的應(yīng)用是網(wǎng)絡(luò)上的小型互連設(shè)備,,他需要多個以太網(wǎng)、USB主機,、小型的NOR Flash文件系統(tǒng),,而一個ARM手持終端,它關(guān)心的是LCD的觸屏,、紅外或藍牙的接口,、USB用戶端、快速的啟動,,動態(tài)的電源管理和NADA FLASH,,這樣,,你就需要在數(shù)十家Linux相關(guān)網(wǎng)站下載各種補丁,應(yīng)用和工具,,把它們和你拿到的這個內(nèi)核進行反復(fù)的編譯和調(diào)試,,確信它們之間以及它們在你所用的ARM CPU硬件評估板上是穩(wěn)定可靠工作的,這個過程是在沒有任何技術(shù)支持下完成的,。當(dāng)然,,如果可以從某家半導(dǎo)體公司或開源的網(wǎng)站能夠得到“最小內(nèi)核”,它所包含的組件(如驅(qū)動,、應(yīng)用和文件系統(tǒng))和你的應(yīng)用近似,,而且代碼是可靠的,或者你及時正確得到Linux網(wǎng)友的指導(dǎo),,那么你是幸運的,。據(jù)說,有一個著名的電信設(shè)備制造商花了2年的時間和150萬美圓在一個項目中開發(fā)自己的Linux,,而且最后還不得不停止了,。
第二是選擇一個商業(yè)的嵌入式Linux操作系統(tǒng)平臺。商業(yè)化的嵌入式Linux版本是針對嵌入式處理器,,如ARM所優(yōu)化設(shè)計的,,已經(jīng)支持了各種半導(dǎo)體廠家的評估板和主要的設(shè)備驅(qū)動,,商業(yè)化的嵌入式Linux包含了文件系統(tǒng),、應(yīng)用,、實時性擴展和技術(shù)支持培訓(xùn)服務(wù),,現(xiàn)今國外著名的商業(yè)化嵌入式Linux產(chǎn)品有:MontaVista Linux, Bluecat Linux, Timesys Linux, Metrowork Linux(原Lineo), Vlinux(韓國)和Redhat Linux等,,國內(nèi)也有紅旗,、中軟,、新華嵌入式Linux,。
MontaVista Linux是MontaVista軟件公司于99年推出的,,它是目前全球最優(yōu)秀的嵌入式Linux操作系統(tǒng)和工具供應(yīng)商,,MontaVista在嵌入式Linux的實時性、交叉開發(fā)工具,、高可用性,、動態(tài)電源管理等Linux技術(shù)要點方面具有世界領(lǐng)先地位。
MontaVista Linux最版本是3.1,,采用Linux 2.4.20,,針對8種CPU系列(包含ARM和Xscale)優(yōu)化定制的商業(yè)化版本,包含了最新O(1)實時調(diào)度器,,可搶占的內(nèi)核,,微秒級的高分辨定時器,基于Eclipse的DevRocket開發(fā)環(huán)境,,支持應(yīng)用,、內(nèi)核和文件系統(tǒng)(固化)的配置和調(diào)試,,以及測試和分析工具,純Windows, Linux和Solaris開發(fā)主機,,80余種評估板和應(yīng)用系統(tǒng)的設(shè)備驅(qū)動支持,。
選擇象MontaVista Linux這樣商業(yè)化嵌入式Linux,可以讓用戶把時間和資金放在應(yīng)用軟件和特定的硬件接口和設(shè)備驅(qū)動程序,,使用商業(yè)嵌入式Linux,,可以得到一定時間(一般是1年)的技術(shù)支持,升級和培訓(xùn)(這很重要,,因為Linux是每天都在變化的),。
商業(yè)嵌入式Linux目前除國內(nèi)的產(chǎn)品外,價格還是很昂貴的,,根據(jù)配置和服務(wù)時間,,大約從幾千到幾萬美圓,多數(shù)國內(nèi)用戶從資金和心理上還很難承受,,商業(yè)嵌入式Linux開發(fā)工具相對于Microsoft和象Tornado/VXWORK的開發(fā)工具,,在易于使用和豐富性方面還待于提高和改進。
同作為Linux操作系統(tǒng),,我是推薦使用帶有MMU 的 Linux ,,而不是μCLinux,因為絕大多數(shù)新的ARM CPU 都是AMR9核,,他們都帶有MMU 了,,無論是開放源碼的LINUX 社區(qū)還是商業(yè)的嵌入式LINUX 公司的支持和維護都比μCLinux,要好,,快和豐富的多,。
結(jié)束語
前面我們對三種在ARM CPU上較為流行的嵌入式操作系統(tǒng)作了詳細的分析,在進入一個總結(jié)之前,,我還想提到幾個在國際上很有名氣的嵌入式操作系統(tǒng),,它們是Windriver公司的Vxworks、ATI的Nucleus,、日本人的iTron和WinCE。
Windriver的Vxworks在兩三年前曾經(jīng)是最具影響力的嵌入式操作系統(tǒng),,幾乎主要的通信設(shè)備制造商都是采用PowerPC+Vxworks這種組合,,但是在ARM CPU上,Vxworks的應(yīng)用并不多見,;ATI的Nucleus(現(xiàn)在已經(jīng)是Mentor的嵌入式部門)曾經(jīng)作為最有名氣的源代碼,、沒有版稅的嵌入式操作系統(tǒng)而在北美和亞洲臺灣流行,最成功的設(shè)計范例是各種GSM移動電話,,Nucleus只是一個實時內(nèi)核,,用戶需要再購買它的TCP/IP,,GUI,文件系統(tǒng)和設(shè)備驅(qū)動才能形成一個功能完整的嵌入式系統(tǒng),,這使它在近些年失去了優(yōu)勢,;日本人的iTron是在日本幾乎家喻戶曉的嵌入式內(nèi)核,標(biāo)準(zhǔn)的編程接口,、低廉的價格(1~3千美圓),、沒有版稅、支持幾乎所有的CPU(尤其是支持很多日本的CPU),,但在除日本之外,,iTron好象毫無建樹;微軟的WinCE,,幾乎所有高端PDA都是采用它,,它們使用的是 Xscale或ARM9這樣的CPU,但微軟只是關(guān)心有產(chǎn)量象PC一樣巨大的嵌入式設(shè)備制造商,,所以他并沒有把自己的WinCE象Linux一樣易于移植到不同的CPU和增加設(shè)備驅(qū)動程序,,微軟更愿意象Windows一樣自己把所有事情做好,你只是拿去用好了,,如果你沒有相當(dāng)?shù)募墑e,,很難獲得它的個性化定制服務(wù)。
最后我們歸納一下選擇一個合適的ARM CPU的嵌入式操作系統(tǒng)的幾個重要因素,。
第一是應(yīng)用,。如果你想開發(fā)的嵌入式設(shè)備是一個和網(wǎng)絡(luò)應(yīng)用密切相關(guān)或者就是一個網(wǎng)絡(luò)設(shè)備,那么你應(yīng)該選擇用嵌入式Linux或者μCLinux,,而不是μC/OS-II,,因為Linux不僅為你集成了TCP/IP協(xié)議,還有很豐富的其它網(wǎng)絡(luò)協(xié)議,,如DHCP Server,,PPPoe,webserver等等,。
第二是實時性,。沒有一個絕對的數(shù)字可以告訴你什么是硬實時,什么是軟實時,,它們之間的界限也是十分模糊的,,這與你選擇什么樣的ARM CPU,它的主頻,,內(nèi)存等參數(shù)有一定的關(guān)系,,象Intel Xscale這樣的處理器,即使配合普通Linux的內(nèi)核,內(nèi)核的搶占延時最壞情況也只有1.743毫秒,,而99.9%的情況是1.42毫秒,,而如果你使用加入實時補丁等技術(shù)的嵌入式Linux如MontaVista Linux(2.4.17版本內(nèi)核),最壞的情況只有436微秒,,而99.9%的情況是195微秒,,上面的數(shù)字以及考慮到最新的Linux在實時性方面的改進(如低延時O(1)調(diào)試器,微秒級的高分辨率POSIX定時器),,嵌入式Linux可以適合于90~95%的各種嵌入式系統(tǒng)應(yīng)用,。當(dāng)然,你如果希望更高數(shù)量級的實時響應(yīng),,如高速的A/D轉(zhuǎn)換需要幾個微秒以內(nèi)的中斷延時,,要求一個毫秒級沒有DMA方式的異步串行實時處理器等類似的應(yīng)用,可能是采用μC/OS-II是合適的,。當(dāng)然,,你采用象Vxworks這樣傳統(tǒng)的嵌入式操作系統(tǒng)也可以滿足這樣的強實時性要求。
第三是開發(fā)工具,。坦言說,,目前μC/OS-II、μCLinux和嵌入式Linux的開發(fā)工具與商業(yè)嵌入式操作系統(tǒng)工具還有一些差距,,目前在ARM CPU上廣泛流行和使用的是ARM公司SDT/ADS工具鏈,,產(chǎn)品無論在功能、穩(wěn)定性和眾多的第三方廠商支持方面,,都很好,,唯一不足的是缺少對嵌入式操作系統(tǒng)的支持,SDT/ADS的升級產(chǎn)品RealView計劃支持GCC和嵌入式Linux,,但目前還沒有看到,,μC/OS-II可以使用ARM SDT/ADS,但沒有OS調(diào)試功能,。如果希望支持OS調(diào)試,,可以使用IAR或Nohan調(diào)試器,μCLinux的調(diào)試除GDB外還有第三方調(diào)試器,,并配合Cygwin形成Windows環(huán)境下μCLinux開發(fā)環(huán)境,,象Aiji的 Spider和Micetek 的Hitool。
第四是你所選擇的ARM CPU和參考板,,象ARM7TDMI和ARM940T(如S3C2500/2510)核是不能使用嵌入式Linux(MMU),,如果你想用Linux,只能用μCLinux,,如果你想用Vxworks,你需要了解一下提供評估板的公司是否有BSP(板支持包),Vxworks自己只有少數(shù)ARM公司評估板的支持,。
最后是價格和技術(shù)服務(wù),。中國工程師的薪水大約是歐美日等國的十分之一,所以在考慮購買商業(yè)嵌入式操作系統(tǒng)時,,會遇到是買還是自己做的問題,,這是很正常的,尤其是在采用開放源代碼技術(shù)時,,這個問題就就更加突出,。有一點需要注意的是,有些產(chǎn)品如Vxworks是既按用戶數(shù)(有License保護鎖)收取開發(fā)費,,也按你產(chǎn)品售出的實際數(shù)量收取每個Vxworks軟件運行的版稅,。μC/OS-II只是收取每種產(chǎn)品一次性版稅(不限數(shù)量)。Nucleus和Threadx是一次性收取開發(fā)加上生產(chǎn)的費用,。Linux無論是μCLinux還是嵌入式Linux(即使是商業(yè)版本象MontaVista Linux)是不收版稅的,,商用嵌入式Linux是以服務(wù)費或訂閱方式收取開發(fā)時的費用。很明顯,,國外產(chǎn)品價格是貴一些(主要是他們?nèi)肆Τ杀靖撸?,但不能不承認他們在嵌入式操作系統(tǒng)的技術(shù)已經(jīng)遠遠走在了前方。值得提醒大家的是在ARM開發(fā)工具和評估板的眾多國內(nèi)供應(yīng)商中,,有不少已經(jīng)做了開放源碼操作系統(tǒng)的移植和示范性的Demo,,但應(yīng)該注意他們多數(shù)不具有維護和支持操作系統(tǒng)平臺的能力和經(jīng)驗,過多地依賴他們是有風(fēng)險的,。
品種眾多,,價格適宜的ARM CPU加上開放源碼嵌入式操作系統(tǒng)為中國嵌入式系統(tǒng)和設(shè)備制造商的發(fā)展創(chuàng)造了一個有利的時機,正確迅速地使用這些技術(shù),,可以加快我們具有競爭力的新一代電子產(chǎn)品上市的時間和提高產(chǎn)品的檔次,。
|