有關Windows Embedded Standard的13個謠傳
原創(chuàng)“我絕不會使用Windows Embedded Standard!”相當強硬的申明,對不對?那么,為什么我們不能用Windows Embedded Standard呢?
原因1:該操作系統(tǒng)系統(tǒng)太大。
原因2:不支持實時功能。
原因3:該操作系統(tǒng)不安全。
原因4:很難按我的需要來配置該操作系統(tǒng)。
原因5:這些工具太昂貴了。”
原因6:許可證費用太高。
原因7:“沒有任何支持。”
原因8:沒有任何驅(qū)動程序支持我的硬件
原因9:我不希望我的嵌入式設備看起來像Windows。
原因10:沒有任何培訓資料可以協(xié)助我的項目。
原因11:沒有任何合作伙伴可以提供硬件、驅(qū)動程序、引導程序或培訓。
原因12:很難找到從事我們項目的工程師。
原因13:很難使開發(fā)者從一個平臺遷移到另一個平臺
我想這上面已經(jīng)提到了很多,可能還遺漏一些。如果你還發(fā)現(xiàn)了其他一些關于在嵌入式設備中使用Windows Embedded Standard系統(tǒng)的缺點,請通知我。
如果以上列出的原因都是真實可靠的,我理所應當?shù)牟粫賹κ褂肳indows Embedded Standard感興趣。列表中給出了一些我們的客戶關于使用Windows Embedded Standard操作系統(tǒng)共同的看法,讓我們從頭到尾的以《流言終結(jié)者》(一個美國的科普電視欄目)的風格,來依次澄清這些看法。
1. 該操作系統(tǒng)系統(tǒng)太大。
首先這里要指出的是,Windows Embedded Standard是組件化的操作系統(tǒng),所以你要挑選適合你所構建的設備的操作系統(tǒng)組件。Windows Embedded Standard大概有12000個組件。(其中大約有9000個組件是設備驅(qū)動程序,其余組件才是操作系統(tǒng)自身的部分)。
Windows Embedded Standard的最小構建規(guī)模是5MB,但這僅僅是內(nèi)核部分。在這種規(guī)模下,你除了啟動和運行系統(tǒng)外(或許還能完成像在輸出設備上顯示“Hello World”這樣簡單操作),不能處理其他任何有用的事物。Windows Embedded Standard的平均規(guī)模是300MB,這當然遠小于在個人電腦上安裝的一個專業(yè)版的Windows XP系統(tǒng)(其規(guī)模大概在1.5GB左右)。當你在安裝Windows Embedded Standard系統(tǒng)時,可以挑選在你的平臺上所需要的硬件、軟件組件。比如,如果你不需要Windows Media Player、DCOM、RPC和IE,在安裝系統(tǒng)時你不安裝這些組件就可以了。
這種以“根據(jù)客戶需求”的原則來安裝嵌入式設備操作系統(tǒng)的方式,意味著你可以按你自己特定的應用場合來安裝所需的設備組件。而對于其他一些系統(tǒng)而言,常常是在安裝你的項目所需組件時,也自動的安裝很多系統(tǒng)所附帶的程序。在你的嵌入式設計中減少操作系統(tǒng)相應的組件,并不是為減少原系統(tǒng)的痕跡,而主要是為提高系統(tǒng)的安全性。
2. 不支持實時功能。
我不知道為什么我總是能聽到這種觀點。雖然Windows Embedded Standard的確不是一個實時的操作系統(tǒng),但是有很多針對該系統(tǒng)的第三方實時軟件,比如Real-Time Systems、Tenasys、Interval-Zero。
3. 該操作系統(tǒng)不安全。
Windows Embedded Standard 2009系統(tǒng)是在Windows XP SP3專業(yè)版的基礎上開發(fā)出來的,先了解一下SP3概述文檔或許對你會有幫助。這里首先要說的是Windows Embedded Standard是一個組件化的系統(tǒng),你可以選擇你所需要的組件安裝在你的系統(tǒng)中。如果你不需要諸如MSMQ、DCOM、RPC或其他一些網(wǎng)絡應用程序,可以不將它們安裝到你的系統(tǒng)中去。回頭看看你會發(fā)現(xiàn)一些攻擊桌面系統(tǒng)的病毒和蠕蟲,大多數(shù)是通過MSMQ、DCOM、RPC和其他一些開放的端口進入個人電腦中的。而使用Windows Embedded Standard 2009的客戶,你擁有SP3的系統(tǒng)升級權限,包括像防火墻這類程序(除80外的所有端口都是默認關閉的),還支持緩沖區(qū)溢出不執(zhí)行(No Execute)和檢測功能(這些都在Joe Morris專訪Windows XP Embedded開發(fā)團隊時做出過相應的解釋)。此外,第三方的反病毒保護措施也可被運用,比如像CA、趨勢科技等。
4. 很難按我的需要來配置該操作系統(tǒng)。
Windows Embedded Standard系統(tǒng)是一個組件化的操作系統(tǒng)。類似于Windows Embedded CE,有許多的起步模板來輔助你進行系統(tǒng)配置。這些模板可用于配置包括set-top boxes、基于Windows的客戶終端、互聯(lián)網(wǎng)應用等。你也可以完全從頭開始,按你的需要來挑選硬件和軟件組件。從安裝Windows Embedded Standard到運行這個新平臺,這一過程是很簡單的,從安裝工具開始到啟動這個客戶Windows Embedded Standard鏡像,你只需要花不到一個小時的時間。由于Windows Embedded Standard所支持的底層的硬件是x86并基于PC架構,你可以運行一個工具來分析你的硬件,并產(chǎn)生包含硬件列表的XML格式輸出文件,為開發(fā)提供參考。通過這個XML文件的說明,你能夠準確的掌握硬件的基本概況,從而可以相應的調(diào)整自己的項目目標。而在掌握了硬件概況的基礎之上,你只需要根據(jù)相應的模板或安裝單個軟件組件來配置你的操作系統(tǒng)。這些聽起來也很簡單,不是嗎?根據(jù)教程這一過程看上去是多么的簡單啊。以上述同樣的方式,你可以在虛擬的環(huán)境中安裝和運行Windows Embedded Standard鏡像,比如在虛擬機上。
5.“這些工具太昂貴了。”
好吧,這個解釋起來比較簡單。 Windows Embedded Standard評估工具可以免費從微軟官方網(wǎng)站下載獲得。再次鄭重強調(diào),這一工具是免費的!你現(xiàn)在就可以下載Windows Embedded入門套件。在過了操作系統(tǒng)和工具的評估試用期120天之后,你需要購買完整的產(chǎn)品。這篇文章發(fā)布的時候,Windows Embedded Standard產(chǎn)品的售價為995美元。請注意,如果你下載的是Windows Embedded CE的試用版,你也會得到完整產(chǎn)品及其包含的250萬行源代碼。
6.“許可證太貴了。”
什么時候是你該為嵌入式操作系統(tǒng)購買許可證呢?這很簡單:當你真正開始銷售產(chǎn)品給用戶的時候。你無需任何許可證即可使用評估版工具(或完整的產(chǎn)品)建立和發(fā)送操作系統(tǒng)鏡像測試版給客戶。
但操作系統(tǒng)許可證的費用是多少呢?Windows Embedded Standard許可證的費用是很便宜的,大約為每臺設備90美元。同樣,請注意在你銷售實際產(chǎn)品的時候才需要購買運行時(run-time licenses)許可證,因此開發(fā)成本是相當?shù)偷摹i_發(fā)工具可免費從Microsoft Embedded Web站點下載,并運行120天。之后,完整的產(chǎn)品售價為995美元。訪問 “如何購買Windows Embedded操作系統(tǒng)”的網(wǎng)頁可以獲得更多信息。
7. “沒有任何支持。”
有許多途徑可以得到對于Windows XP Embedded的支持(注意“免費”一詞再次被使用!),包括從免費支持到培訓課程,合作伙伴協(xié)助開發(fā),以及來自微軟開發(fā)人員的支持。其中免費支持包括由我們的合作伙伴和開發(fā)團隊維護的新聞組、在線聊天和教程。
8、“沒有驅(qū)動程序支持我的硬件”
Windows Embedded Standard擁有與Windows XP Professional臺式機版本相同的驅(qū)動程序,包括在Windows Embedded Standard中作為獨立組件的9000多個驅(qū)動程序。通過Windows Embedded Standard開發(fā)工具,你可以輕松地添加其他的驅(qū)動程序。在Windows 2000或Windows XP下三分之一的驅(qū)動程式可以通過輸入驅(qū)動的INF文件直接導入到windows Embedded Standard目錄下。隨著INF文件輸入和組件被檢查進入組件數(shù)據(jù)庫,你可以像使用任何在這個開發(fā)工具中的其他驅(qū)動程序那樣來使用這些新的驅(qū)動。
9. “我不希望我的嵌入式設備看起來像Windows”
每個嵌入式系統(tǒng)都有自己的用戶界面需求。在某些情況下,嵌入式系統(tǒng)可能沒有用戶界面,唯一的用戶界面可能是基于Web的。組建基于HTML / DHTML的用戶界面非常靈活,可以為你的遠程用戶界面可提供完全定制的外觀。在某些情況下,基于HTML的用戶界面也可以適用于headed設備,在這種情況下,你的設備用戶界面可以使用Internet Explorer應用程序,或?qū)E ActiveX控件嵌入到定制的應用程序中。
你可能想讓你的設備擁有一個像Windows桌面那樣的用戶界面,這對瘦客戶端設備和手持終端來說是有用的。Windows Embedded Standard有一個已經(jīng)成為可選組件的Windows資源管理器shell,這意味著你可以建立一個沒有用戶界面設備(headless),或建立一個可以直接起動到定制應用程序或shell的設備。這種有完整shell體驗集成的設備一個很好例子便攜式導航設備。該設備的最終用戶不需要任何Windows用戶界面,沒有訪問到桌面的接口(因為桌面不存在),沒有訪問到控制面板的接口(因為沒有控制面板),等等。你可以開發(fā)你自己的應用程序,使之成為設備其中的一個shell。Windows Embedded Standard工具包含了一定數(shù)量的shell,其中包括Windows資源管理器、命令shell和任務管理器shell。顯然,開發(fā)人員可以為設備選擇合適的用戶體驗。
10.“沒有任何培訓資料可以協(xié)助我的項目”
對于Windows Embedded Standard,培訓是個可行的辦法。Windows Embedded Standard培訓課程需要2天。訪問Windows Embedded伙伴的站點以找到離你距離最近的培訓中心。
11、 “沒有任何合作伙伴可以提供硬件、驅(qū)動程序、引導程序或培訓。”
我們的合作伙伴比你所想象的更多,其數(shù)目接近600家,分布在世界各地的50多個國家。在Windows Embedded合作伙伴網(wǎng)站上你可以找到產(chǎn)品、服務或硬件合作伙伴,以協(xié)助你現(xiàn)在的或以后的項目。
12. “很難找到從事我們項目的工程師”
.NET Micro Framework、Windows Embedded Standard、Windows桌面和Windows Server的開發(fā)有什么共同之處?程序員使用C#和某個公共語言運行庫(CLR)版本都對它們進行編程。Windows Embedded Standard(也包括桌面和server)對Win32、Microsoft基礎類(MFC)和活動模板庫(ATL)都能適用。因此,如果你的開發(fā)人員擁有在桌面上使用Win32、MFC或者ATL的Windows進行編程的經(jīng)驗,那么他們也可以為Windows Embedded Standard建立Windows應用程序。如果開發(fā)人員已經(jīng)擁有應用程序開發(fā)的經(jīng)驗,也可以在.NET Micro Framework和Windows Embedded Standard上熟練的編程。此外,全世界有超過600萬的開發(fā)者在Windows平臺下學習編寫代碼,有大量的資源可以幫助對你和你的項目。
更有趣的是,大量的.NET Framework擴展正在開發(fā),你需要只要訪問The Code Project 和 OpenNETCF.org就能了解有關消息。此外,工程師可以輕松的從Windows Embedded CE遷移到Windows Embedded Standard項目上來,因為他們已經(jīng)知道如何在該平臺上進行編程。
13.“很難使開發(fā)者從一個平臺遷移到另一個平臺”
這正如剛才的話題基本一樣。如果我們的工程師已經(jīng)知道如何在WIndows平臺上編程,那么他也會懂得如何在Windows Embedded Standard上編寫代碼。你還應該明白,Windows嵌入式平臺是基于WIndows XP3補丁包的,現(xiàn)有的桌面操作系統(tǒng)應用程序和驅(qū)動程序不需要做任何的修改就可以直接應用于Windows Embedded Standard上。WIndows Embedded Standard的底層硬件平臺是基于X86 PC構架,所以我們開發(fā)者不需要特別的去了解嵌入式平臺,就可以進行開發(fā)的工作。
【編輯推薦】

















