久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久


Bootloader的種類

分(fen)享到:
           

    Bootloader是在操(cao)作系統(tong)運(yun)行(xing)之前執行(xing)的(de)一(yi)段(duan)小(xiao)程序(xu)。通過這段(duan)小(xiao)程序(xu),可以初始(shi)化硬(ying)件設備(bei)、建(jian)立內存空(kong)間的(de)映像表,從而建(jian)立適當的(de)系統(tong)軟(ruan)、硬(ying)件環境,為終調用(yong)操(cao)作系統(tong)內核做好準備(bei)。

    對于(yu)(yu)嵌(qian)入(ru)(ru)式系統(tong),Bootloader是基(ji)于(yu)(yu)特(te)定硬件平臺(tai)來實現的(de)(de),因此(ci),幾乎不(bu)可(ke)能為所有的(de)(de)嵌(qian)入(ru)(ru)式系統(tong)都建立(li)一(yi)個通用的(de)(de)Bootloader,不(bu)同(tong)的(de)(de)處(chu)理(li)器(qi)架構有不(bu)同(tong)的(de)(de)Bootloader。Bootloader不(bu)但(dan)依賴于(yu)(yu)CPU的(de)(de)體系結構,而(er)且依賴于(yu)(yu)嵌(qian)入(ru)(ru)式系統(tong)板(ban)級設(she)備的(de)(de)配置。對于(yu)(yu)兩塊(kuai)不(bu)同(tong)的(de)(de)嵌(qian)入(ru)(ru)式主板(ban)而(er)言,即使(shi)它們使(shi)用同(tong)一(yi)種處(chu)理(li)器(qi),要(yao)想讓運行在一(yi)塊(kuai)主板(ban)上(shang)的(de)(de)Bootloader程(cheng)序(xu)也能運行在另一(yi)塊(kuai)主板(ban)上(shang),一(yi)般也都需要(yao)修改(gai)Bootloader的(de)(de)源程(cheng)序(xu)。

    反(fan)過來,大部(bu)分(fen)Bootloader仍然具(ju)有(you)很多共性(xing),某些Bootloader也能(neng)夠(gou)支持多種體系結(jie)構(gou)的(de)嵌(qian)入(ru)式系統。例如,U-Boot就(jiu)同時支持PowerPC、ARM、MIPS和X86等體系結(jie)構(gou),支持的(de)主板有(you)上百種。通常,它們都能(neng)夠(gou)自動從存(cun)儲介質上啟(qi)動,都能(neng)夠(gou)引導操作系統啟(qi)動,并(bing)且(qie)大部(bu)分(fen)都可以(yi)支持串(chuan)口和以(yi)太網接口。

    Bootloader的種類

    嵌入式(shi)(shi)系(xi)統世界(jie)已經有(you)各種各樣的(de)Bootloader,種類劃分也有(you)多種方式(shi)(shi)。除了(le)按照處理器體系(xi)結(jie)構不同劃分以外,還有(you)通(tong)過功能復(fu)雜(za)程度進行劃分的(de)。

    首先(xian)區分一下“Bootloader”和“Monitor”的(de)概念。嚴格(ge)來說,“Bootloader”只是(shi)引導(dao)設(she)備并且執(zhi)行主程(cheng)序的(de)固件(jian);而“Monitor”還提(ti)供了更多的(de)命令行接口,進行調試、讀寫內存、燒(shao)寫Flash、配置(zhi)環境變(bian)量等。“Monitor”在(zai)嵌入式系統(tong)開發過程(cheng)中提(ti)供很好的(de)調試功能,開發完成(cheng)以(yi)后(hou),就完全設(she)置(zhi)成(cheng)了一個“Bootloader”。所以(yi),習慣上把它們統(tong)稱為Bootloader。

    表1.4列出了Linux的開(kai)放(fang)源碼引(yin)導程(cheng)序(xu)及其支持的體系結(jie)構,表中給出了X86、ARM、PowerPC體系結(jie)構的常用引(yin)導程(cheng)序(xu),并且注明了每一(yi)種引(yin)導程(cheng)序(xu)是不是“Monitor”。

