Windows CE和Windows XP Embedded比較
微軟公司推出了兩款嵌入式操作系統(tǒng)Windows CE和Windows XP Embedded。兩款操作系統(tǒng)都可以在嵌入式系統(tǒng)中使用。但是,該如何確定哪一款更適合您的設(shè)備呢?
本文引用地址:http://www.ex-cimer.com/article/201610/305700.htm乍一看,Windows CE和Windows XP Embedded似乎并無(wú)區(qū)別。兩個(gè)系統(tǒng)都屬于組件化操作系統(tǒng),均配備相似的程序接口(Win32、MFC、ATL以及對(duì).NET應(yīng)用的支持),采用相似操作系統(tǒng)技術(shù),均支持網(wǎng)絡(luò)、互聯(lián)網(wǎng)瀏覽器、媒體播放器等等。如果了解每款操作系統(tǒng)的設(shè)計(jì)目標(biāo),選擇時(shí)就會(huì)更容易。
Windows CE是一款體積小巧和組件化實(shí)時(shí)操作系統(tǒng),它可以在多處理器架構(gòu)上運(yùn)行。而另一方面,則可以將Windows XP Embedded視為集成了內(nèi)嵌功能的Windows XP Professional Service Pack 2的組件化版本?,F(xiàn)在我們來(lái)分析一下兩款操作系統(tǒng)的某些特性。
我們已經(jīng)知道Windows XP Embedded是Windows XP Professional Service Pack 2的組件化版本。此操作系統(tǒng)包含了近12,000個(gè)獨(dú)立組件,內(nèi)置約9,000個(gè)設(shè)備驅(qū)動(dòng)程序,采用了3,000項(xiàng)操作系統(tǒng)技術(shù)。你可以挑選在嵌入式操作系統(tǒng)映象中需要包含的驅(qū)動(dòng)程序、服務(wù)與應(yīng)用。如果您不需要媒體播放器、Notepad或IE,也就沒(méi)必要在你的操作系統(tǒng)映象中選擇相應(yīng)的功能。這種挑選單獨(dú)組件的能力可以縮小操作系統(tǒng)的尺寸,這自然也就降低了惡意代碼攻擊的風(fēng)險(xiǎn)。就Windows XP Embedded SP2而言,它具備Windows XP SP2中所有的安全更新,這其中包括被默認(rèn)關(guān)閉的所有端口(HTTP除外)。當(dāng)然,系統(tǒng)構(gòu)建者可以根據(jù)設(shè)備需要決定打開(kāi)哪個(gè)端口。基于XP Embedded結(jié)構(gòu)構(gòu)建的普通操作系統(tǒng)以40 MB為基數(shù)遞增,其大小取決于最終鏡像中包含哪種操作系統(tǒng)組件/技術(shù)。
在嵌入式系統(tǒng)中使用Windows XP Embedded的一個(gè)優(yōu)勢(shì)是,可以提高開(kāi)發(fā)速度。基于Windows XP Embedded的系統(tǒng)運(yùn)行于我們非常熟悉的x86處理器和PC 架構(gòu)的硬件之上。這意味著現(xiàn)有任何Windows 2000或Windows XP的設(shè)備驅(qū)動(dòng)程序或應(yīng)用無(wú)需修改就可以在Windows XP Embedded上運(yùn)行。這是因?yàn)閃indows XP Embedded操作系統(tǒng)擁有一套預(yù)制的兼容桌面的二進(jìn)制組件,它能確保應(yīng)用和驅(qū)動(dòng)程序之間的兼容性。
Windows XP Embedded設(shè)備典型的開(kāi)發(fā)過(guò)程是:首先使用名為T(mén)arget Analyzer的工具保存底層硬件的快照,生成一個(gè)XML格式文件,并以該文件定義目標(biāo)設(shè)備中的所有硬件組件。然后,將XML文件導(dǎo)入組件設(shè)計(jì)器(Component Designer)工具,保存為定制組件,然后利用該組件定義設(shè)備的硬件。另外,組件設(shè)計(jì)器也可導(dǎo)入.INF格式的文件,這樣可以輕松地在Windows 2000或Windows XP設(shè)備驅(qū)動(dòng)程序中生成組件。組件設(shè)計(jì)器還可用于創(chuàng)建定制元件,或?yàn)槎ㄖ频耐鈿せ驊?yīng)用程序定義元件。創(chuàng)建的元件可以定義文件、注冊(cè)設(shè)置以及操作系統(tǒng)對(duì)元件的依賴性。一旦將被定義元件插入到Windows XP Embedded組件數(shù)據(jù)庫(kù)中,則可以用于嵌入式設(shè)計(jì)。
開(kāi)發(fā)Windows XP Embedded操作系統(tǒng)映像的下一個(gè)步驟是使用目標(biāo)設(shè)計(jì)器(Target Designer)工具。此工具支持Windows XP操作系統(tǒng)的所有技術(shù)和驅(qū)動(dòng)程序,以及嵌入特性(下面我們就會(huì)介紹)。系統(tǒng)開(kāi)發(fā)人員只需選擇所需組件,并將這些組件添加到項(xiàng)目工作區(qū)即可??蛇x組件包括目標(biāo)分析器創(chuàng)建的硬件定義組件,可為許多設(shè)備定義起點(diǎn)的設(shè)計(jì)模板,包括Windows Based Terminal(瘦客戶機(jī))、銷售點(diǎn)(Point of Sale)設(shè)備,機(jī)頂盒等。您還可以拖動(dòng)目錄中的單個(gè)組件,將其添加到項(xiàng)目設(shè)計(jì)中。在構(gòu)建時(shí),目標(biāo)設(shè)計(jì)器將在項(xiàng)目工作區(qū)運(yùn)行依賴性分析程序,以確保最終操作系統(tǒng)映像中包括所需的操作系統(tǒng)功能。例如,開(kāi)發(fā)人員選擇.NET設(shè)計(jì)框架,添加其.NET應(yīng)用程序,然后構(gòu)建操作系統(tǒng)鏡像。在這一過(guò)程中,系統(tǒng)設(shè)計(jì)人員無(wú)需知道和了解.NET框架的依賴性,就可構(gòu)建操作系統(tǒng)映像。
我們已經(jīng)提到,Windows XP Embedded擁有某些嵌入的特定功能,包括從CD-ROM或閃存磁盤(pán)上啟動(dòng)和運(yùn)行Windows XP Embedded。在這兩種情況下,開(kāi)發(fā)人員都希望將底層媒介設(shè)置為只讀,因?yàn)殚W存僅支持有限的寫(xiě)入,而CD-ROM在該啟動(dòng)環(huán)境中也是只讀的。Windows XP Embedded配備的增強(qiáng)型寫(xiě)入過(guò)濾(Enhanced Write Filter)組件將截取操作系統(tǒng)和應(yīng)用寫(xiě)入指令,而并不會(huì)將啟動(dòng)介質(zhì)內(nèi)容寫(xiě)入內(nèi)置高速緩存。這意味著在關(guān)機(jī)狀態(tài)下,底層介質(zhì)不會(huì)產(chǎn)生錯(cuò)誤,設(shè)備總能保持最佳啟動(dòng)狀態(tài)。因?yàn)閃indows XP Embedded的增強(qiáng)型寫(xiě)入過(guò)濾組件允許多次使用休眠文件,所以您將擁有極佳的啟動(dòng)環(huán)境,在這種啟動(dòng)環(huán)境下,系統(tǒng)啟動(dòng)時(shí)間和消費(fèi)電子產(chǎn)品啟動(dòng)時(shí)間相仿。
那么,如何對(duì)Windows XP Embedded和Windows CE進(jìn)行比較呢?Windows CE體積小巧,是一種硬實(shí)時(shí)嵌入式操作系統(tǒng),它可以在多種處理器架構(gòu)(如x86、MIPS、ARM和SH4)上運(yùn)行。其內(nèi)核僅為200kb,當(dāng)然操作系統(tǒng)大小取決于設(shè)計(jì)中包含的組件。該操作系統(tǒng)配置一個(gè)典型的、支持802.11a/b/g的駐留網(wǎng)關(guān),它可以通過(guò)一個(gè)基于Web的接口進(jìn)行遠(yuǎn)程管理;一款容量不足4 MB的安全軟件;一個(gè)功能齊備的掌上瀏覽器(Web Pad)鏡像(包括Web瀏覽器、媒體播放器、辦公文件瀏覽器,它支持.NET Compact Framework;以及一個(gè)約18 MB的Windows Explorer Shell。
Windows CE和Windows XP Embedded存在諸多本質(zhì)區(qū)別。首先,Windows CE是一款全32位、Unicode操作系統(tǒng),它不支持MS-DOS或Windows 3.x應(yīng)用。此外,Windows CE的架構(gòu)也與臺(tái)式機(jī)不同。在臺(tái)式機(jī)中,您可以找到三款核心操作系統(tǒng)組件:Kernel32、GDI32和User32。而Windows CE則不存在這些組件,具有相同功能的組件包括Coredll (kernel32)和GWES,Graphics Windowing以及Event Subsystem(相當(dāng)于GDI32與User32的組合)。這意味著即使是簡(jiǎn)單的臺(tái)式機(jī)應(yīng)用也不能在Windows CE上運(yùn)行,最小的臺(tái)式機(jī)應(yīng)用也需重新編譯后才能在Windows CE設(shè)備上運(yùn)行,這不僅因?yàn)榧軜?gòu)不同,也因?yàn)閃indows CE設(shè)備更適合在非x86處理器上運(yùn)行。
您可能認(rèn)為Windows CE只能在手持設(shè)備、電池供電設(shè)備如Windows Mobile設(shè)備上運(yùn)行,而事實(shí)上這只是Windows CE最基本的應(yīng)用,Windows CE具有強(qiáng)大的電源管理能力, 在Windows Mobile設(shè)備上運(yùn)行當(dāng)然不成問(wèn)題。Windows CE可以運(yùn)行于工業(yè)控制系統(tǒng)、醫(yī)療監(jiān)控設(shè)備、機(jī)器人、銷售設(shè)備零售點(diǎn)以及其它很多嵌入式操作系統(tǒng)中。Windows CE是一款硬實(shí)時(shí)嵌入式操作系統(tǒng),它支持低于10微秒的中斷延遲,遠(yuǎn)遠(yuǎn)優(yōu)于其它實(shí)時(shí)嵌入式系統(tǒng)。
評(píng)論