發(fā)表時間:2023-08-28 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
BootLoader解鎖是在操作系統(tǒng)內(nèi)核運行之前運行?梢猿跏蓟布O(shè)備、建立內(nèi)存空間映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。在嵌入式系統(tǒng)中,通常并沒有像BIOS那樣的固件程序(注,有的嵌入式CPU也會內(nèi)嵌一段短小的啟動程序),因此整個系統(tǒng)的加載啟動任務(wù)就完全由BootLoader來完成。在一個基于ARM7TDMI core的嵌入式系統(tǒng)中,系統(tǒng)在上電或復(fù)位時通常都從地址0x00000000處開始執(zhí)行,而在這個地址處安排的通常就是系統(tǒng)的BootLoader程序。
Bootloader的操作模式
1.自啟動模式:在這種模式下,bootloader從目標(biāo)機上的某個固態(tài)存儲設(shè)備上將操作系統(tǒng)加載到RAM中運行,整個過程并沒有用戶的介入。
2.交互模式:在這種模式下,目標(biāo)機上的bootloader將通過串口或網(wǎng)絡(luò)等通行手段從開發(fā)主機(Host)上下載內(nèi)核映像等到RAM中?梢员籦ootloader寫到目標(biāo)機上的固態(tài)存儲媒質(zhì)中,或者直接進入系統(tǒng)的引導(dǎo)。也可以通過串口接收用戶的命令。
Bootloader的啟動過程
第一階段:
1.初始化基本硬件;
2.把bootloader自動搬運到內(nèi)存中;
3.設(shè)置堆棧指針并將bss段清零。為后續(xù)執(zhí)行代碼做準(zhǔn)備;
第二階段:
1.初始化本階段要用到的硬件;
2.讀取環(huán)境變量;
3.啟動:
(a)自啟動模式,從Flash或通過網(wǎng)絡(luò)加載內(nèi)核并執(zhí)行;
(b)下載模式,接收到用戶的命令后執(zhí)行;
騰訊視頻官方版 | 45.34MB
愛奇藝視頻官方正式版 | 35.10MB
暴風(fēng)影音最新版下載 | 50.3MB
QQ音樂官方正式版 | 24.2MB
酷狗音樂2022下載 | 37MB