嵌入式系統(tǒng)引導程序_第1頁
嵌入式系統(tǒng)引導程序_第2頁
嵌入式系統(tǒng)引導程序_第3頁
嵌入式系統(tǒng)引導程序_第4頁
嵌入式系統(tǒng)引導程序_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第,6,章,嵌入式系統(tǒng)引導,引導程序與固件,?,?,計算機是在程序控制下自動運行的電子設備,系統(tǒng)上電或復位后,微處理器會從特定的地址讀,取第一條指令,沒有操作系統(tǒng)的簡單嵌入式計算機,系統(tǒng)上電后,,通常直接進入用戶應用程序,有操作系統(tǒng)的計算機中,上電后首先運行的是一,個標準化的軟件,引導程序,(,Bootloader,),?,?,?,固化在,ROM/flash,中的軟件,稱為,固件,(Firmware),PC,機的引導程序,BIOS,?,?,BIOS(Basic Input Output System),固化到計算機主板上的,ROM,芯片中的一組程序,BIOS,的主要內容,?,上電自測試程序,。

2、,PC,機啟動時,首先進入,ROM BIOS,,,接著執(zhí)行加電自檢,POST,(,Power-on self test),?,?,系統(tǒng)參數(shù)設置,:,用于設置,CMOS RAM,中的各項參數(shù),中斷服務程序,:,BIOS,中段服務程序是軟件與硬件之間,的一個編程接口,,PC,軟件通過調用這些服務程序實現(xiàn)對,硬件模塊的控制,?,加載操作系統(tǒng),:,在機器啟動時,系統(tǒng),ROM BIOS,首先,讀取磁盤引導記錄進內存,然后由引導記錄讀取磁盤操作,系統(tǒng)重要文件進內存,從而啟動系統(tǒng),BIOS,的啟動流程,上電,執(zhí)行復位向量指令,跳,轉到,BIOS,程序,硬件初始化,POST,測試正常?,是,查找并加載,操作系

3、統(tǒng)引導程序,否,發(fā)出報警信號,等待用戶干預,引導程序繼續(xù)加載,并啟動操作系統(tǒng),嵌入式系統(tǒng)軟件的四個層次,?,?,?,?,引導加載程序,Bootloader,操作系統(tǒng)內核,(,任務管理、內存管理、設備驅動,),文件系統(tǒng)、圖形用戶界面,應用軟件,用戶應用程序,圖形用戶界面(,GUI,),操作系統(tǒng)內核,Bootloader,文件系統(tǒng),A,R,M,7,開,發(fā),板,中,的,固,件,嵌入式系統(tǒng),Flash,典型空間分配,引導程序,引導,參數(shù),操作系統(tǒng)內核,文件系統(tǒng),嵌入式系統(tǒng)常見引導程序,?,?,?,U-Boot,,,支持多種微處理器,如,x86,、,PowerPC,、,ARM,、,MIPS,等。,VIV

4、I,,,韓國,MIZI,公司開發(fā)的專門用于,ARM,處理器的一種,引導程序。,BLOB,,,支持多種,CPU,,包括,SA1100,,,SA1110,,,PXA255,,,PXA270,等,用戶可以根據(jù)目標板的特性進行,定制。,RedBoot,,,一個專門為嵌入式系統(tǒng)定制的引導程序,最,初由,Redhat,開發(fā)。,ARMboot,,,一個支持,ARM,和,StrongARM,處理器的引導,程序。,?,?,?,用戶自定義,Bootloader,嵌入式系統(tǒng)引導程序功能,?,?,?,?,?,硬件初始化,提供人機交互命令,支持目標機與開發(fā)機之間的通信,支持,Flash,燒寫,加載啟動嵌入式操作系統(tǒng),B

5、ootloader,的兩種操作模式,?,?,啟動加載模式,:,自動加載并啟動操作系統(tǒng),不需要用戶參與,下載模式,:,用戶可通過系統(tǒng)控制臺用命令行的方式向系統(tǒng)發(fā)出控制,命令。用戶常在該模式下使用下載命令,通過串口、以太網等從開發(fā),機下載文件,Bootloader,程序的兩個組成部分,?,Stage 1,:,存放與,CPU,體系結構相關的代碼,,其,代碼短小精悍,易升級,通常用匯編語言編寫,Stage 2,:,通常用,C,語言編寫,可以實現(xiàn)更復雜的,功能,具有更好的可讀性和可移植性,?,Bootloader,程序運行流程,Stage 1,Stage 2,基本硬件初始化,將,Stage 2,代碼復制

