Zephyr源码树的顶层目录如下所示,每个顶层目录都包括一级或多级子目录
arch
特定架构和片上系统的代码。每个支持的体系结构(例如x86和ARM)都有自己的子目录,其中包含以下领域的额外子目录:
• 特定架构的内核的源文件
• 特定架构的内核的头文件(其中包含私有API)
• 特定的片上系统的代码
boards
board相关的代码和配置文件
doc
Zephyr文档相关的材料和工具。
driver
设备驱动代码
dts
设备树源文件(. dts),在OS源代码中用于描述特定板的硬件细节。
ext
外部代码,从其他来源集成到Zephyr项目中的,例如制造商提供的硬件接口代码和加密库代码
include
所有(不包括 lib 目录)公有 API 的头文件
kernel
内核代码
lib
库代码,包括最小C标准库
misc
杂项代码
samples
Zephyr功能的应用程序举例
scripts
用于编译和测试Zephyr应用程序的程序和文件
subsys
Zephyr的子系统包括:
• USB设备堆栈的代码
• 蓝牙栈和网络栈的网络代码
• 文件系统代码
• 蓝牙主机和控制器
tests
Zephyr特性的测试代码和基准