微軟Windows Embedded首席架構師談嵌入式軟件(2)
*本文根據(jù)2008年3月采訪Mike Hall改寫而成。Mike Hall:Windows CE 7.0的首席架構師,長期從事Windows CE的技術傳播工作,在嵌入式開發(fā)者中有很高的威望,屬于偶像級人物。同時他也是英國的兼職警察,白天在微軟上班,晚上到街上巡邏。
他的BLOG:http://blogs.msdn.com/mikehall/
多核編程挑戰(zhàn)
在SMP(對稱多處理)方面,我們將與我們的合作伙伴一起來做。目前,Windows Embedded CE 6.0是單核設備進行服務的,我們希望將來能夠支持SMP。
在內核里面,SMP實際上是微軟所做的一部分工作;另外一部分工作,微軟希望客戶在開發(fā)應用程序的時候,能夠做得更加簡單,就是客戶所開發(fā)的應用程序能夠更加輕易地擴展,能夠在一個系統(tǒng)里面適應多核的要求,或者說能夠使用在不同的、通過網(wǎng)絡相互連接的系統(tǒng)里面。這就是我們說的分布式的嵌入式系統(tǒng)。在這里面,我們目前可以使用一些經常采用的編程模式,來適應一個系統(tǒng)里面硬件的開發(fā)?;蛘呖梢圆捎貌煌哪J絹磉m應不同的客戶設備和操作系統(tǒng)的要求。
其中一個比較好的例子,目前在微軟Windows CE和Windows XP Embedded上面使用的,一個是地方的形式,另外一個是豐富性的形式,這是微軟研究院所創(chuàng)造的兩個研究技術,一個是CCR,一個是DSS,他們應用在WinCE和Windows XP Embedded上。
Windows CE容量大小
Windows CE是一個嵌入式操作系統(tǒng),如果建設一個操作系統(tǒng),里面只有內核的話,他的映像大小是300KB左右,一般Windows CE大小在4M到10M之間。
Windows CE里面提供了700個操作系統(tǒng)功能組件,開發(fā)人員根據(jù)個人的喜好,挑選自己需要的,所以WinCE操作系統(tǒng)的大小取決于你要在這個系統(tǒng)里面實現(xiàn)多少組件。如果從此角度來看,可以把Windows CE操作系統(tǒng)看作兩層:第一層是硬件部分,是比較具體的,第二層是獨立于硬件之外的。所以在配置操作系統(tǒng)映像的時候,可以把眼光放在獨立于硬件的層次。這樣工作就比較簡單,你的目標只是建立一個根據(jù)不同的處理器,比如SH,MSI等來配置你的Windows CE操作系統(tǒng)。而你可以不考慮硬件方面的變化,只考慮操作系統(tǒng),而在具體測試和構成中,你可以先設定一個具體的方案作為參考,通過改變相關的硬件,最終對產品進行驗證,然后發(fā)貨。
CE運行時的環(huán)境
我們看到,在Windows Embedded CE 6.0里面,我們可以改變CE的操作系統(tǒng),這樣對開發(fā)人員來講,是可以更加容易使用第三方的CE進行使用,那么還可以把第三方的CE運行式作為這個系統(tǒng)里面默認的形式。比如有一個運行式,可以采取第三方具有安全技術的新形式,來替代微軟的CE運行式。而且所有的運行式可以通過JAVA的方式加入到操作系統(tǒng)里面。
對于嵌入式開發(fā)人員來講,CE和C++語言是非常重要的。絕大多數(shù)人員在開發(fā)相對低端的編碼時候,會選擇CE和C++語言。但是對于開發(fā)用戶界面和用戶體驗方面,開發(fā)人員一般來講會使用一些新的技術。比如.net技術。
評論