U-boot目录结构学习笔记

这里我看的U-boot版本是2010.6版以后的版本,和之前的版本目录有些不同。学习过程主要是参考《深入理解BootLoader》这本书和看朱友鹏老师的嵌入式视频学的。


主目录 

Uboot介绍
├── api存放uboot提供的接口函数
├── arch和体系结构相关的代码
├── board目标板相关文件
├── common通用的代码,涵盖各个方面,已命令行处理为主
├── disk磁盘分区相关代码
├── doc文档,一堆README开头的文件
├── drivers驱动,很丰富,每种类型的设备驱动占用一个子目录
├── examples示例程序
├── fs文件系统,支持嵌入式开发板常见的文件系统
├── include头文件,已通用的头文件为主
├── lib通用库文件
├── nand_splNAND存储器相关代码
├── net网络相关代码,小型的协议栈
├── post上电自检程序
└── tools辅助程序,用于编译和检查uboot目标文件

U-boot的目录大致分为三大部分

第一部分主要是和处理器体系结构(arch),硬件开发板(board)有关。

ARCH目录
按照体系结构进行划分的,对ARM体系的CPU,则分析ARM目录下的结构。
arch/arm介绍
├──cpu根据arm版本号进行划分,如arm11、armv7等。
├──include处理器用到的头文件
└──lib通用的汇编代码、C代码。包含了旧版的Lib_arm、Lib_ppc、Lib_i386
ps:从u-boot-2010.06版本开始把体系结构相关的内容合并,原先的cpu与lib_arch内容全部纳入arch中,并且其中增加inlcude文件夹;分离出通用库文件lib。
BOARD目录
里面主要放置不同开发板的相关代码。
INCLUDE目录
Uboot头文件等公用头文件,其中configs字目录下放置了与目标板相关的头文件,头文件里面包含了一些板级配置相关的宏定义。

第二部分主要是通用的函数和驱动相关的程序

COMMON目录
独立于处理器体系结构的通用代码,通常与硬件无关的普通适用代码。如:控制台代码(uboot的命令语句cmd)、CRC校验代码等。
DRIVER目录
通用的设备驱动,比如各种网卡、支持CFI的flash、串口和usb总线等。
FS目录
包含系统文件的代码,u-boot现在支持cramfs、fat、fdos、jffs2、yaffs和registerfs等文件系统。
LIB目录
通用多功能函数的实现。
NET目录
与网络相关的文件目录,BOOTP协议、TFTP协议、RARP协议和NFS文件系统的实现。
POST目录
上电自检文件目录。

第三部分主要是Uboot的应用程序、工具、测试程序或文档。

API目录
为其他应用程序提供过的硬件无关的功能函数的API。
DOC目录
开发使用文档。
EXAMPLES目录
示例代码,以helloworld为例,该示例是一个独立的程序。
tools目录
里面是一些工具类的代码。创建bin镜像文件等的工具。

各文件介绍

uboot介绍
├── boards.cfg用于目标板配置参数文件。
├── config.mk定义交叉编译器、调试、优化、预处理、C编译器、链接选项、指定编译规则。
├── COPYING条款声明。
├── CREDITS鸣谢,里面记录了对uboot有贡献的人
├── helper.mk生成U-Boot.list文件,文件包含程序编译对象信息等。
├── MAINTAINERS维护者,就是当前在参与维护uboot源码的社区工作者。
├── MAKEALL一个脚本,应该是帮助编译uboot的。
├── MakefileU-Boot的makefile,主要用来编译链接并生成U-Boot镜像。
├── mkconfig建立工程需要的一些软链接并创建配置文件config.h。
├── READMEU-Boot的介绍信息。
├── rules.mkU-Boot的Makefile使用的规则
└── snapshot.commitU-Boot序列号和发布时间的快照。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值