Windows CE.NET在S3C2410處理器上的移植
3.1 移植流程
從根本上說,Windows CE。NET的移植過程也就是改寫B(tài)SP的過程。BSP又稱板級支持包,它是一個包括啟動程序、OEM適配層程序(OAL)、標準開發(fā)板(SDB)和相關(guān)硬件設(shè)備的驅(qū)動程序的軟件包。BSP是基于Windows CE。NET平臺系統(tǒng)的主要部分。操作系統(tǒng)移植步驟為:
1)對操作系統(tǒng)進行裁減,配置各個組件并且修改相關(guān)的配置文件;
2)開發(fā)目標設(shè)備系統(tǒng)上的設(shè)備驅(qū)動程序,建立定制的CE操作系統(tǒng)映像文件;
3)將目標文件下載到目標設(shè)備上進行調(diào)試;
4)定制操作系統(tǒng)內(nèi)核后,導(dǎo)出平臺SDK,供在Embedded Visual C++中開發(fā)上層應(yīng)用軟件。
移植流程見圖3
開發(fā)工具Platform Builder自身就提供了多種目標板的BSP。如果用戶的目標板和Platform Builder提供的相同,那么只需要重新編譯生成相應(yīng)的系統(tǒng)鏡像下載到目標板即可。但是實際情況更多的可能是處理器相同,而板上的外圍設(shè)備接口不同,這時候只有修改Platform Builder中相同或相近的處理器的BSP來生成一個新的BSP,這樣就可以大大減少BSP的研發(fā)周期。
3.2 基于S3C2410板的BSP開發(fā)
BSP的開發(fā)主要包括Bootloader、OAL、本地驅(qū)動程序的開發(fā)以及一些文件的配置 。
1)Bootloader就是在操作系統(tǒng)內(nèi)核運行之前運行的一段小程序。通過這段小程序,可以初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準備好正確的環(huán)境。它存放于目標平臺的非易失性存儲介質(zhì)中,如ROM 或Flash。本文移植使用的是華恒公司提供的ppcboot。
2)OAL即設(shè)備商適配層中位于Windows CE內(nèi)核和目標硬件平臺之間的一個代碼層。開發(fā)OAL的目的是為了實現(xiàn)Windows CE。NET內(nèi)核和目標硬件之間的通信,包括處理中斷、定時器等。
評論