Linux系統啟動流程分析

2021-09-08 04:35:46 字數 875 閱讀 4873

部落格:

github:

nor flash作為啟動rom的系統啟動過程

nor flash開頭處存放啟動**,程式從nor flash開始處啟動。

配置emi暫存器,設定好各儲存器的位址和訪問規則。

配置電源管理模組。各模組上電。

啟動**將位於nor flash中的正式執行**拷貝到記憶體中。以提高執行效率。

設定pc指標,指向nor flash中固定位址。

設定位址對映,用0位址對映到記憶體ram空間。

設定pc指標,指向ram中初始化**。開始執行**。

nand flash作為啟動rom的系統啟動流程

上電初始。dma預設設定將儲存在nand flash中第一頁的資料搬運到內部ram中,然後設定pc到內部ram開始處的位址。開始執行**。

在啟動**中設定中斷向量和硬體配置等。

將執行**搬運到外部sdram或ddr=ram,留出啟動**的位置。

將啟動**搬運到sdram或ddr-ram中首址。

設定remap。將0位址又一次對映到sdram或ddr-ram首位址。

設定pc指標,開始執行正式的執行**。

非壓縮核心:image

壓縮核心:zimage

核心初始化

裝置初始化

啟動核心

掛載檔案系統

啟動使用者空間程序

初始化log系統

解析/init.rc和/init.%hardware%.rc檔案,執行early-init,並執行解析出的init動作、early-boot動作、boot動作和execute property動作。

進行裝置初始化,屬性server初始化並開啟屬性服務。

進入無線迴圈以等待屬性設定或子程序退出事件。

Linux系統啟動流程

這是看linuxcast的筆記 linux系統啟動 使用grub引導 順序是 bios通電自檢,並找到512位元組的mbr 是grub引導的第一階段 把控制權交給mbr grub分兩個階段引導系統 第一階段mbr中的主引導引導程式加次引導載程式 第二階段次引導引導程式載入核心映像 核心映像建立進第乙...

Linux系統啟動流程

載入 bios 的硬體資訊與進行自我測試,並依據配置取得第乙個可啟動的裝置 讀取並執行第乙個啟動裝置內 mbr 的 boot loader 亦即是 grub,spfdisk 等程式 依據 boot loader 的配置載入 kernel kernel 會開始偵測硬體與載入驅動程式 在硬體驅動成功後,...

linux系統啟動流程

核心空間啟動主要流程 1 init main.c start kernel 2 init main.c rest init 3 init main.c kernel init 4 init main.c init post 核心至使用者空間啟動主要流程 openwrt使用者空間啟動主要流程 1 et...