嵌入式系統(tǒng)綜述_第1頁
嵌入式系統(tǒng)綜述_第2頁
嵌入式系統(tǒng)綜述_第3頁
嵌入式系統(tǒng)綜述_第4頁
嵌入式系統(tǒng)綜述_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、摘要以嵌入式系統(tǒng)的日常應(yīng)用引入,從嵌入式系統(tǒng)的定義與組成入手,對嵌入式系統(tǒng)的發(fā)展近況進(jìn)行深入的介紹,介紹嵌入式軟件技術(shù)的主要發(fā)展方向,并簡要介紹了 µc/os-II系統(tǒng)的移植。一、 引言不論是日常生活中經(jīng)常使用的家庭自動化產(chǎn)品、家用電器、手提電話、自動柜員機(jī)(ATM),還是各行各業(yè)的辦公設(shè)備、現(xiàn)代化醫(yī)療設(shè)備、航空電子、計(jì)算機(jī)網(wǎng)絡(luò)設(shè)備、用于工業(yè)自動化和監(jiān)測的可編程邏輯控制器(PLCs),甚至是娛樂設(shè)備的固定游戲機(jī)和便攜式游戲機(jī)等都屬于嵌入式系統(tǒng)。嵌入式系統(tǒng)始于微型機(jī)時(shí)代的嵌入式應(yīng)用,通過將微型機(jī)嵌入到一個(gè)對象體系中,實(shí)現(xiàn)對象系統(tǒng)的智能化控制。隨著科技的不斷發(fā)展,在單片機(jī)時(shí)代,嵌入式系統(tǒng)

2、以器件形態(tài)迅速進(jìn)入到傳統(tǒng)電子技術(shù)領(lǐng)域中,以電子技術(shù)應(yīng)用工程師為主體,實(shí)現(xiàn)傳統(tǒng)電子系統(tǒng)的智能化。而后,隨著后PC時(shí)代的到來,網(wǎng)絡(luò)、通信技術(shù)得以發(fā)展;同時(shí),嵌入式系統(tǒng)軟、硬件技術(shù)有了很大的提升,形成了基于嵌入式系統(tǒng)軟、硬件平臺,以網(wǎng)絡(luò)、通信為主的非嵌入式底層應(yīng)用的計(jì)算機(jī)應(yīng)用模式。嵌入式系統(tǒng)通常應(yīng)用于消費(fèi)類、烹飪、工業(yè)、自動化、醫(yī)療、商業(yè)及軍事領(lǐng)域。在電信系統(tǒng)中,從網(wǎng)絡(luò)級的電話交換機(jī)到手機(jī)終端都部署了大量的嵌入式系統(tǒng);消費(fèi)級電子產(chǎn)品諸如PDA、MP3、移動電話、游戲機(jī)、打印機(jī)等都部署了嵌入式系統(tǒng)。二、 嵌入式系統(tǒng)的定義及組成嵌入式系統(tǒng)被定義為:以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟硬件可裁剪、適應(yīng)應(yīng)用

3、系統(tǒng),對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)區(qū)別于可以執(zhí)行多重任務(wù)的通用型計(jì)算機(jī),嵌入式系統(tǒng)是為某些特定任務(wù)而設(shè)計(jì)的。有些系統(tǒng)則必須滿足實(shí)時(shí)性要求,以確保安全性和可用性;另一些系統(tǒng)則對性能要求很低甚至不要求性能,以簡化硬件、降低成本。嵌入式系統(tǒng)主要由嵌入式微處理器、外圍硬件、嵌入式操作系統(tǒng)以及用戶的應(yīng)用程序等4個(gè)部分組它是集軟硬件于一體的可獨(dú)立工作的“器件”,其中備成外圍硬件設(shè)備和用戶應(yīng)用程序皆是基于不同的用戶需求而有相應(yīng)的不同的硬件及相關(guān)軟件。2.1 嵌入式微處理器嵌入式處理器大概可分為兩類。一類是普通微處理器:使用獨(dú)立的集成電路存儲器和外設(shè)。另一類是單片機(jī):具有片上外設(shè),

