[1]heap1:
特点:没有free,直接再原有的基础上对齐累加。不花里胡哨,适合小型的不需要释放存储空间的代码。

[2]heap2:
有一个链表结构体,start和end,
缺点:是会引起内存碎片,
优点:相比于heap1多了free函数,是会自动释放之前申请的过大内存块。


[3]heap3:
大小由.s文件中的Heap_Size的堆大小决定,没特别的
[4]heap4:
比heap2多了处理内存碎片,他会把地址连续的内存块合并起来。
查找空闲插入点,检查要插入的内存块是否可以和前一个内存块合并。

[5]heap5:
heap5可以跨越不同的存储单元,把不同物理单元中不连续内存段整合成一个连续的映射内存,再像heap4的一样处理,heap4的只能再同一个物理单元中实现。
本文介绍了从简单的heap1到heap5的内存管理策略,包括heap1的直接累加分配,heap2的链表结构与内存释放,heap3的固定大小,heap4的内存碎片整理,以及heap5的跨存储单元整合。这些方法在内存效率、碎片控制和资源管理上各有优劣,适用于不同的应用场景。

1122

被折叠的 条评论
为什么被折叠?



