19.1-uC/OS-III内存管理应用

Posted xigongxiaosha

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了19.1-uC/OS-III内存管理应用相关的知识,希望对你有一定的参考价值。

一个处理器,在不断地分配和释放内存的过程中,一整块连续的内存被分散为很多离散的小块内存, 这些叫做内存碎片,

内存碎片过多会导致内存的浪费。 uC/OS 的内存管理机制就是为了尽量减少内存碎片。大致的思路是一次性取出一个较大

的内存分区,把这个内存分区分成若干个内存块,然后将内存块逐个串成单向链表。每次要用到内存块就从内存分区中取出一块,

用完就放回去。这跟消息队列的消息池的使用原理是一样的。

1.使能

如果想要使用内存管理机制,就必须事先使能内存管理。内存管理的使能位于“os_cfg.h”。

2.OSMemCreate ()

要使用 uC/OS 的内存管理必须先声明和创建内存管理对象,调用 OSMemCreate () 函数
可以创建一个内存管理对象。 注意, 内存分区一经创建便不能删除,系统没有提供相应的删
除函数OSMemCreate () 函数的定义位于“os_mem.c”。
3.OSMemGet ()
OSMemGet () 函数用于向内存管理对象获取一个空闲内存块。
4.OSMemPut ()
OSMemPut () 函数用于把内存块退还回内存管理对象(内存分区)。

 












以上是关于19.1-uC/OS-III内存管理应用的主要内容,如果未能解决你的问题,请参考以下文章

.Net 自动内存管理

C++应用程序性能优化——操作系统的内存管理

Android开发对内存管理的学习总结

windows中的虚拟内存管理技术是指使用啥来运行应用程序

Spark原理 内存管理

Go的内存管理(最新学习)