當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]嵌入式系統(tǒng)軟件及編程語(yǔ)言

1、引言:
    隨著計(jì)算機(jī)技術(shù)和微電子技術(shù)的迅速發(fā)展,嵌入式系統(tǒng)應(yīng)用領(lǐng)域越來(lái)越廣泛。當(dāng)今,嵌入式系統(tǒng)已成為一個(gè)時(shí)髦的名詞,就像當(dāng)初的計(jì)算機(jī)熱潮,似乎比當(dāng)初的計(jì)算機(jī)熱潮涉及的領(lǐng)域更廣泛,應(yīng)用技術(shù)人員更多,相關(guān)國(guó)民經(jīng)濟(jì)產(chǎn)值也更龐大。報(bào)紙、雜志、網(wǎng)絡(luò)都把嵌入式系統(tǒng)當(dāng)作討論的熱門(mén)話(huà)題。
    嵌入式系統(tǒng)一般指非PC系統(tǒng),有計(jì)算機(jī)功能但又不稱(chēng)之為計(jì)算機(jī)的設(shè)備或器材。它是以應(yīng)用為中心,軟硬件可裁減的,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等綜合性嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng)。

嵌入式系統(tǒng)主要由嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及用戶(hù)的應(yīng)用程序等4個(gè)部分組成,它是集軟硬件于一體的可獨(dú)立工作的"器件"。

嵌入式系統(tǒng)的軟件部分包括操作系統(tǒng)軟件(要求實(shí)時(shí)和多任務(wù)操作)和應(yīng)用程序編程。操作系統(tǒng)控制著應(yīng)用程序編程與硬件的交互作用,而應(yīng)用程序控制著系統(tǒng)的運(yùn)作和行為。



2、嵌入式系統(tǒng)軟件:



(1)嵌入式操作系統(tǒng):
     嵌入式操作系統(tǒng)是一種支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件,它是嵌入式系統(tǒng)(包括硬、軟件系統(tǒng))極為重要的組成部分,通常包括與硬件相關(guān)的底層驅(qū)動(dòng)軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動(dòng)接口、通信協(xié)議、圖形界面、標(biāo)準(zhǔn)化瀏覽器等Browser。     

嵌入式操作系統(tǒng)具有通用操作系統(tǒng)的基本特點(diǎn),如能夠有效管理越來(lái)越復(fù)雜的系統(tǒng)資源;能夠把硬件虛擬化,使得開(kāi)發(fā)人員從繁忙的驅(qū)動(dòng)程序移植和維護(hù)中解脫出來(lái);能夠提供庫(kù)函數(shù)、驅(qū)動(dòng)程序、工具集以及應(yīng)用程序。與通用操作系統(tǒng)相比較,嵌入式操作系統(tǒng)在系統(tǒng)實(shí)時(shí)高效性、硬件的相關(guān)依賴(lài)性、軟件固態(tài)化以及應(yīng)用的專(zhuān)用性等方面具有較為突出的特點(diǎn)。



(2)嵌入式操作系統(tǒng)的發(fā)展?fàn)顩r:

國(guó)外嵌入式操作系統(tǒng)已經(jīng)從簡(jiǎn)單走向成熟,主要有Vxwork、QNX、PalmOS、Windows CE、嵌入式Linux等。

國(guó)內(nèi)的嵌入式操作系統(tǒng)研究開(kāi)發(fā)有2種類(lèi)型,一類(lèi)是基于國(guó)外操作系統(tǒng)2次開(kāi)發(fā)完成的,如海信的基于Windows CE的機(jī)頂盒系統(tǒng);另一類(lèi)是中國(guó)自主開(kāi)發(fā)的嵌入式操作系統(tǒng),如凱思集團(tuán)公司自主研制開(kāi)發(fā)的嵌入式操作系統(tǒng)Hopen OS(“女?huà)z計(jì)劃”)等。 
    Windows CE內(nèi)核較小,能作為一種嵌入式操作系統(tǒng)應(yīng)用到工業(yè)控制等領(lǐng)域。其優(yōu)點(diǎn)在于便攜性、提供對(duì)微處理器的選擇以及非強(qiáng)行的電源管理功能。內(nèi)置的標(biāo)準(zhǔn)通信能力使Windows CE能夠訪(fǎng)問(wèn)Internet并收發(fā)E-mail或?yàn)g覽Web。除此之外,Windows CE特有的與Windows類(lèi)似的用戶(hù)界面使最終用戶(hù)易于使用。  

Windows CE的缺點(diǎn)是速度慢、效率低、價(jià)格偏高、開(kāi)發(fā)應(yīng)用程序相對(duì)較難。 

