uboot啟動(dòng)內(nèi)核命令 uboot是怎樣從nand加載linux?
uboot是怎樣從nand加載linux?通常,在開發(fā)過程中,我們首先將uboot加載到nor中,然后使用nor中的uboot將uboot與Linux內(nèi)核和根文件系統(tǒng)一起下載到nandflash中。它
uboot是怎樣從nand加載linux?
通常,在開發(fā)過程中,我們首先將uboot加載到nor中,然后使用nor中的uboot將uboot與Linux內(nèi)核和根文件系統(tǒng)一起下載到nandflash中。它的最終位置應(yīng)該是nandflash。
關(guān)于nor和NAND的區(qū)別,nor中的代碼不需要加載到RAM(內(nèi)存)中就可以直接運(yùn)行,而nandflash中的代碼需要加載到RAM中才能運(yùn)行。Nor沒有RAM那么快,所以一般情況下代碼的最終版本應(yīng)該下載到NAND。當(dāng)系統(tǒng)啟動(dòng)時(shí),它會(huì)自動(dòng)將NAND中的第一個(gè)4K代碼復(fù)制到RAM中,并且必須保存您的4K代碼。必須完成硬件初始化并將其余代碼復(fù)制到RAM中。Ram的運(yùn)行速度比nor快,這就是代碼的最終版本應(yīng)該放在NAND中的原因。
UBOOT如何引導(dǎo)kernel?
1. U-boot首先初始化一些必要的設(shè)備,如串口、網(wǎng)卡、flash、顯示器等。
2. 從flash、SD卡和TFTP服務(wù)器獲取內(nèi)核映像文件。
3. 將內(nèi)核映像文件解壓縮到內(nèi)存中。
4. 驗(yàn)證內(nèi)核。
5. 設(shè)置配置參數(shù)并跳轉(zhuǎn)到內(nèi)核執(zhí)行。