嵌入式系统启动加载器与内核配置编译指南
1. 启动加载器概述
每个系统都需要一个启动加载器来激活硬件并加载内核。U - Boot 受到许多开发者的青睐,因为它支持多种硬件,并且相对容易移植到新设备上。近年来,嵌入式硬件的复杂性和多样性不断增加,引入了设备树来描述硬件。设备树是系统的文本表示,编译成设备树二进制(dtb)文件,并在加载内核时传递给内核,由内核解释设备树并加载和初始化相应设备的驱动程序。
1.1 Barebox 代码布局
Barebox 的代码布局与 U - Boot 类似,主要目录及其功能如下:
| 目录 | 功能 |
| ---- | ---- |
| arch | 包含每个支持架构的特定代码,涵盖所有主要的嵌入式架构。SoC 支持在 arch/[architecture]/mach - [SoC] 中,单个板卡的支持在 arch/[architecture]/boards 中。 |
| common | 包含核心功能,包括 shell。 |
| commands | 包含可从 shell 调用的命令。 |
| Documentation | 包含文档文件的模板。使用 make docs 命令构建,结果存放在 Documentation/html 中。 |
| drivers | 包含设备驱动程序的代码。 |
| include | 包含头文件。 |
1.2 构建 Barebox
以 BeagleBoard C4 为例,
超级会员免费看
订阅专栏 解锁全文
21

被折叠的 条评论
为什么被折叠?



