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