MCU内存分配与管理(3)

简单的内存管理,我们一般使用固定大小的块进行分配。如我使用64字节块进行分配,如果使用中要求分配的内存小64字节,我们就分配出一块,如果要求分配的内存大于64字节,则多块联合分配。因此我们就要引入一个内存管理块的概念。

typedef struct _MemCtrl

{

       void *     prevElementP;

       void *     nextElementP;

       void *     userSpaceP;

       uint16_t  userLen;

       uint16_t useFlag;

}MemCtrl;

使内存控制块形成一个双向链表。其中userSpaceP指向可以给用户使用的内存。userLen保存本次分配出去的空间大小,它只能是64字节的整数倍。useFlag保存改内存块是否已经被分配出去。

转载于:https://my.oschina.net/u/2544280/blog/872907

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值