【FreeRTOS】使用指南5:内存管理

【FreeRTOS】使用指南5:内存管理

本章期望让读者了解以下事情:
 FreeRTOS 在什么时候分配内存。
 FreeRTOS 提供的三种内存分配方案范例。

1. FreeRTOS 在什么时候分配内存。

每当任务,队列或是信号量被创建时,内核需要进行动态内存分配。

2.FreeRTOS 提供的三种内存分配方案范例。

Heap_1,只分配,不释放
适合不需要删除任务,队列或者信号量的应用程序
在这里插入图片描述
Heap_2,采用了一个最佳匹配算法来分配内存,并且支持内存释放
Heap_2 并不会把相邻的空闲块合并成一个更大的内存块,所以会产生内存碎片(增强版Heap_4可以支持合并)
适合用于那些重复创建与删除具有相同栈空间任务的应用程序。
在这里插入图片描述

Heap_3简单地调用了标准库函数 malloc()和 free(),但是通过暂时挂起调度器使
得函数调用备线程安全特性
在这里插入图片描述
使用指南只介绍了3种分配方案,实际上FreeRTOS存在5种分配方案还有Heap_4和Heap_5
在这里插入图片描述
总结:
在这里插入图片描述

相关推荐

  1. FreeRTOS学习--61讲 内存管理

    2024-04-21 07:12:04       58 阅读
  2. 详解FreeRTOS内存管理(高级篇—8)

    2024-04-21 07:12:04       57 阅读
  3. MongoDB管理内存使用

    2024-04-21 07:12:04       35 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-21 07:12:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-21 07:12:04       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-21 07:12:04       87 阅读
  4. Python语言-面向对象

    2024-04-21 07:12:04       96 阅读

热门阅读

  1. 农业大数据概论-按章节复习

    2024-04-21 07:12:04       30 阅读
  2. npm常用命令详解(一)

    2024-04-21 07:12:04       30 阅读
  3. UGUI父对象自适应子元素布局解决方案

    2024-04-21 07:12:04       30 阅读
  4. WPF Dispatcher使用invoke造成死锁

    2024-04-21 07:12:04       34 阅读
  5. MVC、MVP、MVVM

    2024-04-21 07:12:04       32 阅读