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