在PC机上引导程序一般由BIOS开始执行,然后读取硬盘中位于MBR(Main Boot Record,主引导记录)中的Bootloader(例如:LILO或GRUB)并进一步开始引导操作系统的启动。
但在嵌入式系统中通常没有像BIOS那样的固件程序,因此整个系统的加载启动就完全由bootloader来完成。它主要的功能是加载与引导内核映像。
U-Boot功能:
U-Boot 启动内核的过程可以分为两个阶段,两个阶段的功能如下:
(1)第一阶段的功能(一般由汇编实现)
硬件设备的初始化加载U-Boot第二阶段的代码到RAM空间
设置好栈
跳转到第二阶段代码入口
(2)第二阶段功能(一般由C语言实现)
初始化本阶段使用的硬件设备检测系统内存映射
将内核从Flash读取到RAM中
为内核设置启动参数
调用内核
(待续、、、)
时间: 2024-11-03 20:46:03