3Com公司的Palm OS在掌上電腦和PDA市場(chǎng)上獨(dú)占其霸主地位,它有開(kāi)放的操作系統(tǒng)應(yīng)用程序接口(API),開(kāi)發(fā)商可根據(jù)需要自行開(kāi)發(fā)所需的應(yīng)用程序。 
    QNX是由加拿大QSSL公司開(kāi)發(fā)的分布式實(shí)時(shí)操作系統(tǒng),它由微內(nèi)核和一組共操作的進(jìn)程組成,具有高度的伸縮性,可靈活地剪裁,最小配置只占用幾十KB內(nèi)存。因此,可以廣泛地嵌入到智能機(jī)器、智能儀器儀表、機(jī)頂盒、通訊設(shè)備、PDA等應(yīng)用中去。
    Hopen OS是凱思集團(tuán)自主研制開(kāi)發(fā)的嵌入式操作系統(tǒng),由一個(gè)體積很小的內(nèi)核及一些可以根據(jù)需要進(jìn)行定制的系統(tǒng)模塊組成。其核心Hopen Kernel一般為10KB左右大小,占用空間小,并具有實(shí)時(shí)、多任務(wù)、多線(xiàn)程的系統(tǒng)特征。
    在眾多的實(shí)時(shí)操作系統(tǒng)和嵌入式操作系統(tǒng)產(chǎn)品中,WindRiver公司的VxWorks是較為有特色的一種實(shí)時(shí)操作系統(tǒng)。VxWorks支持各種工業(yè)標(biāo)準(zhǔn),包括POSIX、ANSI C 和TCP/IP網(wǎng)絡(luò)協(xié)議。VxWorks運(yùn)行系統(tǒng)的核心是一個(gè)高效率的微內(nèi)核,該微內(nèi)核支持各種實(shí)時(shí)功能,包括快速多任務(wù)處理、中斷支持、搶占式和輪轉(zhuǎn)式調(diào)度。目前在全世界裝有VxWorks系統(tǒng)的智能設(shè)備數(shù)以百萬(wàn)計(jì),其應(yīng)用范圍遍及互聯(lián)網(wǎng)、電信和數(shù)據(jù)通信等眾多領(lǐng)域。
    而作為一種嵌入式操作系統(tǒng),嵌入式Linux以其特別和引人注目的優(yōu)勢(shì)正極
大地吸引電子設(shè)計(jì)工程師從自己編寫(xiě)的或?qū)S玫腞TOS轉(zhuǎn)移到Linux。據(jù)VDC Data的數(shù)據(jù)顯示,整個(gè)Linux的增長(zhǎng)從2000年的1%到2003年的14%,再到2010年猛增到67%。Even Data數(shù)據(jù)顯示,在嵌入式市場(chǎng),嵌入式Linux從2001年11%增到2002年27%,而同期Vxwork只是從16%到18%,WIN CE從9%到14%。在嵌入式Linux的各種應(yīng)用市場(chǎng)中,語(yǔ)音和數(shù)據(jù)通信名列第一,2000年的銷(xiāo)售額是1300萬(wàn)美元,而預(yù)計(jì)2005年達(dá)到1 .26 億美元(VDC Data數(shù)據(jù)),可以說(shuō)嵌入式Linux將成為主流的通用嵌入式操作系統(tǒng)。



(3)嵌入式Linux操作系統(tǒng):

選擇操作系統(tǒng)時(shí),要根據(jù)自己的嵌入式要求和實(shí)時(shí)性要求,選擇適合自己的嵌入式Linux,如果可能,盡量選擇使用普遍的嵌入式Linux系統(tǒng)。概括說(shuō)來(lái),將Linux應(yīng)用于嵌入式系統(tǒng)的開(kāi)發(fā)有如下一些優(yōu)點(diǎn):
1)Linux自身具備一整套工具鏈,容易自行建立嵌入式系統(tǒng)的開(kāi)發(fā)環(huán)境和交叉運(yùn) 

行環(huán)境,并且可以跨越在嵌入式系統(tǒng)開(kāi)發(fā)中仿真工具(ICE)的障礙。
2)內(nèi)核的完全開(kāi)放,使得可以自己設(shè)計(jì)和開(kāi)發(fā)出真正的硬實(shí)時(shí)系統(tǒng);對(duì)于軟實(shí)時(shí)

系統(tǒng),在Linux中也容易得到實(shí)現(xiàn)。
3)強(qiáng)大的網(wǎng)絡(luò)支持,使得可以利用Linux的網(wǎng)絡(luò)協(xié)議棧將其開(kāi)發(fā)成為嵌入式的

TCP/IP網(wǎng)絡(luò)協(xié)議棧。
在嵌入式系統(tǒng)中使用Linux有2種途徑: 
1)是用戶(hù)自己裝配(稱(chēng)為DIY內(nèi)核),可以在www.kernel.org和GNU的網(wǎng)站找到全部Linux代碼,然后再編譯生成你 