4、降低了功耗、尺寸和成本。嵌入式系統(tǒng)的軟件是為某種應(yīng)用定制的,而不是像個(gè)人計(jì)算機(jī)那樣的由終端用戶安裝的商品,因此可以使用各種不同的基本CPU架構(gòu):既有范紐曼型架構(gòu)也有不同程度的哈佛結(jié)構(gòu);既有RISC也有非精簡指令集處理器;字長從4位到64位甚至更高,當(dāng)然最典型的仍然是8/16位。多數(shù)架構(gòu)由幾家不同的公司生產(chǎn),使用了大量不同的變量和類型。嵌入式系統(tǒng)也會使用通用型微處理器,但比單片機(jī)需要更多外圍電路。2.2 嵌入式操作系統(tǒng)嵌入式操作系統(tǒng)(Embedded Operating System ,EOS),負(fù)責(zé)嵌入系統(tǒng)的全部軟、硬件資源的分配、任務(wù)調(diào)度,控制、協(xié)調(diào)并發(fā)活動。嵌入式操作系統(tǒng)通常包括與硬件相關(guān)

5、的底層驅(qū)動軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動接口、通信協(xié)議、圖形界面、標(biāo)準(zhǔn)化瀏覽器等。隨著科技的發(fā)展,無線網(wǎng)絡(luò)的覆蓋面積大大提高,移動類電子工具被廣泛應(yīng)用于生活、工作、科研等各個(gè)方面。手機(jī)無線上網(wǎng)、無線導(dǎo)航技術(shù)、無線地質(zhì)探測儀、手持式售票刷卡設(shè)備等在生活中無處不在。而這些應(yīng)用則主要涉及到嵌入式W eb瀏覽器、嵌入式數(shù)據(jù)庫、嵌入式GUI(Graphical User Interface,簡稱GUI,又稱圖形用戶接口)系統(tǒng)。2.2.1 嵌入式Web瀏覽器嵌入式Web瀏覽器是指嵌入式操作系統(tǒng)上使用的可供用戶瀏覽網(wǎng)頁的瀏覽器軟件。由于嵌入式系統(tǒng)有其固有的存儲容量小、處理器資源有限等特殊性,故其使用的Web瀏覽器

6、/服務(wù)器不是一般的計(jì)算機(jī)上所使用的瀏覽器,而是專門針對嵌入式系統(tǒng)的相應(yīng)的W eb瀏覽器。較為常用的嵌入式Web瀏覽器有:基于WinCE的內(nèi)嵌簡化版IE、基于Linux的Konqueror-embedded、基于WM的Access NetFront、通用平臺的Opera瀏覽器、En-Reach的e-Browser , Mozilla的Monimo,除此以外還有WebKit , Browsex , Amaya和Ghostzilla等一些開源的瀏覽器引擎和瀏覽器。不同的瀏覽器適應(yīng)于相應(yīng)的嵌入式操作系統(tǒng)平臺,具備不同的特性,在嵌入式系統(tǒng)多樣化的今天,嵌入式瀏覽器具有分散性、多樣性和變異性的特點(diǎn)。2.2

7、.2嵌入式數(shù)據(jù)庫與嵌入式移動數(shù)據(jù)庫嵌入式數(shù)據(jù)庫是指嵌入式系統(tǒng)中所使用的數(shù)據(jù)庫系統(tǒng)。由嵌入式系統(tǒng)的特性決定,嵌入式數(shù)據(jù)有著內(nèi)核小、性能高、可裁減、嵌入性、可移植性及功能齊備等特性。嵌入式數(shù)據(jù)庫可分為嵌入數(shù)據(jù)庫、小型的C/S結(jié)構(gòu)數(shù)據(jù)庫、移動數(shù)據(jù)庫等。嵌入數(shù)據(jù)庫大多僅僅基于嵌入式系統(tǒng)本機(jī)數(shù)據(jù)調(diào)用,不涉及到網(wǎng)絡(luò)方面;小型的C/S結(jié)構(gòu)數(shù)據(jù)庫是企業(yè)級數(shù)據(jù)庫的一個(gè)縮小版,縮小以后可以在一些實(shí)時(shí)性要求不高的設(shè)備內(nèi)運(yùn)行;嵌入式移動數(shù)據(jù)庫是一種在移動環(huán)境下支持?jǐn)?shù)據(jù)傳送的分布式數(shù)據(jù)庫,其數(shù)據(jù)傳送在物理上是分散的而在邏輯上是集中的。當(dāng)前主流的嵌入式數(shù)據(jù)庫有:Oracle公司的Berkeley DB,Sybase Ad

