freertos之内存管理
任务、信号量、邮箱才调度器开始调度之前就应该创建,所以它不可能像裸奔程序那样的函数调用能确定需要多少内存资源,RTOS提供了3种内存管理的方法:
1 方法一:确定性好适合于任务、信号量、队列都不被删除的情况,也就是不会回收内存。这和裸奔程序很像
2 方法二:确定性不强但利用率高,适合于任务、信号量和队列被反复创建和删除且每个资源分配的内存大小相等
3 方法三:就是标准的molloc free同时使用调度器上锁保证线程安全。
任务、信号量、邮箱才调度器开始调度之前就应该创建,所以它不可能像裸奔程序那样的函数调用能确定需要多少内存资源,RTOS提供了3种内存管理的方法:
1 方法一:确定性好适合于任务、信号量、队列都不被删除的情况,也就是不会回收内存。这和裸奔程序很像
2 方法二:确定性不强但利用率高,适合于任务、信号量和队列被反复创建和删除且每个资源分配的内存大小相等
3 方法三:就是标准的molloc free同时使用调度器上锁保证线程安全。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?