一、三大核心组件(构成嵌入式 Linux 系统的 “三大件”)
这三个是系统启动和运行的基础,缺一不可。
表格
| 文件夹 | 类别 | 核心作用 |
|---|---|---|
u-boot | 引导程序 | 板子上电后第一个运行的程序,负责初始化硬件、加载内核 |
kernel | 内核 | 系统的 “大脑”,负责管理硬件、调度进程、驱动支持,设备树文件也在这里面 |
buildroot/debian/ubuntu | 根文件系统(rootfs) | 系统的 “软件仓库”,包含所有应用程序、库文件、命令和配置脚本 |
💡 关键说明:
buildroot、debian、ubuntu是构建根文件系统的三种不同方案,最终只会选一种来生成rootfs镜像。
二、工具与构建辅助(帮你编译、打包、烧录系统)
这些是开发工具,让你能一键完成系统的构建和烧录。
表格
| 文件夹 / 文件 | 作用 |
|---|---|
build.sh/Makefile | 一键编译脚本,自动构建u-boot、kernel和你选择的rootfs |
rkflash.sh | 一键烧录脚本,把编译好的所有固件刷入开发板 |
output | 编译结果的输出目录,最终生成的所有固件镜像都在这里 |
tools | 各种辅助工具,比如打包工具、烧录工具、调试工具等 |
prebuilts | 预编译好的工具链或固件,方便快速开发 |
三、业务与开发扩展(你写代码、做项目的地方)
这些是你未来做项目、写代码的主要战场。
表格
| 文件夹 | 作用 |
|---|---|
app | 存放你自己写的应用程序,比如 C 程序、Qt 界面、RKNN 推理程序等 |
hal | 硬件抽象层,提供对底层硬件的统一接口,方便你开发驱动或应用 |
device | 板级配置,存放针对 RK3568 开发板的硬件配置、设备树补丁等 |
docs | 项目文档、说明手册 |
common/external/rockdev/rkbin | 通用组件、外部依赖、Rockchip 官方工具链 / 二进制文件,一般不用改 |
📌 一句话帮你串起整个流程
- 修改配置:在
kernel里改设备树,在buildroot/debian里配置根文件系统,在app里写你的应用。 - 一键编译:运行
build.sh,自动把u-boot、kernel、rootfs编译好,生成的镜像都在output里。 - 烧录系统:运行
rkflash.sh,把output里的镜像刷进开发板。 - 运行调试:板子启动后,你的应用和系统就跑起来了。