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