6、到,RAM,并執(zhí)行,否,串口是否有按鍵輸入?,將操作系統(tǒng)內核映像和文件系統(tǒng),映像復制到,RAM,是,進入命令行下載模式,啟動操作系統(tǒng)內核,Bootloader,的,Stage 1,?,?,?,硬件設備初始化:,屏蔽所有中斷,設置,CPU,速度和時,鐘頻率, RAM,初始化等,為加載,Bootloader,的,stage2,準備,RAM,空間,拷貝,Bootloader,的,stage2,到,RAM,空間中,?,?,設置好堆棧,為執(zhí)行,C,語言代碼作好準備,跳轉到,stage2,的,C,入口點,Stage 1,階段的物理內存布局,RAM,地址空間,Flash,地址空間,堆棧指針,Stage 1,

7、為,Stage 2,的代碼,準備的,RAM,空間,Stage 2,代碼起始地址,空閑區(qū),文件系統(tǒng)映像,空閑區(qū),操作系統(tǒng)內核映像,空閑區(qū),Bootloader Stage 2,的執(zhí)行代碼,Bootloader Stage 1,的執(zhí)行代碼,Bootloader,的,Stage 2,?,其它硬件設備的初始化,?,檢測系統(tǒng)內存映射,?,將操作系統(tǒng)內核映像及文件系統(tǒng)映像從,取到系統(tǒng),RAM,中,?,為內核設置啟動參數(shù),?,調用操作系統(tǒng)內核,讀,Flash,U-BOOT,?,?,?,?,U-Boot,是一種應用廣泛的嵌入式引導程序,由,fadsrom,、,8xxROM,及,PPCBoot,逐步發(fā)展演化而,

8、來,2002,年,11,月,,PPCBoot,發(fā)布了最后一個版本,2.0.0,版,并改名為,U-Boot 0.1.0,與,Linux,一樣,,U-Boot,遵循,GPL,,是一個開放源代,碼軟件,GPL: General Public License,通用公共許可協(xié)議,U-Boot,的特點,?,?,?,?,?,?,?,?,開放源代碼,支持多種嵌入式操作系統(tǒng),支持多種不同體系結構的處理器,具有較高的可靠性和穩(wěn)定性,提供豐富的用戶接口命令,支持串口、網絡文件下載,豐富的設備驅動程序,有完整的軟件文檔與良好的技術支持,U-Boot,的命令,?,?,命令類型:,信息命令、內存命令、,Flash,命令、

9、運行控,制命令、網絡命令、環(huán)境變量命令,命令功能:,環(huán)境參數(shù)設置、內存檢測、操作系統(tǒng)引導、,程序測試、,Flash,擦除與燒寫,U-BOOT,源文件分類,?,?,?,與處理器體系結構或開發(fā)板硬件直接相關的程序,目錄,與處理器體系結構無關的通用函數(shù)或者驅動程序,目錄,U-Boot,的獨立工具、二次開發(fā)例程及相關設計文,檔目錄,U-Boot,代碼根目錄,構,碼,結,代,系,關,體,相,與,數(shù),序,函,程,用,動,通,驅,與,檔,碼,文,代,、,程,具,例,工,cpu,處理器相關,源代碼,board,開發(fā)板相關,源代碼,lib_,xxx,體系結構,相關源代碼,drivers,通用設備,驅動程序,co

10、mmon,平臺獨立的,通用源代碼,include,頭文件,lib_generic,通用庫函數(shù),net,網絡相關,程序代碼,fs,文件系統(tǒng),相關代碼,post,上電自檢,程序代碼,disk,硬盤接口,相關程序,examples,獨立應用,程序例程,tools,相關工具,源代碼,doc,開發(fā)使用,文檔,處理器相關,各子目錄,Makefile,Makefile,文件,config.mk,體系結構配置文件,cpu.c,處理器相關代碼,interrupts.c,中斷處理代碼,serial.c,串口初始化代碼,start.s,全局啟動匯編代碼,開發(fā)板相關,子目錄,Makefile,Makefile,文件,

11、config.mk,體系結構配置文件,s3c44b0.c,開發(fā)板相關代碼,flash.c,Flash,操作相關代碼,memsetup.s,初始化,SDRAM,代碼,uboot.lds,對應連接文件,根目錄下,體系結構相關各子目錄,lib_avr32,AVR32,體系結構相關代碼,lib_arm,ARM,體系結構相關代碼,lib_i386,x86,體系結構相關代碼,lib_m68k,m68k,體系結構相關代碼,lib_mips,MIPS,體系結構相關代碼,lib_nios,NIOS,體系結構相關代碼,lib_ppc,PowerPC,體系結構相關代碼,lib_sparc,SPARC,體系結構相關代碼,U-Boot,源碼結構,U-BOOT,啟動過程,stage 1,設置映像文件的入口,s,tart.o,stage 2,進入,stage 2,執(zhí)行入口程序,start_armboot(),設置異常向量表,執(zhí)行復位中斷跳轉程序,調用,cpu_init_crit(),初始化,CPU,及中斷

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論