需要版本的工具鏈和應(yīng)用程序庫(kù),這個(gè)過(guò)程比較耗時(shí)和困難。還需要指出,這種DIY內(nèi)核的配置,添加應(yīng)用和驅(qū) 

動(dòng)程序也是不標(biāo)準(zhǔn)的和復(fù)雜的,這是嵌入式系統(tǒng)的特殊性所在,比如說(shuō),有的應(yīng)用是網(wǎng)絡(luò)上的小型互連設(shè)備,

它需要多個(gè)以太網(wǎng)、USB主機(jī)、小型的NOR Flash文件系統(tǒng),而一個(gè)手持終端,它關(guān)心的是LCD的觸屏、紅外或

藍(lán)牙的接口、USB用戶(hù)端、快速的啟動(dòng),動(dòng)態(tài)的電源管理和NADA FLASH,這樣就需要在數(shù)十家Linux相關(guān)網(wǎng)站下

載各種補(bǔ)丁、應(yīng)用和工具,把它們和內(nèi)核進(jìn)行反復(fù)的編譯和調(diào)試,確信它們之間以及它們?cè)谟布u(píng)估板上是穩(wěn)

定可靠工作的,這個(gè)過(guò)程是在沒(méi)有任何技術(shù)支持下完成的。 
2)選擇一個(gè)商業(yè)的嵌入式Linux操作系統(tǒng)平臺(tái)。商業(yè)化的嵌入式Linux版本是針對(duì)嵌入式處理器所優(yōu)化設(shè)計(jì)的,已

經(jīng)支持了各種半導(dǎo)體廠(chǎng)家的評(píng)估板和主要的設(shè)備驅(qū)動(dòng),商業(yè)化的嵌入式Linux包含了文件系統(tǒng)、應(yīng)用、實(shí)時(shí)性擴(kuò)

展和技術(shù)支持培訓(xùn)服務(wù)。

   現(xiàn)今國(guó)外著名的商業(yè)化嵌入式Linux產(chǎn)品有:

MontaVista Linux, Bluecat Linux, Timesys Linux, Metrowork Linux(原Lineo), Vlinux(韓國(guó))和

Redhat Linux等,國(guó)內(nèi)也有紅旗、中軟等嵌入式Linux。


(4)嵌入式Windows操作系統(tǒng):
    微軟公司從1996年開(kāi)始以其Windows CE 1.0版本涉足小型嵌入式系統(tǒng)。Windows CE 1.0是一種從頭做起的代碼庫(kù),面向具有圖形界面的手持設(shè)備,在外觀(guān)和感覺(jué)上像Windows 95。同樣,臺(tái)式Windows的組件化版本于1999年面世,其一個(gè)工具組和大約250個(gè)組件均來(lái)自Windows NT。

就嵌入式操作系統(tǒng)而言,Windows 是一種很有吸引力的選擇,因?yàn)樗写蠹沂煜さ腁PI,可以找到熟練的程序員和廉價(jià)的部件,而且還可以利用臺(tái)式PC許多強(qiáng)大的功能。微軟公司最新嵌入式產(chǎn)品,即Windows XP 嵌入式操作系統(tǒng)和Windows CE.Net操作系統(tǒng),都為開(kāi)發(fā)人員帶來(lái)了新的特性和功能。
    微軟公司的Windows XP嵌入式操作系統(tǒng)與其臺(tái)式XP操作系統(tǒng)專(zhuān)業(yè)版一樣都基于相同的二進(jìn)制代碼,而且XP嵌入式操作系統(tǒng)是Windows NT 4.0嵌入式操作系統(tǒng)的后繼版本。嵌入式版本包括含有臺(tái)式版本所有的安全功能、多媒體功能、Web瀏覽功能、電源管理功能和設(shè)備支持功能,只是將臺(tái)式版本分解為10000多個(gè)組件,所以開(kāi)發(fā)人員可以選擇某些單元來(lái)構(gòu)建一個(gè)定制的占用內(nèi)存容量小的操作系統(tǒng)。Windows XP嵌入式操作系統(tǒng)及最新的服務(wù)包都有很多新的通信選購(gòu)件、文件系統(tǒng)選購(gòu)件和開(kāi)發(fā)工具選購(gòu)件,這些選購(gòu)件可使設(shè)計(jì)小組在以后的項(xiàng)目中選用這一操作系統(tǒng)。 
    Windows CE.NET建立在不同于臺(tái)式操作系統(tǒng)的體系結(jié)構(gòu)上。其設(shè)計(jì)目標(biāo)包括廣泛的無(wú)線(xiàn)連接性、實(shí)時(shí)功能和與設(shè)備無(wú)關(guān)的Web服務(wù)。與 Windows XP Embedded不同, Windows CE.NET支持 ARM、 MIPS、 SHx和 x86等系列處理器,從而使其適用于各種各樣嵌入式產(chǎn)品。Windows CE.NET包含了.NET Compact Framework,這是微軟公司的智能設(shè)備開(kāi)發(fā)平臺(tái),可在任何時(shí)候、任何地點(diǎn)和在任何設(shè)備上為消費(fèi)者提供Web服務(wù)。為支持NET Compact Framework,Windows CE.NET包括一套集成的端到端工具和幾種定制開(kāi)發(fā)語(yǔ)言,如Visual Basic.NET、Visual C++.NET和Visual C#.NET。



