关注+星标公众号,不错过精彩内容
作者 | strongerHuang
公众号 | strongerHuang
前两天给大家简单科普了一下:
µC/OS 曾经也有辉煌的年代,只是现在逐渐被其他RTOS所替代,当下,顶流的RTOS 属于 FreeRTOS 和 Zephyr。
Zephyr最近升级到了 V4.5.0,变化还是比较大,新增适配更多处理器架构、网络协议栈、驱动等。

总结一下,大概就是:
1、新架构与硬件支持
Infineon TriCore (AURIX):正式进入车载 ECU 的核心架构,直接面向 AURIX 系列汽车微控制器。
Qualcomm Hexagon (DSP):适合音频、传感器和信号处理负载,并提供了 qemu_hexagon 等 QEMU 目标,便于无硬件预研。
板级扩展:新增 178 块板卡和 29 个扩展盾板(Shields),硬件选择面显著扩大。
2、多媒体与网络栈
Multimedia Pipeline (mpipe,实验性) :类似 GStreamer 的零拷贝管道框架,用 source/transform/sink 元件搭建音视频流处理链路。
网络性能:IP 栈优化使 zperf 回环吞吐提升最高 21%。
协议栈扩展:新增 QUIC 与 HTTP/3、RTP (RFC3550)、SSH server/client(含 shell 后端)以及 MCP server(让 AI Agent 调用设备工具)。
网关能力:支持 IPv4 forwarding、NAT、IPv6 router 角色和 DHCPv6 prefix delegation,为边缘网关类产品提供了原生支持。
3、新驱动类
新增了多个面向特定外设的驱动 API,减少自行实现的工作量:
Buzzer(PWM/GPIO 蜂鸣器)、Clock Monitor(运行时时钟频率监控)、DALI(数字可寻址照明接口)、LIN(车载局域互联网络)、MUX(硬件信号多路复用器)、Pulse IO(可寻址 LED 灯带与红外收发所需的时间边沿生成/捕获)。
4、安全与合规
SPDX 3.0 SBOM:生成的软件物料清单原生支持 SPDX 3.0,直接回应欧盟 CRA 等法规对固件供应链透明度的要求。
加固检查工具:revamp 后的 hardening tool 带有 CWE 引用和 CI 集成,便于将安全基线左移。
硬件加速 PSA Crypto:在部分 Silicon Labs、NXP 和 STM32 器件上启用硬件加速的 PSA Crypto。

同时,还提到了Zephyr v4.5.0迁移指。
1、内核与库
_k_neg_eagain重命名:改为_errno_neg_egain,errno 逻辑已从内核迁移至lib/libc/common。直接引用旧符号的代码会编译失败。Futex 支持任意地址,并引入
K_SYSCALL_OBJ_STATIC相关 userspace 变更,涉及直接操作 futex 或 syscall 对象的代码需核对。
2、构建系统
CMake 最低版本升至 3.28.0,低于此版本的 CI 或本地环境需要先行升级。
CONFIG_LEGACY_GENERATED_INCLUDE_PATH弃用且默认关闭:Zephyr 头文件现在必须以zephyr/为前缀(如<zephyr/kernel.h>),旧路径不再隐式回退。
3、Kconfig 与设备树
CONFIG_SRAM_SIZE/CONFIG_SRAM_BASE_ADDRESS弃用:RAM 范围改由 devicetree 的zephyr,sramchosen 节点描述。手动保留这两个 Kconfig 会触发CONFIG_SRAM_DEPRECATED_KCONFIG_SET警告,板级移植需同步迁移。Nordic 平台符号清理:
NRF_PLATFORM_HALTIUM、NRF_PLATFORM_LUMOS变为 deprecated stub,树外代码应改用具体的CONFIG_SOC_SERIES_NRF54H、NRF92、NRF54L、NRF71判断。sysbuild Kconfig 重命名:
SB_CONFIG_NRF_HALTIUM_GENERATE_UICR→SB_CONFIG_NRF_GENERATE_UICR,使用 sysbuild 的 Nordic 工程需更新配置。Nordic SoC 头文件重命名:
<haltium_power.h>→<soc_power.h>,<haltium_pm_s2ram.h>→<soc_pm_s2ram.h>。旧头文件仍会以转发形式保留并发出,但应尽早替换包含路径。
4、驱动层面
jedec,spi-nand新增必填属性plane-bytes:单 plane 器件应设为与size-bytes相同,已有该 compatible 的设备树节点必须补全。UART 能力扩展(非破坏性但值得关注):Realtek Bee 驱动支持异步 API;NXP i.MX 驱动支持运行时配置;Nordic nrfx UARTE 支持 5–9 bit 帧长。
STM32 GPIO 已知编译问题:若某个
st,stm32-gpio节点带有gpio-reserved-ranges属性,在CONFIG_GPIO_STM32=y时gpioport_mgr.c可能编译失败,移植 STM32 时需留意。
https://docs.zephyrproject.org/4.5.0/releases/migration-guide-4.5.html

https://github.com/zephyrproject-rtos/zephyr/releases/tag/v4.5.0
------------ END ------------