8、aptive Server Anywhere,Linter以及SQLite等,除此以外還有Apache Derby,H2,ESENT等嵌入式數(shù)據(jù)庫引擎。2.2.3 嵌入式GUI系統(tǒng)嵌入式GUI屬于嵌入式編程開發(fā),主要是為了更好地滿足用戶的需要而編寫的用于實(shí)現(xiàn)客戶與服務(wù)器端的交互操作界面?,F(xiàn)在主流的嵌入式GUI系統(tǒng)大多集中在源碼開放的Linux系統(tǒng)下,有Microwindows ,MiniGUI ,OpenGUI ,Qt/Embedded等。三、 常見的嵌入式操作系統(tǒng)3.1 windows CE Windows CE是微軟公司嵌入式、移動計(jì)算平臺的基礎(chǔ),它是一個(gè)開放的、可升級的32位嵌入式操作系

9、統(tǒng),是基十掌上型電腦類的電子設(shè)備操作系統(tǒng),它是精簡的Windows 95, Windows CE的圖形用戶界而相當(dāng)出色。Windows CE作業(yè)系統(tǒng)是Window:家族中最新的成員,專門設(shè)計(jì)給掌上型電腦(HPCs)所使用的電腦環(huán)境。這樣的作業(yè)系統(tǒng)可使完整的可攜式技術(shù)與現(xiàn)有的Windows桌而技術(shù)整合工作。Windows CE被設(shè)計(jì)成針對小型設(shè)備(它是典型的擁有有限內(nèi)存的無磁盤系統(tǒng))的通用操作系統(tǒng),Windows CE可以通過設(shè)計(jì)一層位十內(nèi)核和硬件之間代碼來用設(shè)定硬件平臺,這即是眾所周知的硬件抽象層(HAL)。不象其它的微軟Windows操作系統(tǒng),Windows CE并不是代表一個(gè)標(biāo)準(zhǔn)的相同的對

10、所有平臺適用的軟件。為了足夠靈活以達(dá)到適應(yīng)廣泛產(chǎn)品需求,Windows CE采用標(biāo)準(zhǔn)模式,這就意味著,它能夠由一系列軟件模式做出選擇,從而使產(chǎn)品定制。另外,一些可利用模式也可作為其組成部分,這意味著這些模式能夠通過從一套可利用的組份做出選擇,從而成為標(biāo)準(zhǔn)模式,通過選擇,能夠達(dá)到系統(tǒng)要求的最小模式,OEM能夠減少存儲腳木和操作系統(tǒng)的運(yùn)行。3.2 µc/os近年來,隨著微控制器性能的不斷提高,嵌入式應(yīng)用越來越廣泛。目前市場上的大型商用嵌入式實(shí)時(shí)系統(tǒng),如VERTEX,VXWORK, PSOS等等,己經(jīng)十分成熟,并為用戶提供了強(qiáng)有力的開發(fā)和調(diào)試工具。但商用嵌入式實(shí)時(shí)系統(tǒng)價(jià)格昂貴,而且都針對特

11、定的硬件平臺。對于國內(nèi)中小型系統(tǒng)的開發(fā),購買商用實(shí)時(shí)系統(tǒng)并不劃算。此時(shí),采用免費(fèi)軟件和開放代碼不失為一種選擇。目前源碼開放(C代碼)的嵌入式系統(tǒng)有µc/os的uCLinux。µc/os簡單易學(xué),提供了嵌入式系統(tǒng)的基木功能,其核心代碼短小精悍,如果針對硬件進(jìn)行優(yōu)化,還可以獲得更高的執(zhí)行效率。但是µc/os相對商用嵌入式系統(tǒng)來說還是過十簡單,而且存在開發(fā)調(diào)試?yán)щy的問題。uCLinux是免費(fèi)軟件運(yùn)動的產(chǎn)物,包含豐富的功能,包括文件系統(tǒng)、各種外調(diào)驅(qū)動程序、通訊模塊、TCP/工P, PPP, HTTP,甚至WEB服務(wù)器的代碼。在工NTERNET上流傳的uCLinux己經(jīng)被移

