FreeRTOS 的版本更新通常会带来新的特性、性能改进、修复漏洞和安全增强等。对比 FreeRTOS v9.0.0 和最新版本(截至2024年为 FreeRTOS v10.5.1),以下是一些主要差异和改进:
新特性和功能
- 内核特性增强:
新增了对静态内存分配的支持,可以在任务、队列、信号量、计时器等对象创建时使用静态内存,提供了更好的内存管理和可预测性。
引入了任务通知(Task Notifications)功能,可以作为轻量级的二值信号量或事件组来使用,减少了对队列和信号量的依赖,提升了性能。 - 对称多处理 (SMP) 支持:
在最新版本中,FreeRTOS 增加了对对称多处理架构的支持,可以在多核处理器上更有效地运行任务。 - 软件定时器:
提升了软件定时器的精度和性能,支持更细粒度的时间管理。 - 任务调度:
增强了任务调度算法,提高了实时任务的调度性能,支持时间片调度(time slicing)和抢占式调度。 - 错误检测和处理:
提供了更丰富的调试和错误处理选项,比如增加了对 stack overflow 检测的改进和更详细的错误日志。
性能改进
- 内存管理:
内存分配和释放机制得到优化,减少了内存碎片,提高了内存使用效率。 - 中断处理:
中断管理得到了改善,尤其是在 ARM Cortex-M