bootloader的啟動流程分析

2021-05-17 12:58:44 字數 562 閱讀 8287

bootloader的啟動流程有兩個階段:stage1和stage2。

一、stage1完成的基本工作

1、基本硬體初始化

包括遮蔽所有的中斷、設定cpu的速度和時鐘頻率、ram初始化、初始化led、關閉內部指令和資料cache燈。

2、為載入stage2準備ram空間,通常為了獲得更好的執行速度,通常把stage2載入到ram空間來執行,必須為載入bootloader的stage2準備好一段可用的ram空間範圍。

3、拷貝stage2到ram中,這裡要確定兩點:

stage2的可執行映像在固態儲存裝置的存放其起始位址和終止位址

ram空間的起始位址

4、設定堆疊指標sp,這是為了執行stage2的c語言**做準備。

二、stage2完成的基本工作

1、用組合語言跳轉至main入口函式

2、初始換本階段要使用到的硬體裝置,包括初始化串列埠、初始化計時器等。

3、檢測系統的記憶體對映

4、載入核心映像和根檔案系統映像

5、設定核心啟動引數。

bootloader啟動流程

bootloader a.svc模式 關中斷 mmu cache 看門狗等 b.基本初始化 時鐘 串列埠 flash 記憶體 c.自搬移到記憶體 d.設定棧,調到c部分 e.大部分硬體初始化 網絡卡 sd卡 usb f.搬移核心到記憶體 g.執行核心 kernel a.自解壓核心 b.執行核心彙編部...

Bootloader 之U boot啟動流程

一 u boot的儲存位置 u boot 一般是放在硬體 本地 電路板 的flash內,也有可能放在sd卡上,但是肯定不會放在記憶體或網路上。二 u boot的意義 u boot是嵌入式linux作業系統中執行的第乙個程式 可將u boot和核心看做是兩個不同的程式 其終極目的是引導載入核心進而使l...

ARM9 Bootloader的啟動流程

bootloader啟動大多數都分為兩個階段.第乙個階段主要包含依賴於cpu的體系結構硬體初始化的 通常都用組合語言來實現。這個階段的任務有 1 基本的硬體裝置初始化 遮蔽所有的中斷 關閉處理器內部指令 資料cache等 2 為第二階段準備ram空間。3 如果是從某個固態儲存煤質中,則複製bootl...