如何將系統(tǒng)軟硬件環(huán)境帶到合適狀態(tài)解析方案
另增加3條輔助指令,一條完成SD卡的格式化,另一條完成對系統(tǒng)內(nèi)核的保存,最后一條完成對系統(tǒng)內(nèi)核的啟動加載。命令封裝如下:
CMD_TBL_SD_FORMAT{
formatSD,DoFormatSDCard,
formatSDformat SD card with FAT ,
formatSDformat SD card with FAT ,
formatSDformat SD card with FAT
}
CMD_TBL_SD_STORE{
SDstore, DoStoreToSDBlocks,
SDstore [addr] {kernel/rootfs}
Store kernel/rootfs fromSDRAMto SD card. ,
SDstore [addr] {kernel/rootfs}
Store kernel/rootfs fromSDRAM to SD card. ,
SDstore [addr] {kernel/rootfs}
Store kernel/rootfs fromSDRAM to SD card.
}
CMD_TBL_SD_LOAD{
SDload, DoLoadFromSDBlocks,
SDload [addr] {kernel/rootfs}
Load kernel/rootfs from SD card toSDRAM. ,
SDstore [addr] {kernel/rootfs}
Load kernel/rootfs from SD card toSDRAM. ,
SDstore [addr] {kernel/rootfs}
Load kernel/rootfs from SD card toSDRAM.
}
其中,CMD_TBL_SD_FORMAT的功能是完成對SD卡的格式化,CMD_TBL_SD_STORE的功能是把SDRAM區(qū)域中的內(nèi)核代碼備份到SD卡的固定存儲區(qū),CMD_TBL_SD_LOAD的功能是把SD卡的固定存儲區(qū)中的內(nèi)核代碼加載到指定的SDRAM區(qū)域中。
下面分析一下其基于FAT文件系統(tǒng)的具體讀取和備份方法。首先看一下FAT文件系統(tǒng)的基本結(jié)構(gòu)。FAT文件系統(tǒng)的整體結(jié)構(gòu)大體由4大部分組成: MBR區(qū)(主引導(dǎo)記錄區(qū))、DBR區(qū)(DOS引導(dǎo)記錄區(qū))、FAT區(qū)(文件分配表區(qū),F(xiàn)AT1為主文件分配表區(qū),F(xiàn)AT2為備份文件分配表區(qū))和DATA 區(qū)(數(shù)據(jù)區(qū),包含F(xiàn)DT區(qū)——文件目錄表區(qū))。FAT文件系統(tǒng)結(jié)構(gòu)如下:
評論