linux中uboot作用,uboot的作用和启动方式

本文详细介绍了Bootloader的作用,特别是针对嵌入式系统中的Uboot。Uboot作为启动加载程序,负责启动操作系统内核,并能传递参数给Linux内核。文章还阐述了Uboot的启动流程,包括如何从iROM加载到SRAM,再到DDR的过程。此外,特别提到了S5PV210处理器的启动步骤,涉及BL0、BL1和BL2的逐步加载和执行,最终启动OS。
摘要由CSDN通过智能技术生成

声明:本文由个人学习过程中整理而成,转载请注明出处。

1、bootloader介绍

(1)对于计算机系统,从开机上电到操作系统的启动需要一个引导程序叫做bootloader(启动加载程序)。

通过bootloader建立了适当的系统软硬件环境,为最终调用操作系统内核做好准备。

(2)对于嵌入式系统的bootloader是基于特定的硬件平台实现的,无法通用。

bootloader不仅依赖CPU架构,而且还依赖板级设备的配置。

2、uboot主要的作用就是启动操作系统内核。

linux内核设计成可以被传参。

可以在uboot中准备好要传给linux内核的一些参数,然后放在内存中特定位置等待linux内核获取。

内核启动后会到特定位置去取uboot留给他的参数,然后内核解析这些参数用来指导linux内核的启动过程。

3、uboot的启动方式:uboot大小随意,假定为200KB。

启动过程:先开机上电后BL0(iROM)运行,BL0会加载外部启动设备中的uboot的前16KB(BL1)到SRAM中去运行,BL1运行时会初始化DDR,然后将整个uboot搬运到DDR中,然后用一句长跳转(从SRAM跳转到DDR)指令从SRAM中直接跳转到DDR中继续执行uboot直到uboot完全启动。

4、S5PV210的启动方式:内置SRAM(iRAM)的容量是96KB,内置的NorFlash(iROM)的容量是64KB。大致可以分三步。

第一步:CPU先读取运行iROM里面设定好的代码,这一段代码会做一些基本的初始化(比如关看门狗...),然后选择判断启动模式,在相对应的外部存储器中读取一部分代码(BL1,大小16KB)到iRAM。

第二步:运行、执行读取到iRAM中的BL1,负责将BL2(大小80KB)读取到iRAM中。

第三步:运行、执行读取到iRAM中的BL2,负责初始化DRAM,然后将OS读取到DRAM中启动OS。

参考资料:《uboot和系统移植---朱有鹏老师》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值