(嵌入式方向)
一.常用的bootloader
u-boot (支持大多數處理器平臺)
pccboot (支持powerpc的處理器平臺)
redboot (支持m68k,sh處理器平臺)
yamon (支持MIPS處理器平臺)
二.操作模式
bootloader 有兩種模式:啓動加載模式、下載模式。
1.啓動加載模式,
也稱爲"自主"(Autonomous)模式。此時bootloader從目標機
上的某個固態存儲設備上(如nandflash)將“linux鏡像文件”與“根文件系統鏡像文件”加載到 RAM 中運行,
整個過程並沒有用戶的介入。
這個過程中用的一般是nandflash上的bootloader
2.下載模式,
目標機將通過串口連接或網絡連接等通信手段從主機(Host)下載文件,
比如:下載內核映像和根文件系統映像等。從主機下載的文件通常首先被 Boot
Loader 保存到目標機的 RAM 中,然後再被 BootLoader 寫到目標機上的 FLASH 類固態存儲設備中。Boot
Loader 的這種模式通常在第一次安裝內核與根文件系統時被使用;此外,以後的系統更新也會使用 Boot
Loader 的這種工作模式。工作於這種模式下的 Boot Loader 通常都會向它的終端用戶提供一個簡單的命令行接口。
這個過程用的一般是norflash上的bootloader
3.U-Boot,同時支持這兩種工作模式,而且允許用戶在這兩種工作模式之間進行切換.
三.bootloader的典型結構框架
stage1通常包含以下幾個步驟(以執行的先後爲順序):
1。硬件設備初始化
2。爲stage2準備RAM空間。
3。拷貝stage2到RAM空間。
4。設置好堆棧。
5。跳轉到stage2的C入口。
stage2通常包含以下幾個步驟(以執行的先後爲順序):
1。初始化本階段需要用到的硬件。
2。檢測系統的內存映象(memery map)。
3。將kernel和根文件系統從flash上加載到RAM空間。
4。爲kernel設置啓動參數。
5。調用內核。