声明:本文由个人学习过程中整理而成,转载请注明出处。
1、uboot主要的作用就是启动操作系统内核。
linux内核设计成可以被传参。
可以在uboot中准备好要传给linux内核的一些参数,然后放在内存中特定位置等待linux内核获取。
内核启动后会到特定位置去取uboot留给他的参数,然后内核解析这些参数用来指导linux内核的启动过程。
2、uboot的启动方式:uboot大小随意,假定为200KB。
启动过程:先开机上电后BL0(iROM)运行,BL0会加载外部启动设备中的uboot的前16KB(BL1)到SRAM中去运行,BL1运行时会初始化DDR,然后将整个uboot搬运到DDR中,然后用一句长跳转(从SRAM跳转到DDR)指令从SRAM中直接跳转到DDR中继续执行uboot直到uboot完全启动。
3、S5PV210的启动方式:内置SRAM(iRAM)的容量是96KB,内置的NorFlash(iROM)的容量是64KB。大致可以分三步。
第一步:CPU先读取运行iROM里面设定好的代码,这一段代码会做一些基本的初始化(比如关看门狗...),然后选择判断启动模式,在相对应的外部存储器中读取一部分代码(BL1,大小16KB)到iRAM。
第二步:运行、执行读取到iRAM中的BL1,负责将BL2(大小80KB)读取到iRAM中。
第三步:运行、执行读取到iRAM中的BL2,负责初始化DRAM,然后将OS读取到DRAM中启动OS。
参考资料:《朱老师物联网大讲堂---ARM裸机全集》
时间: 2024-12-16 13:34:28