表(biao)1.4 Linux的開放(fang)源碼(ma)引導程序

Bootloader Monitor 描述 X86 ARM PowerPC
LILO Linux磁盤引導程序
GRUB GNU的LILO替代程序
Loadlin 從DOS引導Linux
ROLO 從ROM引導Linux而不需要BIOS

續表

Bootloader Monitor 描述 X86 ARM PowerPC
Etherboot 通過以太網卡啟動Linux系統的固件
LinuxBIOS 完全替代BIOS的Linux引導程序
BLOB LART等硬件平臺的引導程序
Vivi 主要為S3C2410等三星處理器引導Linux
U-Boot 通用引導程序
RedBoot 基于eCos的引導程序

    1.X86

    X86的工作(zuo)站和服務(wu)器上(shang)一般使(shi)用(yong)(yong)LILO和GRUB。LILO曾經是Linux發行(xing)(xing)版(ban)主流的Bootloader,不過(guo),現在幾乎所有(you)(you)的發行(xing)(xing)版(ban)都已經使(shi)用(yong)(yong)了GRUB,GRUB比(bi)LILO有(you)(you)更(geng)友(you)好的顯示接口,使(shi)用(yong)(yong)配置也更(geng)加靈(ling)活方便(bian)。

    在(zai)某(mou)些(xie)X86嵌(qian)入式單板機或(huo)者特殊設備上,會采用其他的Bootloader,如ROLO。這些(xie)Bootloader可(ke)以取代BIOS的功能(neng),能(neng)夠從Flash中(zhong)直(zhi)接引(yin)導Linux啟(qi)動。現在(zai)ROLO支(zhi)持的開發(fa)板已(yi)經(jing)并(bing)入U-Boot,所以U-Boot也可(ke)以支(zhi)持X86平臺(tai)。

    2.ARM

    ARM處理器的芯片提供商很多,所以每種芯片的開發板都有自己的Bootloader,使得ARM Bootloader也變得多種多樣。早有ARM720處理器開發板的固件,之后又有了armboot、StrongARM平臺的BLOB,還有S3C2410處理器開發板上的Vivi等。現在armboot已經并入了U-Boot,所以U-Boot也支持ARM/XSCALE平臺。U-Boot已經成為ARM平臺事實上的標準Bootloader。關于ARM的學習可以參考華清遠見《ARM開發培訓班》的課程大綱。

    3.PowerPC

    PowerPC平臺的處理器有(you)標準的Bootloader,就是(shi)PPCBOOT。PPCBOOT在(zai)合并(bing)armboot等之后(hou),創(chuang)建了U-Boot,成為各種體系結構開發板的通用引導(dao)程序。U-Boot仍然是(shi)PowerPC平臺的主要Bootloader。

    4.MIPS

    MIPS公司(si)開發的YAMON是(shi)標準的Bootloader,也有許多MIPS芯(xin)片提供商為自己的開發板寫了Bootloader。現在(zai),U-Boot也已經(jing)支持MIPS平(ping)臺。

    5.SH

    SH平臺的標準Bootloader是sh-boot,RedBoot在這(zhe)種平臺上(shang)也(ye)很(hen)好用。

    6.M68K

    M68K平臺沒有標準的Bootloader。RedBoot能(neng)夠支持M68K系(xi)(xi)列的系(xi)(xi)統。

    值得說明的是,RedBoot幾乎能夠支持所有的體系結構,包括MIPS、SH、M68K等。RedBoot是以eCos為基礎,采用GPL許可的開源軟件工程,現在由core eCos的開發人員維護,源碼下載網站是//www.ecoscentric.com/snapshots。RedBoot的文檔也相當完善,有詳細的使用手冊RedBoot User’s Guide。

    本文選自華清遠見嵌入式培訓教材《從實踐中學嵌入式Linux應用程序開發》

   熱點(dian)鏈接(jie):

   1、配置主機交叉開發環境
   2、搭建嵌入式交叉編譯環境
   3、構建嵌入式Linux交叉開發環境
   4、嵌入式培訓資料:搭建交叉編譯環境
   5、嵌入式交叉編譯過程詳解

更多新聞>>