如何將系統軟硬件環(huán)境帶到合適狀態(tài)解析方案
其各個(gè)區域基扇區地址(把MBR區的基扇區地址作為0)計算如下:
DBR區的基扇區地址=MBR基扇區地址+63
FAT表的基扇區地址=DBR的基扇區地址+保留扇區數
FDT區基扇區地址=每FAT表扇區數×FAT表個(gè)數+(FDT區的開(kāi)始簇號2)×每簇扇區數+FAT表基扇區地址。(簇是系統進(jìn)行文件管理的單位,FAT表中的每一項對應一個(gè)簇,文件的存取按簇進(jìn)行,一簇包含若干個(gè)扇區。)
從FAT文件系統的組織結構可以看出,從SD卡中讀取系統內核代碼數據到指定的RAM區比較容易,就是根據系統內核文件名在文件系統中進(jìn)行查找定位,隨后完成讀取。對于內核代碼的備份和加載,需要在深入分析FAT文件系統的組織結構的基礎上對SD卡格式化作一些處理。在格式化時(shí),通過(guò)設置MBR 區和DBR區的數據實(shí)現不對SD卡存儲區的最末8 MB區域(根據實(shí)際需要可增減)作格式化處理的目的,即把它置為RAW區。所以系統內核備份的實(shí)現,就是把系統內核代碼通過(guò)SD卡的寫(xiě)入指令填充到RAW 區。系統內核的加載是從RAW區直接讀取備份的內核代碼。
3 總結
本文所述的內核加載啟動(dòng)引導方式已經(jīng)過(guò)實(shí)踐驗證。它實(shí)現了目標板與宿主機間硬件線(xiàn)路連接的完全脫離,為系統調試者提供了便利,有效地提高了系統調試的效率;與此同時(shí),它還能方便地實(shí)現系統的在線(xiàn)更新??梢哉f(shuō)要進(jìn)行系統啟動(dòng)引導設計,此方法是一個(gè)不錯的選擇。最后說(shuō)明一點(diǎn),本文介紹的 BootLoader改進(jìn)方法是在LCP2294芯片開(kāi)發(fā)的LPC22EB06I實(shí)驗平臺上完成的。由于BootLoader與處理器的體系結構和具體嵌入式板級設備的配置密切相關(guān),若要在其他的處理器芯片或平臺上采用上述方法,還需對BootLoader中與處理器體系結構相關(guān)的代碼作適當的修改。這部分不是本文探討的主要內容,所以在此不再詳述,若有讀者還想詳細了解相關(guān)內容,請查閱相關(guān)論文或書(shū)籍。
評論