Advertisement

u-boot启动流程和分析

阅读量:

U-boot被认为是常用的官方开放源码软件工具,并以其强大的系统引导功能著称。它能够支持多种嵌入式操作系统的内核配置,并兼容多种处理器架构。具体来说,在UBOOT中运行了Linux、NetBSD、VxWorks、QNX等操作系统内核版本,并且也兼容PowerPC、ARM架构下的多款处理器设计。在不同的项目需求下,在UBOOT代码中进行相应的调整以实现目标

UBoot代码规模较为庞大,在这种情况下深入学习并非必须;实际上我们只需进行必要的调整即可实现预期效果。然而为了更好地掌握整个系统的工作流程否则难以把握切入点;建议大家先对UBoot的基本工作流程进行初步了解其基本流程以便后续操作打下基础。

大多数 BootLoader 被划分为阶段 1 和阶段 2两大类结构设计上 U-boot 系统也遵循这一划分模式 该系统架构下基于 CPU 架构的代码部分 如设备初始化相关的程序 大多会被整合到阶段 1模块内并建议选用汇编语言进行编写 而阶段 2部分 则主要采用 C 语言开发 这样不仅能够完成复杂的功能需求 同时还能够保证较高的可读性和移植性

1、 stage1(汇编语言部分)

U-boot的stage1代码常见地包含在start.s文件中;其主要代码部分采用汇编语言编写

每一个可执行的image都必然具备一个唯一的全局入口点。
为了使编译器了解这一点, 需要做相应的

全部评论 (0)

还没有任何评论哟~