简介
全面的软件平台
对于为资源受限的设备提供支持的许多软件开发人员而言,术语“RTOS”就是“内核”的代名词。人们认为,RTOS 的主要作用(或许是唯一作用)在于管理应用中包含的不同任务。但是,这种观点只涵盖了在实现联网设备时所需功能的一小部分。现实中,物联网产品需要大量外围设备驱动程序、各种中间件组件,以及用于通信的协议栈。如果该软件不作为 RTOS 的一部分提供,则开发人员或芯片供应商需负责提供。
从最初起,Zephyr 项目就以满足物联网开发项目的所有需求为要旨。所以说,Zephyr 更像是一个“软件平台”,而不是一个 RTOS。除了提供上述嵌入式软件组件经全面测试的稳健实现方案外,还为 Zephyr 提供有命令行工具,以帮助实现一致且直接的配置和构建流程。
许可和管理
Zephyr 的特殊之处不仅仅在于它将众多不同软件组件打包到一个平台中,而且其开发和管理方式也不同于其他 RTOS。Zephyr 是一个 Linux 基金会项目,其管理机构致力于确保该项目不会受制于任何特定云或半导体供应商。虽然一些会员公司为 Zephyr 项目提供资金支持,并帮助制定关于代码库方向的关键决策,但开发工作对任何人都是开放的,并且目前已形成一个充满活力的代码贡献者社区。
Zephyr 社区的基石在于真正的软件开源许可政策。Zephyr 的默认许可模式是 Apache 2.0,该许可模式的条款宽松且易于理解,已在物联网领域得到广泛应用。尽管 Zephyr 用户和会员公司可以自由地在项目正式回购协议之外向操作系统添加不可移植的自有专属内容,但项目的指导理念是开放和合作,这些原则也是 Zephyr 管理机构籍以做出许多决策的基础。
Silicon Labs 对 Zephyr 提供的支持
Silicon Labs 与 RTOS 领域有着千丝万缕的联系,因此很自然地,Silicon Labs 于 2021 年加入了 Zephyr 项目并成为银牌会员。公司在成为会员后,将在操作系统路线图制定过程中具有发言权。不过,Silicon Labs 对 Zephyr 的参与并不局限于介入项目管理,而且还包括积极的开发工作,目的是在新硬件平台上使用 Zephyr。
为了确保当前的工作取得成功,他们正在与
Antmicro(Zephyr 项目的另一个会员)紧密合作。 在磋商关于动态、多面性项目的政策和主张时,经验丰富的指导总能提供帮助;而 Antmicro 的历史几乎可以追溯到 Zephyr 创立之初。 Antmicro 团队为操作系统做出了大量贡献,并且对代码库非常熟悉。
最初,Silicon Labs 和 Antmicro 的支持工作旨在通过 Zephyr 在 Silicon Labs 设备上实现 BLE 和 Wi-Fi 功能。 这些工作所产生的代码将通过 Zephyr 官方回购协议交付,目标是尽可能多地利用 Zephyr 基础设施(驱动程序、中间件、工具等)。 就 BLE 而言,将使用 Zephyr 主机蓝牙协议栈,以便开发人员能够轻松利用现有 Zephyr 示例着手工作,如下图所示。
未来项目
随着 Zephyr 项目的发展和用户群的扩大,Silicon Labs 将继续提供新的支持和集成服务,其中包括一系列设备和无线技术。 当然,Zephyr 的开源性质意味着社区将能够为这些工作提供协助,并领导完成
更多计划。 最终,希望实现 Zephyr 真正开放且可移植 RTOS 这一潜力的开发人员将从人们对项目的任何贡献中受益。
入门指南
一般 Zephyr 设置
Zephyr 的官方文档包括一份简单的入门指南,介绍如何安装在嵌入式设备上构建和运行操作系统时所需的软件和工具。该指南涵盖适用于运行 Windows、Linux 或 Mac 操作系统的主机的设置,是刚接触 Zephyr 的任何开发人员的理想入门指南。
Silicon Labs 硬件上的 Zephyr
Silicon Labs 与 Antmicro 的 Zephyr 项目专家合作,使 Zephyr 能够在三个 EFR32 无线套件上运行。(操作系统还被移植到多个其他 EFR32 和 EFM32 套件,但这些工作的成果尚未经过 Silicon Labs 工程师的验证或测试)。下面列出的“受支持电路板”页面提供了每个套件上支持的功能的额外信息,以及关于构建和下载代码的说明,是对上述入门指南的补充。
技术文档
社区与支持