12、植到當(dāng)前幾乎所有的硬件平臺上,功能與PC機(jī)上運(yùn)行的Linux不相上下,其代碼也l一分復(fù)雜。完全移植沒有必要也一分困難,但uCLinux的代碼經(jīng)過世界范圍內(nèi)的優(yōu)化,穩(wěn)定可靠而且高效,所有模塊的代碼都可以從工NTERNET上獲得,可以進(jìn)行模塊移植。在應(yīng)用中,我們可以在ColdFire硬件平臺上運(yùn)行了I C/OS的核心,并實(shí)現(xiàn)uCLinux的文件系統(tǒng),使得在嵌入式應(yīng)用中可以進(jìn)行文件操作。同時(shí)針對I C/OS調(diào)試?yán)щy的問題。還移植了uCLinux的用戶Shell,使得用戶可以用命令行力一式進(jìn)行程序的調(diào)試和開發(fā)。3.3 AndroidAndroid(讀音:英:'ændrd,美:

13、0;ndrd),中文俗稱安卓,是一個(gè)基于Linux內(nèi)核的開放源代碼移動操作系統(tǒng),由Google成立的Open Handset Alliance(OHA,開放手持設(shè)備聯(lián)盟)持續(xù)領(lǐng)導(dǎo)與開發(fā),主要設(shè)計(jì)用于觸屏移動設(shè)備如智能手機(jī)和平板電腦。3.3.1 Linux內(nèi)核Linux內(nèi)核(英語:Linux kernel),是一種計(jì)算機(jī)操作系統(tǒng)內(nèi)核,以C語言和匯編語言寫成,匹配POSIX標(biāo)準(zhǔn),以GNU通用公共許可證發(fā)布。Linux內(nèi)核最早是由芬蘭黑客林納斯·托瓦茲為嘗試在自己的英特爾x86架構(gòu)計(jì)算機(jī)上提供自由免費(fèi)的類Unix系統(tǒng)而開發(fā)的。該計(jì)劃開始于1991年,林納斯·托瓦茲當(dāng)時(shí)在Usene

14、t新聞組comp.os.minix登載帖子,這份著名的帖子標(biāo)示著Linux內(nèi)核計(jì)劃的正式開始。從技術(shù)上說Linux只是一個(gè)內(nèi)核。“內(nèi)核”指的是一個(gè)提供硬件抽象層、磁盤及文件系統(tǒng)控制、多任務(wù)等功能的系統(tǒng)軟件。一個(gè)內(nèi)核并不是一套完整的操作系統(tǒng)。有一套基于Linux內(nèi)核的完整操作系統(tǒng)叫作Linux操作系統(tǒng),或是GNU/Linux(在該系統(tǒng)中包含了很多GNU計(jì)劃的系統(tǒng)組件)。Liunx具有很高的可移植性,從移動電話到超級電腦,甚至于有人成功的將Linux內(nèi)核在索尼出品的游戲機(jī)PS2及PS3和微軟出品的游戲機(jī)Xbox上使用。Linux也是IBM超級計(jì)算機(jī)Blue Gene的操作系統(tǒng)。直至2011年11月

15、,全球前五百大超級電腦(TOP500)有高達(dá)91.4%的比例采用Linux為它們的操作系統(tǒng)17。一些為手機(jī)開發(fā)的操作系統(tǒng),使用Linux內(nèi)核的修改后的版本,其中包括谷歌Android、Firefox OS、HP WebOS和諾基亞Maemo。3.3.2 Andorid系統(tǒng)的特點(diǎn)目前的Android操作系統(tǒng)具有以下幾個(gè)功能:(1)顯示布局:Android操作系統(tǒng)支持更大的分辨率,VGA,2D顯示,3D顯示都給予OpenGL ES 3.0標(biāo)準(zhǔn)規(guī)格(4.3版本開始支持OpenGL ES 3.0),并且支持傳統(tǒng)的智能手機(jī)。(2)數(shù)據(jù)存儲:Android操作系統(tǒng)內(nèi)置SQLite小型關(guān)聯(lián)式資料庫管理系統(tǒng)來

16、負(fù)責(zé)存儲數(shù)據(jù)。(3)網(wǎng)絡(luò):Android操作系統(tǒng)支持所有的網(wǎng)絡(luò)制式,包括GSM/EDGE、IDEN、CDMA、TD-SCDMA 、EV-DO、UMTS、Bluetooth、Wi-Fi、LTE、NFC和WiMAX。(4)信息:作為原設(shè)計(jì)給智能手機(jī)使用的操作系統(tǒng),Android操作系統(tǒng)原生支持短信和郵件,并且支持所有的云信息和服務(wù)器信息。(5)語言:Android操作系統(tǒng)支持多語言。(6)瀏覽器:Android操作系統(tǒng)中內(nèi)置的網(wǎng)頁瀏覽器基于WebKit核心,并且采用了Chrome V8引擎。在Android 4.0內(nèi)置的瀏覽器測試中,HTML5和Acid3故障處理中均獲得了滿分,并且于2.2版至4

