(4)支持DOC部份
對於WinCE作業系統而言,豐富的多媒體功能是其一大特點。但是隨之而來的問題是,如果選擇了圖形界面和中文支持,系統很容易大大超出嵌入式系統上百KB的數量級。而DOC(DiskOnChip)則提供了一種相對廉價的大存儲容量的解決方案。
DOC本質上是一種加以軟體控制的NAND格式的Flash,通過TFFS這一軟體層提供對WinCE的支持。由於DOC不能像內存一樣被直接訪問,所以其加載WinCE的過程有些特殊,必須要在BootLoader中加入專門的代碼,才能使用DOC來存放WinCE映像文件。
4.BootLoader的開發經驗總結
(1)嵌入式系統中,Bootloader的意義與作用與PC上的BIOS有點類似,它對開發板上的主要部件如CPU、SDRAM、FLASH、串口等進行了初始化,也可以使用Bootloader下載文件到開發板和啟動系統等。因此,一個功能比較強大的Bootloader已經相當於一個微型的作業系統了。
(2)從CE的BootLoader開發流程可以看出,BootLoader在完成下載CE映像和加載映像的主要功能外,還具有一些調試硬體的功能。當然,這些功能不是必需的,隨不同的用戶有不同的定義,但這是在開發CE系統中不可跳過的一環。
(3)嵌入式系統應用開發不同於PC機,其開發過程同時涉及軟硬體以及上層應用開發綜合考慮;而PC機應用開發是建立在已經定製好的硬體和作業系統平臺上,開發者只需調用系統提供的接口和服務完成相應的功能。考慮到成本約束,嵌入式系統的硬體平臺通常是根據應用量身定製,通常所用的MPU、存儲器、外圍設備等有多種選擇餘地,使平臺的引導設計變得十分複雜。因此,從零實現的話會需要相當長的過程,通常的做法是利用微軟為每種類型CPU提供的標準開發板的BootLoader例程,從這些例程中尋找與硬體平臺最接近的作為標本程序,然後根據硬體平臺作相應的改動。
總而言之,BootLoader是開發WinCE系統第一步,也是關鍵的一步。只有得到一個穩定工作的Loader程序,才能夠進一步開發WinCE的BSP,才能得到整個嵌入式系統的成功。