认识 Zephyr
本页依据 文档基线与后续更新 中记录的 Zephyr main 快照更新。
Zephyr 是面向资源受限设备的开源实时操作系统与软件生态,由 Linux 基金会托管。 项目始于 2016 年,核心代码主要采用 Apache-2.0 许可证;使用外部模块时还需查看各自许可证。 它可以用于微控制器、传感器、可穿戴设备、工业设备等,具体资源消耗由应用和配置决定。
系统组成
内核:线程、优先级调度、中断、定时器、同步、数据传递和内存管理。
硬件支持:体系结构、SoC、开发板、设备驱动,以及 Devicetree 描述的硬件实例。
系统服务:日志、Shell、存储、文件系统、设备管理、网络、蓝牙和电源管理等。
开发工具:west 管理工作区和扩展命令,CMake/Ninja 构建,Kconfig 配置, Zephyr SDK 提供交叉编译工具,Twister 管理测试。
构建时会根据应用、开发板、Kconfig 和 Devicetree 生成镜像。内核对象既可静态定义, 也有按需动态分配的接口;是否启用堆、用户态、SMP 或特定协议取决于平台和配置。
上图是仓库早期材料中的概念示意图。当前模块名称与边界请以官方文档目录为准。
硬件与开发主机
Zephyr 支持多种处理器架构,包含 Arm、RISC-V、x86、ARC、Xtensa 等。 支持某个架构并不表示所有 SoC 或开发板都已得到支持;选型时应查阅 开发板目录 和对应板卡限制。
开发环境有 Linux、Windows 和 macOS 路径。Zephyr SDK 已提供跨主机平台安装方式, 不再适用早期材料中“SDK 仅支持 Linux”的说法。主机架构、工具版本与安装步骤见 搭建开发环境并运行第一个应用 和 Windows 原生开发环境。
版本与维护
main是持续开发分支,latest文档对应这一分支。发布版本有自己的标签和文档,可以用于固定可重复的开发基线。
LTS 是长期维护版本,适用于需要较长维护周期的项目;具体支持期限查询 发布与支持流程。
升级应同时考虑 Zephyr 主仓库、west 清单中的模块、Python 依赖、SDK、开发板目标名和应用配置。 单独替换一套旧 SDK 或只更新主仓库,可能造成依赖不匹配。
安全与社区
Zephyr 提供用户态隔离、内存保护和安全服务等能力,是否可用取决于硬件及配置。 安全功能、蓝牙功能和认证状态应查阅对应版本的官方资料,不能由一张旧架构图或旧版本 介绍推断所有应用都具备同样能力。
项目通过公开代码仓库、维护者审阅、议题与社区讨论协作。 贡献入口见 贡献指南。 本中文资料站用于学习与实践,API 的精确定义应以项目所用版本的公共头文件为准。