Windows Embedded Standard 7各項性能對比(一)
本文介紹了Windows Embedded Standard 2009和Windows Embedded Standard 7在組件化、工具和映像構(gòu)建流程等方面的部分不同。目的是使用戶深入了解這兩款嵌入式產(chǎn)品之間的差異,以及這兩款產(chǎn)品在創(chuàng)建和部署嵌入式設(shè)備映像時在功能、工具和用戶整體體驗方面的部分不同。
組件化對比
本文將比較Windows Embedded Standard 2009和Windows Embedded Standard 7在以下方面的不同:
•組件架構(gòu)
•功能集包
•驅(qū)動程序包
•語言包
•組件依賴關(guān)系
•宏組件與模板
•SMI(Settings Management Infrastructure,設(shè)置管理架構(gòu))的設(shè)置與配置設(shè)置
•嵌入式功能(EEFs)
•客戶化組件支持
•組件架構(gòu)
Windows Embedded Standard 2009和Windows Embedded Standard 7具有相似的組件化概念,即將注冊表信息、依賴關(guān)系和其他資源定義在一個統(tǒng)一的二進制文件集中,所有這些數(shù)據(jù)都作為一個集合安裝在運行的映像中。但是,兩款產(chǎn)品在組件實現(xiàn)和使用上是不同的。
對于Windows Embedded Standard 2009而言,其組件的實現(xiàn)是從頭開始的。因為Windows Embedded Standard 2009從Windows XP Pro繼承來的二進制文件并未進行組件化。因此,Windows Embedded Standard 2009的組件無法與包括Windows Embedded Standard 7在內(nèi)的新推出的操作系統(tǒng)兼容。此外,這些組件只是用來導(dǎo)入到用于開發(fā)的Windows Embedded Standard 2009的組件數(shù)據(jù)庫中,而無法導(dǎo)入到嵌入式設(shè)備中。要為這些設(shè)備提供服務(wù),需要OEM開發(fā)人員使用更新后的組件重新創(chuàng)建整個運行時的映像。
Windows Embedded Standard 7的組件繼承自Windows 7,這些組件都列在組件清單上。除了個別的是為了滿足某些嵌入式的特殊需求而沒有包括在Windows 7中,其他的都與Windows 7清單一樣。因此,Windows Embedded Standard 7與Windows 7的設(shè)計完全兼容。組件更新升級與Windows 7也相似,僅需創(chuàng)建一個嵌入式開發(fā)的專用更新包,用戶可將該更新包導(dǎo)入部署在OEM開發(fā)人員計算機上的Windows Embedded Standard 7分發(fā)共享目錄(distribution share)中,或直接安裝到嵌入式運行映像上。
Windows Embedded Standard 7與Windows Embedded Standard 2009在組件設(shè)計上的另一個不同之處體現(xiàn)在嵌入式核心(eCore)這一概念上。eCore包括一系列操作系統(tǒng)基本組件(內(nèi)核、網(wǎng)絡(luò)、安全、某些驅(qū)動程序等),這些基本組件用于引導(dǎo)有系統(tǒng)安全和網(wǎng)絡(luò)功能的嵌入式設(shè)備。eCore是嵌入式設(shè)備的最小映像,支持OEM開發(fā)人員在其上面添加其他功能集、驅(qū)動程序和語言包,本文將在下面對此進行討論。
功能集包
對于Windows Embedded Standard 2009,當用戶創(chuàng)建自己的設(shè)備映像時,需要在組件的層面上選擇功能集包。甚至某些重要功能(如,Windows Media Player、Windows Internet Explorer、Microsoft Remote Desktop Protocol等)都是作為組件實現(xiàn)的,這是因為這些功能是由大量二進制文件聚集而成。因此,組件和功能的區(qū)分不很明顯。此外,由于Windows Embedded Standard 2009有1萬多個組件,因此用戶如何從中選擇合適的組件創(chuàng)建自己的映像成為一種挑戰(zhàn)。
對于Windows Embedded Standard 7,創(chuàng)建功能集包的目的是聚合相關(guān)的組件(如,Windows Media Player、Windows Internet Explorer、Microsoft Remote Desktop Protocol等),OEM開發(fā)人員只需選擇他們所要部署的功能集即可。由于要將功能集包的數(shù)量保持在最低水平(約為150個),所以功能選擇流程更簡單,設(shè)計和創(chuàng)建設(shè)備映像也更容易。
驅(qū)動包
在Windows Embedded Standard 2009中,每個驅(qū)動程序都作為獨立組件實現(xiàn),共有約9000個獨立的驅(qū)動程序,對OEM開發(fā)人員而言,將這些驅(qū)動程序與相應(yīng)的硬件設(shè)備配在一起是一項重大的挑戰(zhàn)。
與功能集包類似,Windows Embedded Standard 7也提供包層面的驅(qū)動程序。但是,為了降低程序的大小,各驅(qū)動程序都是以獨立的包的形式提供,只有一個例外是USB 驅(qū)動程序,此外,我們還提供了一個可選的支持USB 啟動的驅(qū)動程序包。。實際上,這些驅(qū)動程序包與Windows Embedded Standard 2009中的各個驅(qū)動程序組件相似。Windows Embedded Standard 7放棄了Windows 7中部分陳舊的驅(qū)動程序,創(chuàng)建了大約400個獨立的驅(qū)動程序包。此外,嵌入式核心(eCore)中還包括了約100個驅(qū)動程序的列表,能夠滿足例如系統(tǒng)引導(dǎo)、網(wǎng)絡(luò)通信等基本需要。
總體而言,Windows Embedded Standard 2009和Windows Embedded Standard 7的驅(qū)動程序基本相似,但Windows Embedded Standard 7中的驅(qū)動程序數(shù)量明顯減少,而且eCore中還包含了部分基本的驅(qū)動程序。
語言包
Windows XP并不是由語言中性的組件組成,所以,它不支持將單個語言包安裝在一個語言中性的操作系統(tǒng)上。每個操作系統(tǒng)二進制文件必須對不同的語言進行本地化,以滿足不同國家和地區(qū)的需要。這種設(shè)計不僅使錯誤修復(fù)、測試和OS組件服務(wù)復(fù)雜化,而且對需要多種語言支持映像的終端設(shè)備而言,還大大增加了操作系統(tǒng)的大小。Windows Embedded Standard 繼承了Windows XP相同的語言設(shè)計,但是,它額外提供了非英語的語言資源包,從而使得用戶能夠選擇是否創(chuàng)建一種或多種語言的設(shè)備映像。盡管如此,這并未解決上述的錯誤修復(fù)和OS組件維護復(fù)雜、占用內(nèi)存太大等問題。
Windows Embedded Standard 7繼承了與Windows 7相同的支持語言中性的設(shè)計模型,可以將不同的語言包安裝在同一個語言中性的操作系統(tǒng)上。那些存在于Windows XP和Windows Embedded Standard 2009中的問題在這得到了改善。與Windows 7一樣,Windows Embedded Standard 7提供了多達36個完全本地化的語言包(LP),但實際安裝的LIP語言包(language-interface package)的數(shù)量取決于用戶的需求。此外,Windows Embedded Standard 7中的某種語言包只包含與功能和驅(qū)動程序包(及Embedded core)中的語言中性組件相對應(yīng)的某種語言資源文件,從而,與Windows 7相比,大大減小了包的大小。語言包更小,使得OEM開發(fā)人員可根據(jù)具體需求,更容易地在專業(yè)設(shè)備上部署各種語言包。