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