17、.0版之前能原生支持Flash,4.0版本后去除對Flash的支持。(7)支持Java:雖然Android操作系統(tǒng)中的應(yīng)用程序大部分都是由Java編寫的,但是Android卻是以轉(zhuǎn)換為Dalvik executables的文件在Dalvik虛擬機(jī)上運(yùn)行的。由于Android中并不自帶Java虛擬機(jī),因此無法直接運(yùn)行Java程序。不過Android平臺上提供了多個(gè)Java虛擬機(jī)供用戶下載使用,安裝了Java虛擬機(jī)的Android系統(tǒng)可以運(yùn)行Java_ME的程序。5.0版(Lolipop)開始以Android Runtime(ART)替換Dalvik虛擬機(jī)。(8)媒體支持:Android操作系統(tǒng)本

18、身支持以下格式的音頻/視頻/圖片媒體:WebM、H.263, H.264(in 3GP or MP4 container)、MPEG-4 SP、AMR, AMR-WB(in 3GP container)、AAC, HE-AAC(in MP4 or 3GP container)、MP3、MIDI、Ogg Vorbis、FLAC、WAV、JPEG、PNG、GIF、BMP。如果用戶需要播放更多格式的媒體,可以安裝其他第三方應(yīng)用程序。(9)流媒體支持:Android操作系統(tǒng)支持RTP/RTSP(3GPP PSS, ISMA)的流媒體以及(HTML5 <video>)的流媒體,同時(shí)還支持Ad

19、obe的Flash,在安裝了RealPlayer之后,還支持蘋果公司的流媒體。(10)硬件支持:Android操作系統(tǒng)支持識別并且使用視頻/照片攝像頭,多點(diǎn)電容/電阻觸屏,GPS,加速計(jì),陀螺儀,氣壓計(jì),磁力儀(高斯計(jì)),鍵盤,鼠標(biāo),USB Disk,專用的游戲控制器,體感控制器,游戲手把,藍(lán)牙設(shè)備,無線設(shè)備,感應(yīng)和壓力感測器,溫度計(jì),加速2D位位塊傳輸(硬件方向,縮放,像素格式轉(zhuǎn)換)和3D圖形加速。(11)多點(diǎn)觸控:Android支持本地的多點(diǎn)觸控,在最初的HTC Hero智能手機(jī)上即有這個(gè)功能。該功能是內(nèi)核級別(為了避免對蘋果公司的觸屏技術(shù)造成侵權(quán))。(12)藍(lán)牙:Android支持A2D

20、P,AVRCP,發(fā)送文件(OPP),訪問電話簿(PBAP),語音撥號和方送智能手機(jī)之間的聯(lián)系。同時(shí)支持鍵盤,鼠標(biāo)和搖桿(HID)。(13)多任務(wù)處理:Android操作系統(tǒng)支持本地的多任務(wù)處理。(14)語音功能:除了支持普通的電話通話之外,Android操作系統(tǒng)從最初的版本開始就支持使用語音操作來使用Google進(jìn)行網(wǎng)頁搜索等功能。而從Android 2.2開始,語音功能還可以用來輸入文字、語音導(dǎo)航等功能。(15)無線共享功能:Android操作系統(tǒng)支持用戶使用本機(jī)充當(dāng)“無線路由器”,并且將本機(jī)的網(wǎng)絡(luò)共享給其他智能手機(jī),其他機(jī)器只需要通過WiFi查找到共享的無線熱點(diǎn),就可以上網(wǎng)。而在Andro

21、id 2.2之前的操作系統(tǒng)則需要通過第三方應(yīng)用或者其他定制版系統(tǒng)來實(shí)現(xiàn)這個(gè)功能。(16)截圖功能:從Android 4.0開始,Android操作系統(tǒng)便支持截圖功能,該功能允許用戶直接抓取智能手機(jī)屏幕上的任何畫面,用戶還可以通過編輯功能對截圖進(jìn)行處理,還可以通過藍(lán)牙/E-mail/微博/共享等方式發(fā)送給其他用戶或者上傳到網(wǎng)絡(luò)上,也可以拷貝到電腦中。四、 µc/os-II系統(tǒng)移植概述所謂移植就是使一個(gè)實(shí)時(shí)內(nèi)核能夠在其他微處理器或微控制器上運(yùn)行26為了提高可移植性,大部分的µc/os-II代碼是用C語言寫的,但仍需要匯編語言編寫一些與處理器相關(guān)的代碼,因?yàn)?#181;c/os-II在讀寫處理器寄存器時(shí)只能通過匯編語言來實(shí)現(xiàn)。µ

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論