malloc内存分配
Posted westlife-11358
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了malloc内存分配相关的知识,希望对你有一定的参考价值。
malloc分三步:
适配、分割、合并。
1、适配
匹配>=请求字节大小的内存块。(至于选哪一个,有策略的)
首次适配。
从上一次适配结束位置开始,接着适配。
最佳适配。
2、分割
如果适配到了,选择切割(切割成几部分,看策略具体情况)
如果没适配到,将空闲链表中的相邻空闲内存合并,都合并完了,要么可以适配,要么不可以适配,如果不可以适配,只能想堆内存申请额外的大内存块了,然后添加到空闲链表中适配切割。
3、合并
边界标记技术,允许在常数时间内进行对前面的块合并。
以上是关于malloc内存分配的主要内容,如果未能解决你的问题,请参考以下文章