Windows CE程序設(shè)計之歷史簡介
——
設(shè)備
首批為Windows CE設(shè)計的是手持式“管理器”設(shè)備,配有480*240或640*240的屏幕和Chiclet鍵盤(計算機(jī)常用的一種鍵盤,有一個很小的矩形鍵盤)。這些設(shè)備,稱為手持式PC,在1996年首次面世。在Fall Comdex 97大會上,Windows CE 2.0,一個進(jìn)行了顯著更新的操作系統(tǒng)版本發(fā)布了,和它配套的是類似的更新一些的硬件,具有640*240的橫向屏幕,一些是彩色的,還具有略大一些的鍵盤。
1998年1月,消費(fèi)電子展覽會上,微軟宣布了兩個平臺,掌上電腦(譯者注:Palm-size PC可以看作Pocket PC的前身,其中使用Windows CE 2.x的稱為Palm-size PC,使用Windows CE 3.x的稱為Pocket PC)和車載PC(譯者注:Auto PC是Windows CE的一種應(yīng)用模式,多用在一些車載電腦、工業(yè)自動控制等場合,可按客戶需要修改輸入輸出方式而不限定使用原有的程序。)。掌上電腦目標(biāo)直接瞄準(zhǔn)了由Palm 0s統(tǒng)治的基于筆式的管理器市場。掌上電腦具有縱向顯示的特點,并配有240*320的屏幕,使用輸入筆來作為輸入方式。但是很不幸,對Windows CE愛好者來說,對這種原始掌上電腦,公眾顯然缺乏熱情。
此后,出現(xiàn)了一種新的迷你膝上式Windows CE設(shè)備,配備了觸摸式輸入鍵盤和VGA/Super VGA屏幕。這種設(shè)備被稱為H/PC(專業(yè)版),電池可使用10小時,并配備了微軟Pocket Office軟件改進(jìn)版。這種設(shè)備中有許多具有內(nèi)置Modem,一些甚至配備了thenstandard 屏幕,移動軌跡墊或者IBM軌跡球設(shè)備。
2000年4月,微軟宣布了Pocket PC,它對老式掌上電腦(Palm-size PC)做了極大的增強(qiáng)。最初的Pocket PC使用預(yù)發(fā)布的具有更多功能的Windows CE 3.0。Pocket PC的用戶界面也有所不同,具有更加整潔的2緯外觀和修改過的主頁-Today桌面。然而,Pocket PC最重要的特性是極大的改進(jìn)了Windows CE的性能。微軟做了很多工作來調(diào)優(yōu)Windows CE的性能。這些改進(jìn)加上更快的CPU,可以讓系統(tǒng)像Pocket 管理器期望的那樣運(yùn)行的更快。在這種Pocket PC里,摩爾定律使得Windows CE設(shè)備可以跨越這條線:現(xiàn)在硬件已經(jīng)有能力提供Windows CE需要的運(yùn)算能力了。
手持式PC在2000年時升級到了Windows CE 3.0。雖然這些系統(tǒng)(現(xiàn)在稱為手持式PC2000)在消費(fèi)領(lǐng)域沒有成功,但在工業(yè)領(lǐng)域找到了市場。它憑借相對低的費(fèi)用,大屏幕和長時間電池能力滿足了這個機(jī)會市場。
2001年晚些時候,Pocket PC更新為Pocket PC 2002。這次發(fā)布使用了Windows CE3.0的最終發(fā)布版本,并做了一些用戶接口方面的改進(jìn)。同時也增加了Pocket PC Phone版本,在Pocket PC設(shè)備中集成了蜂窩電話支持功能。這些設(shè)備具有了Pocket PC的功能,也具有蜂窩電話的聯(lián)通功能,形成了新一代的幾乎可以始終連接的移動軟件。
微軟的另一組人發(fā)布了Smart Display(譯者注:一種具有觸摸屏的無線監(jiān)視器,可以通過802.11b無線網(wǎng)絡(luò)連接到個人計算機(jī),并使用Windows XP Professional操作系統(tǒng)的“Remote Desktop”(遠(yuǎn)程桌面)來訪問主機(jī))。它使用Windows CE.NET 4.1系統(tǒng),具有平板式設(shè)備形式,有無線網(wǎng)絡(luò)訪問能力,有一個底座可以連接到PC上。當(dāng)使用底座的時候,它可以做第2個顯示器。當(dāng)不用底座的時候,它可作為PC的移動顯示器。
2003年春季,Pocket PC團(tuán)隊發(fā)布了升級版的Pocket PC,稱為Pocket PC 2003。系統(tǒng)在用戶接口方面沒有很多變化,但由于是基于Windows CE.NET 4.2,所以在穩(wěn)定性和性能方面都有了巨大改進(jìn)。Pocket PC 2003還集成了藍(lán)牙支持功能,OEM廠商可以選擇是否包含該功能。
微軟還和OEM廠商合作生產(chǎn)基于Windows CE的蜂窩電話。這些電話中的少部分被稱為Smartphone(智能電話),在2002年末發(fā)布了,最初是基于Windows CE 3.0。2003年升級到了Windows CE4.2,并增加了一系列特征,包括 .NET runtime功能。
新設(shè)備一直不斷在發(fā)布,例如 Media to Go設(shè)備,就是使用硬盤來存儲的移動視頻播放器。Windows CE操作系統(tǒng)的強(qiáng)大功能,使應(yīng)用程序憑借運(yùn)行在這些設(shè)備上的簡單操作系統(tǒng) 超越了系統(tǒng)能力。
操作系統(tǒng)
雖然面向消費(fèi)者的產(chǎn)品可以不斷產(chǎn)生新聞熱點,但最重要的開發(fā)工作仍然在操作系統(tǒng)自身。Windows CE從1.0之日就開始不斷演化,當(dāng)它還是一個簡單的管理器操作系統(tǒng)時就被寄予厚望。從Windows CE 2.0開始一直持續(xù)到今日,微軟不斷發(fā)布Windows CE的嵌入式版本,使開發(fā)者可以用在他們自定義的硬件上。雖然像Pocket PC等消費(fèi)平臺占據(jù)了宣傳的主體,但對基本操作系統(tǒng)的改進(jìn)是使諸如Pocket PC和Smartphone之類的設(shè)備能夠運(yùn)做的基礎(chǔ)。
在Fall Comdex 1997大會上,Windows CE 2.0隨著手持式PC 2.0一起發(fā)布了。Windows CE 2.0增加了網(wǎng)絡(luò)支持,包括Windows 標(biāo)準(zhǔn)網(wǎng)絡(luò)功能,支持NDIS miniport驅(qū)動模式,以及通用NE2000網(wǎng)絡(luò)卡驅(qū)動支持。雖然增加的COM被限制在進(jìn)程內(nèi)服務(wù),但可以用來支持腳本編寫。引入了新的顯示驅(qū)動模式,可以支持像素深度,而不再是Windows CE 1.0中原始的每像素2位了。Windows CE 2.0是Windows CE操作系統(tǒng)中第一個與諸如H/PC等產(chǎn)品分離,獨(dú)立發(fā)布的版本。開發(fā)者可以購買Windows CE 嵌入式工具包(ETK),它可以讓開發(fā)者為特殊的硬件平臺定制Windows CE。然而,用過ETK后,開發(fā)者會發(fā)現(xiàn),這個產(chǎn)品的功能還沒有達(dá)到它所宣稱的目標(biāo)。
隨著掌上電腦(Palm-size PC)在1998年初發(fā)布后,Windows CE又在不斷改進(jìn)。雖然Windows CE 2.01沒有按ETK形式發(fā)布,但它在減少操作系統(tǒng)和應(yīng)用程序大小方面做的努力還是值得稱道的。在Windows CE 2.01中,C運(yùn)行時庫從每個EXE和DLL都要綁定的靜態(tài)鏈接庫中去掉了,放到了操作系統(tǒng)里。這極大的減小了操作系統(tǒng)和應(yīng)用程序的大小。
1998年8月,微軟發(fā)布了H/PC,配套的發(fā)布了操作系統(tǒng)的新版本-2.11版。Windows CE 2.11是從未正式發(fā)布的Windows CE 2.1的服務(wù)升級包。這一年年末,Windows CE 2.11作為Windows CE平臺的2.11版本,發(fā)布給了嵌入式開發(fā)者社區(qū)。該版本支持改進(jìn)的對象存儲,允許要存儲的文件大于4M。還增加了對控制臺程序的支持,同時增加了MS-DOS風(fēng)格的命令行解釋器CMD.exe的Windows CE支持。Windows CE2.11還增加了Fast IR,用于支持IrDA的4M紅外線標(biāo)準(zhǔn),同時增加了一些特殊功能來支持IP多點傳送。最初的安全概念被引入:設(shè)備可以檢查和拒絕裝載沒有被認(rèn)證的模塊。
Windows CE 2.12也是作為2.1-白樺(Windows CE 2.1的代號)的服務(wù)包發(fā)布的。這次發(fā)布中最大的亮點是一個增強(qiáng)的平臺Builder工具集,它具有一個圖形化的前端界面。用一個新的通知接口調(diào)整了系統(tǒng)操作,新的接口將不同的通知功能進(jìn)行了組合。通知的用戶接口暴露在平臺Builder中,允許嵌入式應(yīng)用開發(fā)者定制通知對話框。微軟基于PC的Internet瀏覽器 IE 4.0也被引入到Windows CE中,稱為Genie-通用IE控件。這個HTML瀏覽器控件完善了簡單小巧的Pocket Internet瀏覽器。微軟消息隊列(MMQ)也被加了進(jìn)去。Windows CE 2.11中的安全功能“運(yùn)行/不運(yùn)行(go/no go)”也增加了“運(yùn)行,但不信任(go,but don't trust)”的選項。這樣,不被信任的模塊可以運(yùn)行,但不能調(diào)用關(guān)鍵功能集,也不能修改注冊表的某些部分。
期待已久的Windows CE 3.0終于在2000年中發(fā)布了。這次發(fā)布是跟隨同年4月發(fā)布的Pocket PC的,它使用了Windows CE 3.0略早一些的內(nèi)部版本。Windows CE 3.0最大的亮點在它的內(nèi)核,內(nèi)核為更好的支持實時功能而做了優(yōu)化。增強(qiáng)后的內(nèi)核,支持256個線程優(yōu)先級(之前的版本是8個),可調(diào)整線程周期,可嵌套的中斷服務(wù)程序,并減少了內(nèi)核等待時間。
Windows CE 3.0改進(jìn)的地方不僅僅在內(nèi)核上。一個新的COM組件被加入進(jìn)來,用來完善2.0就有的進(jìn)程內(nèi)COM功能。新的組件支持完整的進(jìn)程外COM和DCOM功能。對象存儲區(qū)域也做了改進(jìn),可以支持256M RAM了。對象存儲區(qū)域里的文件大小限制也提高到了32M/文件。Platform Builder 3.0的附加的軟件包加入了更多的功能,增加了media player控件,提高了多媒體支持。用PPTP,ICS和遠(yuǎn)程桌面顯示功能改進(jìn)了網(wǎng)絡(luò)支持。還正式引入了DirectX API。
Windows CE接下來的一個版本,改變的不僅僅是新特性,產(chǎn)品的名字也改了。2001年初,Windows CE.NET 4.0發(fā)布了。這個版本里,改變了虛擬內(nèi)存的管理方式,將每個應(yīng)用程序的虛擬內(nèi)存空間擴(kuò)大了1倍。Windows CE.NET 4.0還增加了新的驅(qū)動裝載模式,服務(wù)(Services)支持,新的基于文件的注冊選項,藍(lán)牙功能,802.11以及1394支持。具有諷刺意味的是,Windows CE.NET 4.0雖然叫.NET,但卻不支持.NET 精簡框架。
2001年末,Windows CE 4.1跟隨Windows CE 4.0之后發(fā)布了,增加了IP v6支持,Winsock2支持,一組支持applets的新功能,以及一個叫Power Manager的例子。Windows CE 4.1支持.NET 精簡框架。.NET 運(yùn)行時庫作為一個快速修復(fù)包(QFE),在操作系統(tǒng)發(fā)布后提供的。
2003第2季度,Windows CE.NET 4.2發(fā)布了。這次升級,提供了很棒的、OEM廠商期待的新特性-在嵌入式系統(tǒng)上支持Pocket PC應(yīng)用程序。Pocket PC特有的API,比如菜單條、軟輸入法以及其它解釋器特性,被移植到基本操作系統(tǒng)里了。為支持名字空間擴(kuò)展,瀏覽器Shell被重寫。通過在某些CPU上直接支持硬件分頁表功能,內(nèi)核性能得到了改進(jìn)。
評論