嵌入式系統(tǒng)被定義為:以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
嵌入式操作系統(tǒng)是支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件,它是嵌入式系統(tǒng)極為重要的組成部分,通常包括與硬件相關(guān)的底層驅(qū)動(dòng)軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動(dòng)接口、通信協(xié)議、圖形界面、標(biāo)準(zhǔn)化瀏覽器等。與通用操作系統(tǒng)相比較,嵌入式操作系統(tǒng)在系統(tǒng)實(shí)時(shí)高效性、硬件的依賴性、軟件固態(tài)化以及應(yīng)用的專用性等方面具有較為突出的特點(diǎn)。嵌入式操作系統(tǒng)的出現(xiàn),大大提高了嵌入式系統(tǒng)開發(fā)的效率,在嵌入式操作系統(tǒng)之上開發(fā)嵌入系統(tǒng)將減少系統(tǒng)開發(fā)的工作量,增強(qiáng)嵌入式應(yīng)用軟件的可移植性,使嵌入式系統(tǒng)的開發(fā)方法更具科學(xué)性。近年來(lái),隨著電子技術(shù)的不斷進(jìn)步,嵌入式系統(tǒng)開發(fā)己成為熱點(diǎn)。
1、 Windows CE系統(tǒng)簡(jiǎn)介
Windows CE(以下簡(jiǎn)稱CE)是美國(guó)微軟公司專門為各種移動(dòng)和便攜電子設(shè)備、個(gè)人信息產(chǎn)品、消費(fèi)類電子產(chǎn)品、嵌入式應(yīng)用系統(tǒng)等非臺(tái)式或筆記本電腦領(lǐng)域設(shè)計(jì)的一種32位高性能操作系統(tǒng)。它具有一個(gè)簡(jiǎn)捷、高效的完全搶先式多任務(wù)操作核心,支持強(qiáng)大的通信和圖形顯示功能,能夠適應(yīng)廣泛的系統(tǒng)需求。CE操作系統(tǒng)的主要特點(diǎn)包括:
·兼容于微軟公司的視窗(Windows )PC電腦操作系統(tǒng),支持超過1000個(gè)常用的32位視窗應(yīng)用程序接口函數(shù)(Win32PI),支持高分辨率真彩色顯示,為應(yīng)用軟件提供了強(qiáng)大的運(yùn)行平臺(tái)。
·對(duì)硬件沒有任何特殊要求,允許系統(tǒng)設(shè)計(jì)者根據(jù)所開發(fā)產(chǎn)品的要求自由選擇硬件,同時(shí)提供最廣泛的硬件設(shè)備支持,包括通信接口、顯示和打印設(shè)備、輸入輸出設(shè)備、音頻設(shè)備、網(wǎng)絡(luò)和存儲(chǔ)設(shè)備等。
·支持多達(dá)數(shù)十種不同的32位微處理器芯片,包括intel和AMD公司的X86系列、摩托羅拉公司的powerPC、日立公司的SH3系列、東芝公司的MIPS系列以及PHILIPS、NEC公司的處理器產(chǎn)品等。
·采用模塊化結(jié)構(gòu),配置靈活,運(yùn)行時(shí)僅需很少的存儲(chǔ)器資源,且是目前唯一的可以從只讀存儲(chǔ)器中直接啟動(dòng)的32位操作系統(tǒng),能夠滿足具有嚴(yán)格硬件資源限制的系統(tǒng)要求。
由于其本身具有的出色性能,CE系統(tǒng)自1996年底面世之后,迅速在國(guó)外最新一代的工業(yè)和家用電子設(shè)備中得到了廣泛應(yīng)用。在美國(guó),僅基于CE系統(tǒng)的掌上電腦產(chǎn)品銷量就已超過了200萬(wàn)臺(tái)。本文將從系統(tǒng)結(jié)構(gòu)、硬件要求、設(shè)計(jì)開發(fā)和應(yīng)用領(lǐng)域等4個(gè)方面對(duì)CE系統(tǒng)作全面的介紹。
2 、Windows CE的系統(tǒng)結(jié)構(gòu)
CE操作系統(tǒng)由一些獨(dú)立的模塊組成,每一個(gè)模塊提供特定的系統(tǒng)功能,大的模塊又可以分成為幾個(gè)組件。這種組件式結(jié)構(gòu)能使CE系統(tǒng)變得非常緊湊,僅需使用很少的硬件資源就可運(yùn)行。最主要的系統(tǒng)模塊有四個(gè),它們是:
· 內(nèi)核
內(nèi)核是整個(gè)操作系統(tǒng)的核心部分,它負(fù)責(zé)最基本的操作系統(tǒng)功能,包括內(nèi)存管理,進(jìn)程管理和必需的文件管理。CE系統(tǒng)的內(nèi)核繼承了微軟公司視窗操作系統(tǒng)的大部分出色性能,能夠提供虛擬內(nèi)存管理、進(jìn)程調(diào)度、多任務(wù)管理、多線程管理以及中斷處理、異常處理等系統(tǒng)級(jí)服務(wù)。CE系統(tǒng)強(qiáng)大的搶先式多任務(wù)處理機(jī)制允許多達(dá)32個(gè)獨(dú)立的應(yīng)用程序(即所謂進(jìn)程)同時(shí)運(yùn)行,而多線程機(jī)制又支持每個(gè)進(jìn)程擁有自己下屬的多個(gè)運(yùn)行分支(即所謂線程)。這種多任務(wù)特性使CE系統(tǒng)非常適用于需要實(shí)時(shí)處理功能的嵌入式系統(tǒng),它使應(yīng)用程序能夠同時(shí)運(yùn)行幾個(gè)分支以處理不同的突發(fā)任務(wù)。
·持久性存儲(chǔ)模塊
持久性存儲(chǔ)模塊通過對(duì)CE系統(tǒng)中對(duì)象存儲(chǔ)(object store)功能的支持,為用戶和應(yīng)用程序提供數(shù)據(jù)存儲(chǔ)服務(wù)。對(duì)象存儲(chǔ)包含三種類型:文件系統(tǒng)、CE數(shù)據(jù)庫(kù)和系統(tǒng)注冊(cè)表。文件系統(tǒng)使用文件分配表來(lái)管理用戶安裝或創(chuàng)建的可執(zhí)行程序或數(shù)據(jù)文件,最多支持9個(gè)FAT分區(qū),并具有鏡像處理和安全功能,能預(yù)防在掉電或其他緊急情況下丟失數(shù)據(jù)。數(shù)據(jù)庫(kù)提供結(jié)構(gòu)化的數(shù)據(jù)存儲(chǔ)和訪問功能。系統(tǒng)注冊(cè)表用于存儲(chǔ)應(yīng)用程序需要快速訪問的系統(tǒng)配置數(shù)據(jù)以及其它信息。
·繪圖、窗口、事件子系統(tǒng)簡(jiǎn)稱GWES
GWES是用戶、應(yīng)用程序和操作系統(tǒng)之間的圖形化操作界面,負(fù)責(zé)提供系統(tǒng)與用戶之間的人機(jī)交互接口。GWES處理輸入的方式是將按鍵、手寫式輸入裝置的移動(dòng)、菜單或按鈕等控件的選擇等用戶輸入事件轉(zhuǎn)換為消息,然后再傳遞給應(yīng)用程序;處理輸出的方式是在顯示設(shè)備或打印機(jī)上顯示或打印窗口、圖形、文本等信息。GWES的核心是窗口,所有的應(yīng)用程序都需要通過窗口從操作系統(tǒng)中接收信息,而所有的輸入事件都要經(jīng)操作系統(tǒng)翻譯為消息后通過窗口傳遞給應(yīng)用程序。圖1為GWES的結(jié)構(gòu)。
·通信模塊
通信模塊為運(yùn)行CE系統(tǒng)的設(shè)備提供對(duì)多種通信硬件和數(shù)據(jù)傳輸協(xié)議的支持,包括串/并行數(shù)據(jù)端口、紅外數(shù)據(jù)端口、電話應(yīng)用程序接口以及網(wǎng)絡(luò)通信協(xié)議。
以上介紹的4個(gè)模塊提供了最主要的操作系統(tǒng)功能。除此之外,CE系統(tǒng)還有其它一些可選擇的模塊,包括:設(shè)備管理器和可安裝型設(shè)備驅(qū)動(dòng)模塊、多媒體聲音支持模塊、組件對(duì)象模型支持模塊、系統(tǒng)外殼等。對(duì)于CE系統(tǒng)而言,每一個(gè)模塊都提供一種完整的功能。在最終的應(yīng)用系統(tǒng)中,這些功能不一定都會(huì)被使用。CE系統(tǒng)不要求用戶包含所有的功能,如果某項(xiàng)功能不需要的話,整個(gè)模塊就可以被省略。
這種基于模塊和組件的結(jié)構(gòu)使CE系統(tǒng)具有了高度的可伸縮性,它允許用戶在設(shè)計(jì)自己的操作系統(tǒng)時(shí)自由選擇需要的模塊或組件。這樣,系統(tǒng)開發(fā)者就能夠方便地根據(jù)具體的硬件要求定制出合適的操作系統(tǒng),使其中僅包含設(shè)備運(yùn)行所必須的功能模塊,從而不必為支持其它不需要的硬件或功能付出額外代價(jià)。通過采用這種方式,CE系統(tǒng)在支持目前市場(chǎng)上絕大多數(shù)硬件設(shè)備及接口標(biāo)準(zhǔn)的同時(shí)又保證了最大的靈活性和系統(tǒng)效率,因此能夠適應(yīng)廣泛的用戶系統(tǒng)的要求。
3 、Windows CE系統(tǒng)的硬件要求
CE操作系統(tǒng)不需要任何特定的硬件結(jié)構(gòu),實(shí)際的硬件系統(tǒng)完全由用戶根據(jù)需要自由設(shè)計(jì)。從理論上說,一臺(tái)以CE系統(tǒng)為基礎(chǔ)的設(shè)備必須有一個(gè)處理器,有內(nèi)存及內(nèi)部時(shí)鐘以便處理進(jìn)度,除此之外再?zèng)]有其他的硬件要求。不過在實(shí)際應(yīng)用中,每個(gè)系統(tǒng)都需要有周邊設(shè)備才能完成其功能。如前所述,CE系統(tǒng)提供了廣泛的硬件兼容性,支持幾乎所有的外圍設(shè)備、其它設(shè)備和網(wǎng)絡(luò)設(shè)備。
幾種基于CF的操作系統(tǒng)配置與資源占用情況:
系 統(tǒng) 包含模塊 RAM/KByte ROM/KByte STACK/KByte
MinInput 內(nèi)核,最小文件系統(tǒng),基本輸入設(shè)備支持 27 352 2
MinGDI 內(nèi)核,文件系統(tǒng),基本圖形GWES,輸入設(shè)備支持 711 670 19
MinComm 內(nèi)核,文件系統(tǒng),通信模塊,輸入設(shè)備支持 119 1103 14
H/PCUI 內(nèi)核,文件系統(tǒng),注冊(cè)表,GWES,通信模 塊,輸入設(shè)備支持,圖形外殼 857 1806 35
可以看出,相對(duì)于它強(qiáng)大的功能,CE操作系統(tǒng)對(duì)于硬件資源的要求非常低。
4 、基于Windows CE的應(yīng)用系統(tǒng)開發(fā)與設(shè)計(jì)
設(shè)計(jì)一個(gè)運(yùn)行CE的嵌入式系統(tǒng)需要經(jīng)過以下步驟:
⑴ 明確設(shè)計(jì)目的,確認(rèn)系統(tǒng)功能,選擇合適的微處理器芯片和周邊設(shè)備;
⑵ 完成硬件平臺(tái)的設(shè)計(jì);
⑶ 選擇CE功能模塊,定制操作系統(tǒng),并改編部分代碼使之與硬件平臺(tái)相配合;
⑷ 編寫應(yīng)用軟件。
典型的基于CE的嵌入式系統(tǒng)結(jié)構(gòu)如圖2所示。其中,設(shè)備管理器提供對(duì)可安裝設(shè)備的支持,允許在系統(tǒng)中安裝諸如PC卡存儲(chǔ)器和調(diào)制解調(diào)器之類的設(shè)備以擴(kuò)充功能;附加技術(shù)模塊指由CE操作系統(tǒng)提供的一些可選擇的專用功能模塊,如JAVA語(yǔ)言(一種網(wǎng)絡(luò)編程語(yǔ)言)支持模塊、手寫筆輸入識(shí)別模塊等;外殼模塊為系統(tǒng)提供一個(gè)與PC電腦上的視窗操作系統(tǒng)類似的圖形化操作界面。
對(duì)于系統(tǒng)設(shè)計(jì)者而言,需要自行開發(fā)的是應(yīng)用程序和直接與硬件有關(guān)的部分,包括硬件系統(tǒng)本身、硬件抽象層和設(shè)備驅(qū)動(dòng)程序。其中,硬件抽象層是指建立在硬件設(shè)備與系統(tǒng)內(nèi)核之間的一層代碼,主要任務(wù)是為內(nèi)核管理具體硬件設(shè)備的時(shí)鐘、中斷和實(shí)施電源管理提供支持。設(shè)備驅(qū)動(dòng)程序負(fù)責(zé)支持操作系統(tǒng)對(duì)目標(biāo)硬件的訪問。硬件抽象層和驅(qū)動(dòng)程序都需要針對(duì)具體的硬件設(shè)備編寫。一般硬件設(shè)備制造廠商會(huì)為設(shè)備提供驅(qū)動(dòng)軟件支持,如果有專門為CE系統(tǒng)編寫的驅(qū)動(dòng)程序,只需將其加入到操作系統(tǒng)的相應(yīng)模塊中就可使用。如果沒有,則應(yīng)根據(jù)廠商提供的驅(qū)動(dòng)程序開發(fā)包編寫。通常這些開發(fā)包中已經(jīng)包含了完成各種硬件操作的標(biāo)準(zhǔn)代碼,開發(fā)者的工作只是將其與相應(yīng)的CE系統(tǒng)API函數(shù)對(duì)應(yīng)起來(lái)。在CE系統(tǒng)中,所有涉及硬件的操作都通過調(diào)用相應(yīng)的API接口函數(shù)來(lái)完成,而硬件抽象層和驅(qū)動(dòng)程序就是要為這些API函數(shù)提供支持,將其翻譯為直接對(duì)目標(biāo)硬件進(jìn)行的底層操作。通過這種方式,CE系統(tǒng)將應(yīng)用程序與具體的硬件設(shè)備進(jìn)行了隔離,應(yīng)用程序只需調(diào)用API函數(shù)就可以實(shí)現(xiàn)對(duì)硬件的訪問。這樣,程序員在開發(fā)應(yīng)用程序時(shí)就沒有必要編寫任何直接針對(duì)硬件的代碼,因此不必考慮具體的硬件特性,而應(yīng)用程序也具有了不依賴于具體硬件設(shè)備的獨(dú)立性。
微軟公司提供了專門的Windows CE平臺(tái)編輯器軟件來(lái)幫助開發(fā)者完成定制操作系統(tǒng)和編寫硬件抽象層的工作。該編輯器是一個(gè)可以在PC電腦上運(yùn)行的工具軟件包,其中包含完整的帶有集成開發(fā)工具的Windows CE操作系統(tǒng),并附帶了編程指南、應(yīng)用程序接口(API)參考等資料和設(shè)備驅(qū)動(dòng)程序工具箱。CE平臺(tái)編輯器中還帶有遠(yuǎn)程調(diào)試工具,只要硬件開發(fā)系統(tǒng)支持并留出調(diào)試端口,就可以將編輯好的操作系統(tǒng)從PC電腦中下載到硬件平臺(tái)進(jìn)行調(diào)試,并在PC電腦上觀察系統(tǒng)的運(yùn)行狀態(tài)和內(nèi)存資源使用情況等信息。
由于CE操作系統(tǒng)支持1000多個(gè)與Windows 系統(tǒng)兼容的API函數(shù),使在基于CE的嵌入式系統(tǒng)中運(yùn)行的程序可以擁有與PC電腦中的程序同樣復(fù)雜和強(qiáng)大的功能。此外,盡管編寫CE系統(tǒng)的應(yīng)用程序與編寫PC平臺(tái)的32位Windows 應(yīng)用程序有一些區(qū)別,但其中進(jìn)程、線程、視窗的概念以及API函數(shù)、資源、控件都與Windows 系統(tǒng)非常相似,因此任何具有Windows 編程經(jīng)驗(yàn)的程序員都能夠很容易地掌握CE編程。
5 、Windows CE系統(tǒng)的應(yīng)用領(lǐng)域
目前國(guó)外已經(jīng)有大量基于Windows CE系統(tǒng)的設(shè)備面市,所涉及的領(lǐng)域包括家用電器、娛樂設(shè)備、專用計(jì)算機(jī)系統(tǒng)、便攜電腦以及個(gè)人通信產(chǎn)品等。微軟公司于1999年3月在中國(guó)深圳提出了維納斯計(jì)劃,其核心內(nèi)容就是推廣基于Windows CE系統(tǒng)的信息家電產(chǎn)品。目前已經(jīng)有許多符合這一概念的產(chǎn)品面世,如美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的便攜式網(wǎng)絡(luò)終端Wwbpad,能夠隨時(shí)與互聯(lián)網(wǎng)連接,進(jìn)行網(wǎng)絡(luò)瀏覽和收發(fā)電子郵件。類似的產(chǎn)品還包括網(wǎng)絡(luò)機(jī)頂盒和網(wǎng)絡(luò)電話。在專用計(jì)算機(jī)系統(tǒng)方面,使用CE系統(tǒng)的有打包和郵件跟蹤設(shè)備、超市收銀機(jī)終端、數(shù)據(jù)采集設(shè)備、車載導(dǎo)航電子設(shè)備以及工業(yè)控制系統(tǒng)等。在便攜電腦市場(chǎng)方面,運(yùn)行CE系統(tǒng)的設(shè)備包括掌上電腦、個(gè)人商務(wù)通產(chǎn)品和車載移動(dòng)電腦系統(tǒng)。掌上電腦是最近幾年興起的新型便攜信息產(chǎn)品,一般都配備筆輸入裝置,具有文字處理、電子記事和網(wǎng)絡(luò)瀏覽功能,可以與桌面電腦進(jìn)行對(duì)接交換數(shù)據(jù),而重量不到傳統(tǒng)筆記本電腦的一半。在國(guó)外,流行的掌上電腦操作系統(tǒng)有palmos和Windows CE兩種,而國(guó)內(nèi)則主要是中文Windows CE。常見的惠普、聯(lián)想等公司的產(chǎn)品都使用了最新的中文CE2.11版本,其中還引入了漢王筆輸入識(shí)別技術(shù)和金山詞霸英漢雙向翻譯系統(tǒng)。在個(gè)人通信市場(chǎng)方面,已經(jīng)有大量?jī)?nèi)置CE系統(tǒng)、能夠進(jìn)行網(wǎng)絡(luò)訪問和收發(fā)電子郵件的移動(dòng)電話產(chǎn)品出現(xiàn)。
總結(jié)以上介紹可以得出結(jié)論,由于CE操作系統(tǒng)具有強(qiáng)大的功能、廣泛的兼容性、靈活的適用性、最小的硬件資源要求和完善的開發(fā)工具支持,因此是設(shè)計(jì)嵌入式系統(tǒng)的理想選擇。21世紀(jì)將是人類社會(huì)全面走向網(wǎng)絡(luò)化、信息化的時(shí)代,電子產(chǎn)品小型化、智能化、網(wǎng)絡(luò)化的趨勢(shì)已不可避免。面對(duì)這一浪潮,將先進(jìn)的操作系統(tǒng)性能和強(qiáng)大的通信能力高度集成在一起的CE系統(tǒng)無(wú)疑具有美好的應(yīng)用前景。
-
嵌入式
+關(guān)注
關(guān)注
5152文章
19675瀏覽量
317617 -
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7663瀏覽量
90815 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
7152瀏覽量
125596
發(fā)布評(píng)論請(qǐng)先 登錄
嵌入式操作系統(tǒng)Windows CE研究
Windows Embedded 操作系統(tǒng)
基于Windows CE.Net操作系統(tǒng)的故障診斷專家系統(tǒng)
如何去設(shè)計(jì)嵌入式Windows CE多媒體操作系統(tǒng)的硬件平臺(tái)?
嵌入式操作系統(tǒng)Windows CE的研究
Windows CE和桌面Windows 2000 XP設(shè)備
什么是Windows CE,LynxOS是什么操作系統(tǒng)
Windows CE.NET的定制和裁剪

Windows CENET操作系統(tǒng)的架構(gòu)
Windows CE NET的定制和裁剪
Windows CE操作系統(tǒng)體系結(jié)構(gòu)及功能介紹

Windows CE操作系統(tǒng)在工業(yè)控制領(lǐng)域的應(yīng)用
基于S3C2410處理器對(duì)Windows CE 5.0操作系統(tǒng)實(shí)現(xiàn)BSP移植

基于Windows CE操作系統(tǒng)實(shí)現(xiàn)OAL層的功能和結(jié)構(gòu)應(yīng)用設(shè)計(jì)

Windows CE.net操作系統(tǒng)的內(nèi)核定制

評(píng)論