3、嵌入式系統(tǒng)高級(jí)編程語(yǔ)言

目前,在嵌入式系統(tǒng)開(kāi)發(fā)過(guò)程中使用的語(yǔ)言種類(lèi)很多,但僅有少數(shù)幾種語(yǔ)言得到了比較廣泛的應(yīng)用,主要為Ada、C/C++、Modula-2等幾種。
    Ada語(yǔ)言是20世紀(jì)70年代美國(guó)國(guó)防部開(kāi)發(fā)并投入使用的功能強(qiáng)大的通用系統(tǒng)開(kāi)發(fā)語(yǔ)言,最初為Ada83。它支持模塊化、獨(dú)立編譯、協(xié)處理等功能,其可靠性、可維護(hù)性、可讀性都是相當(dāng)好的。后來(lái),為了更好地支持OOP(Object-Oriented Programming),對(duì)其進(jìn)行了改進(jìn),形成了目前廣泛使用的Ada95。使用Ada語(yǔ)言可以大大改善系統(tǒng)的清晰性、可靠性、可維護(hù)性等性能指標(biāo)。它是美國(guó)國(guó)防部指定的唯一一種可用于軍用系統(tǒng)開(kāi)發(fā)的語(yǔ)言。
    C語(yǔ)言是由Dennis Richie于1972年在A(yíng)T & Bell實(shí)驗(yàn)室研究成功并投入使用的系統(tǒng)編程語(yǔ)言,其設(shè)計(jì)目標(biāo)是使C既具有匯編語(yǔ)言的效率,又具有高級(jí)語(yǔ)言的易編程性,其最具代表性的應(yīng)用是UNIX操作系統(tǒng)。從20世紀(jì)80年代中期C語(yǔ)言涉足實(shí)時(shí)系統(tǒng)后,受到了普遍歡迎。目前是使用最廣泛的嵌入式系統(tǒng)編程語(yǔ)言。C++是由Bjarne Stroustrup于1995年在Bell實(shí)驗(yàn)室研制成功并投入使用的。C++在支持現(xiàn)代軟件工程、OOP、結(jié)構(gòu)化等方面對(duì)C進(jìn)行了卓有成效的改進(jìn),但在程序代碼容量、執(zhí)行速度、程序復(fù)雜程度等方面比C語(yǔ)言程序性能差一些。
    Modula-2是由Nicklans Wirth在70年代后期根據(jù)Pascal和Modula開(kāi)發(fā)的系統(tǒng)設(shè)計(jì)語(yǔ)言,其主要目標(biāo)是在模塊化、系統(tǒng)編程、協(xié)同處理等方面對(duì)Pascal 進(jìn)行改進(jìn)。Modula-2具有很強(qiáng)的類(lèi)型檢查能力和豐富的低級(jí)功能支持。因此,可用它設(shè)計(jì)一個(gè)完整的實(shí)時(shí)程序而不用匯編語(yǔ)言的支持。Modula-3是1988年由DEC (Digital Equipment Company)和ORC(Olivetti Research Center)根據(jù)Modula-2開(kāi)發(fā)研制并投入使用的系統(tǒng)開(kāi)發(fā)語(yǔ)言。目標(biāo)是設(shè)計(jì)一個(gè)功能強(qiáng)大但結(jié)構(gòu)簡(jiǎn)單的通用編程語(yǔ)言,它在協(xié)同處理、OOP、自動(dòng)垃圾收集以及對(duì)C語(yǔ)言和UNIX的支持等方面對(duì) Modula-2進(jìn)行了改進(jìn)。 



4、結(jié)束語(yǔ):

信息時(shí)代、數(shù)字時(shí)代使得嵌入式產(chǎn)品獲得了巨大的發(fā)展機(jī)遇,也為嵌入式市場(chǎng)展現(xiàn)了美好的前景,同時(shí)也對(duì)嵌入式系統(tǒng)的開(kāi)發(fā)者提出了新的挑戰(zhàn)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀(guān)點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