嵌入式系統(tǒng)中boot的理解
1.首先boot和boot loader是一個(gè)東西嗎?是的,都是一個(gè)東西。
2.Boot中包含了CPU的初始化代碼,Memory與外圍接口的初始化代碼,隨后會(huì)回引系統(tǒng)(OS),最后將控制權(quán)交給OS,編譯完成后將二進(jìn)制文件燒入FLASH。如果板卡復(fù)位,CPU異常矢量或復(fù)位矢量指的地址就是FLASH地址,F(xiàn)lash中的Boot代碼初始化CPU、Memory、簡單的外設(shè),隨后把Flash中的OS移到內(nèi)存里,隨后OS就會(huì)引導(dǎo)起來。
3.boot其最大的作用就是系統(tǒng)初始化,分配內(nèi)存,將應(yīng)用代碼(可以帶OS,也可以不帶)從FLASH中導(dǎo)入內(nèi)存,最后將運(yùn)行指針指向這段代碼,把控制權(quán)交給應(yīng)用程序。
4.Bootloader是在操作系統(tǒng)運(yùn)行之前執(zhí)行的一小段程序,通過這一小段程序,我們可以初始化硬件設(shè)備、建立內(nèi)存空間的映射表,從而建立適當(dāng)?shù)南到y(tǒng)軟硬件環(huán)境,為最終調(diào)用操作系統(tǒng)內(nèi)核做好準(zhǔn)備。意思就是說如果我們要想讓一個(gè)操作系統(tǒng)在我們的板子上運(yùn)轉(zhuǎn)起來,我們就必須首先對我們的板子進(jìn)行一些基本配置和初始化,然后才可以將操作系統(tǒng)引導(dǎo)進(jìn)來運(yùn)行。
5.沒有操作系統(tǒng)的簡單嵌入式計(jì)算機(jī),系統(tǒng)上電后,通常直接進(jìn)入用戶應(yīng)用程序,有操作系統(tǒng)的計(jì)算機(jī)中,上電后首先運(yùn)行的是一個(gè)標(biāo)準(zhǔn)化的軟件—–引導(dǎo)程序(bootloader)
6.固化在ROM、FLASH中的軟件稱為固件。
7.嵌入式系統(tǒng)軟件的四個(gè)層次。A,引導(dǎo)加載程序—bootloader。B,操作系統(tǒng)內(nèi)核(任務(wù)管理,內(nèi)存管理,設(shè)備驅(qū)動(dòng))C,文件系統(tǒng),圖形界面,D,應(yīng)用軟件。
8.bootloader兩種操作模式:
1.啟動(dòng)加載模式,自動(dòng)加載并啟動(dòng)操作系統(tǒng),不需要用戶參與。
2,下載模式,用戶可通過系統(tǒng)控制臺(tái)命令行的方式向系統(tǒng)發(fā)出控制命令,用戶常在該模式下使用下載命令,通過串口、以太網(wǎng)等從開發(fā)機(jī)下載文件。
編輯:admin 最后修改時(shí)間:2018-05-22