|
內(nèi)容:
1、引言
2、bootloader的概念
3、關(guān)于bootloader的過(guò)程
4、關(guān)于串 口的調(diào)試
在專(zhuān)用的嵌入式板子運(yùn)行 GNU/Linux 系統(tǒng)已經(jīng)變得越來(lái)越流行。一個(gè)嵌入式 Linux 系統(tǒng)從軟件的角度看通常可以分為四個(gè)層次:
1. 引導(dǎo)加載程序。包括固化在固件(firmware)中的 boot 代碼(可選),和 Boot Loader 兩大部分。
2. Linux 內(nèi)核。特定于嵌入式板子的定制內(nèi)核以及內(nèi)核的啟動(dòng)參數(shù)。
3. 文件系統(tǒng)。包括根文件系統(tǒng)和建立于 Flash 內(nèi)存設(shè)備之上文件系統(tǒng)。通常用 ram disk 來(lái)作為 root fs。
4. 用戶(hù)應(yīng)用程序。特定于用戶(hù)的應(yīng)用程序。有時(shí)在用戶(hù)應(yīng)用程序和內(nèi)核層之間可能還會(huì)包括一個(gè)嵌入式圖形用戶(hù)界面。常用的嵌入式 GUI 有:MicroWindows 和 MiniGUI 懂。
引導(dǎo)加載程序是系統(tǒng)加電后運(yùn)行的第一段軟件代碼。回憶一下 PC 的體系結(jié)構(gòu)我們可以知道,PC 機(jī)中的引導(dǎo)加載程序由 BIOS(其本質(zhì)就是一段固件程序)和位于硬盤(pán) MBR 中的 OS Boot Loader(比如,LILO 和 GRUB 等)一起組成。BIOS 在完成硬件檢測(cè)和資源分配后,將硬盤(pán) MBR 中的 Boot Loader 讀到系統(tǒng)的 RAM 中,然后將控制權(quán)交給 OS Boot Loader。Boot Loader 的主要運(yùn)行任務(wù)就是將內(nèi)核映象從硬盤(pán)上讀到 RAM 中,然后跳轉(zhuǎn)到內(nèi)核的入口點(diǎn)去運(yùn)行,也即開(kāi)始啟動(dòng)操作系統(tǒng)。
而在嵌入式系統(tǒng)中,通常并沒(méi)有像 BIOS 那樣的固件程序(注,有的嵌入式 CPU 也會(huì)內(nèi)嵌一段短小的啟動(dòng)程序),因此整個(gè)系統(tǒng)的加載啟動(dòng)任務(wù)就完全由 Boot Loader 來(lái)完成。比如在一個(gè)基于 ARM7TDMI core 的嵌入式系統(tǒng)中,系統(tǒng)在上電或復(fù)位時(shí)通常都從地址 0x00000000 處開(kāi)始執(zhí)行,而在這個(gè)地址處安排的通常就是系統(tǒng)的 Boot Loader 程序。
本文將從 Boot Loader 的概念、Boot Loader 的主要任務(wù)、Boot Loader 的框架結(jié)構(gòu)以及 Boot Loader 的安裝等四個(gè)方面來(lái)討論嵌入式系統(tǒng)的 Boot Loader。
下載:
嵌入式bootloader詳解.rar
(26.72 KB)
2014-3-15 20:51 上傳
點(diǎn)擊文件名下載附件
下載積分: 積分 -1
|
|