Zephyr 内核是一个微型内核,被设计用于资源受限的系统:从简单的嵌入式传感器、可穿戴 LED,到复杂的智能手表、物联网无线网关。
Zephyr 支持多架构,包括:ARM Cortex-M、Intel x86 和 ARC。在 这里 可以查看 Zephyr 支持的所有平台。
许可
Zephyr 工程遵循开源协议 Apache License, version 2.0
。
特性
与其它微型内核相比,Zephyr 内核有很多独特的优秀特性:
- 单地址空间操作系统。将应用程序相关的代码与内核结合在一起,创建一个在硬件上加载、运行的单一镜像。应用程序代码和内核代码运行在同一个共享地址空间。
- 高度可配置。允许应用程序只包含它们需要的功能。
- 编译时定义资源。所有系统资源都在编译时定义,以减小代码量、增强代码性能。
- 最小错误检查。提供最小化的运行时错误检查,以减小代码量、增强代码性能。提供一个可选的错误检查基础,以协助应用程序的开发和调试。
-
广泛的服务。提供了许多耳熟能详的服务。
- 多线程服务:为基于优先级的、非抢占式的 fiber 和基于优先级的、抢占式的 task 提供可选的时间片。
- 中断服务:在编译时、运行时均可注册中断处理函数。
- 线程间同步服务:包括二元信号量、计数信号量和互斥信号量。
- 线程间数据传递服务:包括基本消息队列、增强型消息队列和字节流。
- 内存分配服务:动态地分配固定尺寸、可变尺寸的内存块。
- 电源管理服务:包括无滴答 CPU 空转和高级 CPU 空转。