日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux uboot 源码分析,UBoot源码分析1.pdf

發布時間:2023/12/2 linux 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux uboot 源码分析,UBoot源码分析1.pdf 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

UBoot源碼分析1

? UBoot源碼解析(一)

主要內容

? 分析UBoot是如何引導Linux內核

? UBoot源碼的一階段解析

BootLoader概念

? Boot Loader 就是在操作系統內核運行之前運行

的一段小程序。通過這段小程序,我們可以初始

化硬件設備、建立內存空間的映射圖,從而將系

統的軟硬件環境帶到一個合適的狀態,以便為最

終調用操作系統內核準備好正確的環境

? 通常,Boot Loader 是嚴重地依賴于硬件而實現

的,特別是在嵌入式世界。因此,在嵌入式世界

里建立一個通用的Boot Loader 幾乎是不可能的。

盡管如此,我們仍然可以對Boot Loader 歸納出

一些通用的概念來,以指導用戶特定的Boot

Loader 設計與實現。

UBoot來源

? U-Boot 是 Das U-Boot 的簡稱,其含義是 Universal Boot

Loader GPL

,是遵循 條款的開放源碼項目。最早德國

DENX 軟件工程中心的 Wolfgang Denk 基于 8xxROM 和

FADSROM 的源碼創建了 PPCBoot 工程項目,此后不斷

添加處理器的支持。而后,Sysgo Gmbh 把 PPCBoot 移

植到 ARM 平臺上,創建了 ARMBoot 工程項目。最終,

以 PPCBoot 工程和 ARMBoot 工程為基礎,創建了 U-

Boot 工程。

? 而今,U-Boot 作為一個主流、通用的 BootLoader,成功

地被移植到包括 PowerPC、ARM、X86 、MIPS、NIOS、

XScale 等主流體系結構上的百種開發板,成為功能最多、

BootLoader

靈活性最強,并且開發最積極的開源 。目前。

U-Boot 仍然由 DENX 的 Wolfgang Denk 維護

UBoot存儲空間分布

? UBoot OS

是用來引導 系統啟動,那么它是如何引

OS

導 啟動的呢?

啟動參數

內核 根文件系統

bootloader

bootloader

bboooottllooaaddeerr

UBoot和內核的交互

? UBoot如何調用Linux內核?

– UBoot通過命令把Linux內核鏡像文件從Flash中讀取到內存的某一

, PC UBoot Linux

位置然后設置 寄存器執向該位置 調用 內核的

前提條件是?

– R0 =0

– R1= linux/arch/arm/mach-type

適當的機器碼機器碼的位置存放在

文件中

– R2 =啟動參數標記列表在內存中的位置

– CPU必須設置為SVC模式并關閉中斷

– MMU必須關閉

? UBoot如何給內核傳遞參數?

– UBoot和內核交互是單向的,兩個程序不能同時運行,那么要實

現參數傳遞只能通過把參數存

總結

以上是生活随笔為你收集整理的linux uboot 源码分析,UBoot源码分析1.pdf的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。