• 正文
  • 推荐器件
  • 相关推荐
申请入驻 产业图谱

FreeRTOS V11.0升级了多项重要功能,兼容V10版本

2024/02/04
3456
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

微信公众号 | strongerHuang

年前12月份的时候,FreeRTOS 升级到V11.0版本,你们项目用上了这个最新版本吗?

我最近抽时间,把老项目中V10版本的FreeRTOS,升级(替换)为最新V11.0.1版本,发现编译没有错误,然后也实际在产品上跑了一下,没发现什么问题。

这说明,V10和V11版本还是兼容,至少用到的这些API接口上没问题。

当然,我只是简单跑了一下,没有经过严格测试。还有,项目中用到的接口都是一些常规的,而且只是占据少部分。

V11和V10的接口是否全面兼容,还有有待验证,只能说常规的接口是向下兼容,且增加了一些更现代、更先进的API接口。

重要的更新内容

FreeRTOS从V10升级到V11,从官网给出的信息,升级的内容非常多,有30条左右,下面给大家列举一些重要的更新内容:

1、支持对称多处理 (SMP) 

FreeRTOS 在 2017 年推出了对非对称多处理 (AMP) 的支持,而V11版本的 FreeRTOS 首次将对称多处理 (SMP) 支持纳入主线版本。借助 SMP, FreeRTOS 内核的实例可以在多个相同的处理器核心中调度任务。

2、合规性检查从 PC Lint 切换到 Coverity 

FreeRTOS源代码遵循 MISRA 行业规范,此次升级,将规范从 MISRA C:2004 更新了 MISRA C:2012,代码静态分析工具也切换到了Coverity.

这里简单可以一下什么是 MISRA 行业规范:MISRA C是由汽车产业软件可靠性协会(MISRA)提出的C语言开发标准。

其目的是在增进嵌入式系统的安全性及可移植性,针对C++语言也有对应的标准MISRA C++。

这里可以参看我分享的文章:汽车行业 C 语言标准:MISRA C

3、增加FreeRTOSConfig.h说明(注释) 

就是增加了FreeRTOSConfig.h配置文件的注释,比以前更加详细了。

4、增加内存安全检查 

在heap_4.c和heap5 .c中增加了对内部堆块指针的边界检查和混淆,以帮助捕获指针异常。

比如 pvPortMalloc :

5、增加一些API接口 

抛开新支持的一些功能之外,也增加了一些实用的API接口,比如:uxTaskBasePriorityGet 和 uxTaskBasePriorityGetFromISR 来获取任务最后分配的基本优先级。

还添加了“跟踪宏”,支持跟踪所有api的输入和退出。

6、更新/修复一些功能 

更新并修改一些功能和潜在的bug,比如:更新Cortex-M端口的中断优先级断言,使它们不会在没有实现PRIO位的QEMU上触发。

再比如:更新eTaskGetState和uxTaskGetSystemState,对于等待就绪的任务返回eReady.

还有:更新ARMv7-M端口以确保内核中断以最低优先级运行。

时间有限,就整理这么多,详细更新说明,大家可以参看:https://github.com/FreeRTOS/FreeRTOS-Kernel/blob/main/History.txt

最后,如果大家升级到V11有遇到各种问题,欢迎留言交流和讨论。

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
ATMEGA128A-MU 1 Atmel Corporation RISC Microcontroller, 8-Bit, FLASH, AVR RISC CPU, 16MHz, CMOS, 9 X 9 MM, 1 MM HEIGHT, 0.50 MM PITCH, GREEN, MO-220VMMD, QFN-64

ECAD模型

下载ECAD模型
$5.69 查看
MCIMX535DVV1C 1 Freescale Semiconductor i.MX53 32-bit MPU, ARM Cortex-A8 core, 1GHz, PBGA 529
$36.91 查看
DSPIC33EP512MU814-I/PH 1 Microchip Technology Inc 16-BIT, FLASH, 60 MHz, MICROCONTROLLER, PQFP144, 16 X 16 MM, 1 MM HEIGHT, LEAD FREE, PLASTIC, TQFP-144

ECAD模型

下载ECAD模型
$13.09 查看
点赞
收藏
评论
分享
加入交流群
举报

相关推荐

登录即可解锁
  • 海量技术文章
  • 设计资源下载
  • 产业链客户资源
  • 写文章/发需求
立即登录

作者黄工,从事嵌入式软件开发工作8年有余,高级嵌入式软件工程师,业余维护公众号『strongerHuang』,分享嵌入式软硬件、单片机、物联网等内容。