嵌入式Linux技術(shù)的現(xiàn)狀與發(fā)展動向
摘 要: 嵌入式系統(tǒng)和Linux的有機結(jié)合,成為后PC時代計算機最普遍的應(yīng)用形式。本文介紹了嵌入式Linux技術(shù)的版本與特點,結(jié)合開發(fā)路由器的實例分析了嵌入式Linux的優(yōu)勢和發(fā)展動向,并給出與嵌入式Linux研究有關(guān)的網(wǎng)絡(luò)資源。
關(guān)鍵詞:信息家電 嵌入式Linux 路由器開發(fā)
1 引言
863智能計算機首席專家高文教授說:所謂后PC時代,是英文pervasive computing的中文意譯,pervasive的原意是普遍的、蔓延的、滲透的,所以pervasive computing這個詞組直接的翻譯應(yīng)該是滲透到各個方面的計算。因而我們可以認為,所謂后PC時代是指:計算機無所不在,它滲透到我們工作和生活的方方面面。當(dāng)然,這樣的無所不在的計算機也絕不都是象今天的PC一樣擺在桌子上或放在書包里,后PC時代的絕大多數(shù)計算機是以非計算機的形式出現(xiàn)的,例如作為隨身物品出現(xiàn)的電話、遙控開關(guān)、電子戒指、電子手杖等,再例如作為家庭網(wǎng)絡(luò)組成部分的電視機、電冰箱、空調(diào)等等。這些設(shè)備的核心部分都有計算機,但大多是以嵌入式系統(tǒng)的形式存在,而不是以整機的形象出現(xiàn)。所以,我們也可以說后PC時代的特點是計算機無處不在、很少可見。
在IT業(yè),如果要問當(dāng)今最熱門的話題是什么[1],從事硬件開發(fā)的人會毫不猶豫地回答:信息家電;從事軟件開發(fā)的人同樣也會毫不猶豫地回答:Linux。事實上,當(dāng)人們在談?wù)揚DA、手持電腦、機頂盒時,后PC時代就到來了,或者說信息家電時代到來了。信息家電之所以直到現(xiàn)在才變得火爆,一個很重要的原因就是Linux的加入。廉價的Linux資源與信息家電結(jié)合,真正宣告了信息家電時代的到來,嵌入于信息家電(或其他設(shè)備)中的Linux棗嵌入式Linux,是國際軟件界的一個新寵。Linux是個天生的網(wǎng)絡(luò)操作系統(tǒng),成熟而且穩(wěn)定。Linux是開放源代碼的,任何人都可以修改它,或者用它開發(fā)自己的產(chǎn)品。Linux系統(tǒng)是可以定制的,系統(tǒng)內(nèi)核最小時目前只有134kB。一個帶有中文系統(tǒng)以及圖形化界面的核心程序也可以做到不足1MB,而且同樣穩(wěn)定。因此,Linux作為嵌入式系統(tǒng)新的選擇,是非常有潛力的[3]。
國際上有數(shù)以百計的嵌入式Linux開發(fā)計劃,在國內(nèi),這方面的發(fā)展也有了較大進展。博利思軟件公司在這方面做了一些有益的嘗試,并于最近推出了一個嵌入式Linux操作系統(tǒng)棗PocketIX 預(yù)覽版(下載網(wǎng)址為:www.pocketix.com/software/software.htm。)。PocketIX是一個內(nèi)核基于標(biāo)準(zhǔn)Linux的嵌入式操作系統(tǒng),由一個體積很小的內(nèi)核及一些可以根據(jù)需要進行定制的系統(tǒng)模塊組成。其系統(tǒng)占用空間小、啟動速度快、穩(wěn)定性好,并具有多任務(wù)、多線程的特征。與傳統(tǒng)的嵌入式系統(tǒng)相比,PocketIX采用標(biāo)準(zhǔn)的Linux結(jié)構(gòu),所有運行在標(biāo)準(zhǔn)Linux下的應(yīng)用軟件都可平滑移植到該系統(tǒng)上。
在傳統(tǒng)家電向信息家電過渡時,操作系統(tǒng)小型化、產(chǎn)品穩(wěn)定性及是否易于開發(fā)等成了至關(guān)重要的問題。嵌入式Linux雖然只是剛剛興起的熱門技術(shù),但它卻能很好解決上述問題。作為嵌入式Linux產(chǎn)品的研發(fā),涉及到嵌入式微處理器技術(shù)、Linux技術(shù)、網(wǎng)絡(luò)通訊技術(shù)、通訊產(chǎn)品設(shè)計師的行業(yè)經(jīng)驗,華恒網(wǎng)絡(luò)技術(shù)公司正是基于在以上經(jīng)驗的優(yōu)勢,成功推出國內(nèi)首款基于嵌入式Linux超小型應(yīng)用產(chǎn)品――網(wǎng)絡(luò)管理卡,該產(chǎn)品已經(jīng)批量生產(chǎn)、投放市場。有關(guān)詳情可訪問該公司站點(http://www.hhcn.com)。
2 嵌入式Linux開發(fā)的優(yōu)點及版本
嵌入式Linux由于代碼開放性以及強大的網(wǎng)絡(luò)功能,在中低端的嵌入式網(wǎng)絡(luò)設(shè)備中應(yīng)用起來,比起pSOS+,VxWorks等專用系統(tǒng)有許多優(yōu)勢,Linux甚至支持藍牙技術(shù),VxWorks對于新技術(shù)的支持遠沒有Linux那么迅速;從我們開發(fā)路由器卡可知:從產(chǎn)品上市時間到產(chǎn)品的功能不斷擴充、開發(fā)人力的投入都驗證了使用嵌入式Linux作為操作系統(tǒng)平臺的優(yōu)勢。如果是用VxWorks作為平臺來做就相當(dāng)困難,一系列的防火墻協(xié)議以及Web Server協(xié)議、TCP/IP整個體系結(jié)構(gòu)、撥號協(xié)議等等,不是自己開發(fā)就是要買VxWorks的編譯好的庫(不公開源代碼的),價格也比較昂貴。表1將專用嵌入式實用操作系統(tǒng)與嵌入式Linux作了詳細的分析和比較。
表1 專用嵌入式實時操作系統(tǒng)與嵌入式Linux的比較
|
專用嵌入式實時操作系統(tǒng) |
嵌入式Linux操作系統(tǒng) |
版權(quán)費 |
每生產(chǎn)一件產(chǎn)品需交納一份版權(quán)費 |
免費 |
購買費用 |
人民幣數(shù)十萬元 |
免費 |
技術(shù)支持 |
由開發(fā)商獨家提供有限的技術(shù)支持 |
全世界的自由軟件開發(fā)者提供支持 |
網(wǎng)絡(luò)特性 |
另加人民幣數(shù)十萬購買 |
免費而且性能優(yōu)異 |
軟件移植 |
難,因為是封閉系統(tǒng) |
易,代碼開放,有許多應(yīng)用軟件支持 |
應(yīng)用產(chǎn)品開發(fā)周期 |
長,因為可參考的代碼有限 |
短,新產(chǎn)品上市迅速,因為有許多公開的代碼可以參考和移植 |
實時性能 |
好 |
需改進,可用RT_Linux等模塊彌補 |
穩(wěn)定性 |
好 |
較好,在高性能系統(tǒng)中仍需改進 |
Linux是自由的多任務(wù)操作系統(tǒng),用戶可以獲得多種配置及體系不同的Linux版本。因此,如何選擇Linux的發(fā)行版本,也是我們要解決的一個重要問題。{{分頁}}
Linux的版本主要有3大類:
(1)標(biāo)準(zhǔn)的Linux版本。
(2)小型化的嵌入式版本(Small foot-print“embedded”Version)。
(3)具有實時擴展功能的Linux版本。
這3大類Linux版本的各自用戶所占的百分數(shù)統(tǒng)計餅圖如圖1所示。
另外,Linux還有一些特殊應(yīng)用、把Linux移植到非X86體系的CPU(包括PowerPC、RISC、68K以及許多別的微控制器)上的版本。例如有許多針對不同的如“瘦服務(wù)器”或“防火墻”應(yīng)用的小型化、實時特性增強的特殊版本。
我們要認識到,所有的Linux發(fā)行版本都是在同一個框架結(jié)構(gòu)類型下發(fā)展演變的,它們使用的基本模塊都相同,其中包括Linux內(nèi)核、Shell命令(命令執(zhí)行解釋模塊)以及許多的通用工具。不同的是,數(shù)以百計的Linux應(yīng)用程序,被包含在不同的發(fā)行版本當(dāng)中,安裝的進程處理程序也不同。
3 嵌入式Linux的一個開發(fā)實例分析
傳統(tǒng)的路由器都是使用專用的RTOS開發(fā)的,在開發(fā)TCP/IP、防火墻協(xié)議以及Web Server協(xié)議時都只能自己去實現(xiàn),產(chǎn)品上市的周期非常長,對新協(xié)議、新接口的支持以及設(shè)備升級的周期也很長,因為專用的RTOS有關(guān)內(nèi)容都要自己開發(fā);而對于Linux來說,這些都可以直接從網(wǎng)上獲得代碼,針對應(yīng)用系統(tǒng)的要求作必要的改動即可,對新協(xié)議、新接口的支持也是如此,無需要自己從頭去開發(fā)。
在表2中,我們將分別利用VxWorks專用操作系統(tǒng)和嵌入式Linux操作系統(tǒng)來開發(fā)路由器作了詳細地比較和分析。
表2 開發(fā)路由器情況表
|
使用VxWorks專用操作系統(tǒng) |
使用嵌入式Linux操作系統(tǒng) |
產(chǎn)品上市時間 |
長達9個月 |
僅需3個月 |
投入開發(fā)的人力 |
多達6人以上 |
只需3人 |
產(chǎn)品的附加成本 |
每臺路由器需要交一份版權(quán)費,成本大大提高 |
沒有任何附加費 |
產(chǎn)品功能的豐富性 |
一般,增加功能要象廠家購買模塊 |
豐富,可利用自由軟件的大量公開代碼移植 |
網(wǎng)絡(luò)特性 |
另外購買網(wǎng)絡(luò)模塊,如OSPF動態(tài)路由協(xié)議庫,很昂貴;若自行開發(fā)則穩(wěn)定性較差且開發(fā)時間長 |
免費獲得自由軟件代碼,只需移植,由于來自桌面Linux平臺,繼承性好、穩(wěn)定性好、開發(fā)時間短 |
產(chǎn)品升級以及對新網(wǎng)絡(luò)協(xié)議的支持 |
廠家反映慢,支持慢,不一定能支持新特性 |
利用全世界Linux自由軟件開發(fā)團體的力量,支持迅速 |
4 嵌入式Linux的網(wǎng)上資源
4.1 標(biāo)準(zhǔn)的Linux版本
(1)Caldera:http://www.calderasystems.com/
(2)Corel:http://linux.corel.com/
(3)Debian:http://www.debian.org.com/
(4)Mandrake:http://www.linux-mandrake.comlen/
(5)Red Hat:http://www.reahat.com/
(6)Slackware:http://www.slackware.com/
(7)SuSE:http://www.suse.com
(8)Turbo Linux:http://www.turbolinux.com/
4.2 小型化的嵌入式版本
(1)ETLinux:http://www.prosa.it/embedded/etlinux/
(2)LEM:http://www.linux-embedded.com/lem.php3
(3)Linux Router Project:http://www.linuxrouter.org/
(4)LOAF:http://loaf.ecks.org/
(5)ucLinux:http://www.uclinux.org/
(6)uLinux:http://sunsite.auc.dk/mulinux/
(7)ThinLinux:http://www.thinlinux.org{{分頁}}
4.3 具有實時擴展功能的Linux版本
(1)RTLinux:http://www.rtlinux.com
(2)RTLinux:http://www.FSMLabs.com
(3)RTAI:http://www.rtai.org/
(4)EL/IX:http://www.sourceware.cygus.com/elix/
(5)SRT-Linux:http://www.cl.cam.ac.uk/~dmi1000/linux-srt/index.html
4.4 Linux特殊應(yīng)用版本
(1)FirePlugLinux:http://www.fireplug.net/
(2)KOSIX:http://www.touchdynamics.com/KOSIX.html
(3)Linux Router Project:http://www.linuxrouter.org/
(4)Pizzabox Linux:http://www.jrcs.co.wk
5 結(jié)束語
盡管絕大部分的嵌入式系統(tǒng)的硬件平臺仍掌握在外國大公司的手中,國產(chǎn)的嵌入式操作系統(tǒng)在技術(shù)含量、兼容性、市場運作模式等方面還有相當(dāng)長的一段距離。但由于Linux自由操作系統(tǒng)的出現(xiàn),特別是將嵌入式系統(tǒng)和Linux有機結(jié)合起來的嵌入式Linux,給我們提供跟蹤國外嵌入式操作系統(tǒng)最新應(yīng)用技術(shù)難得的機遇。嵌入式Linux將在機頂盒、掌上電腦或PDA、手機和尋呼機上網(wǎng)、車載盒、工業(yè)控制等方面有著廣泛地應(yīng)用。
參考文獻
1.廖原.細看嵌入式中文Linux 中國計算機報 2000.7.4
2.金西 黃汪.嵌入式Linux技術(shù)及其應(yīng)用 計算機應(yīng)用 2000.7
3.金西 黃汪.Linux操作系統(tǒng)是嵌入式系統(tǒng)新的選擇 微計算機信息 2000.6
評論