码迷,mamicode.com
首页 > 其他好文 > 详细

malloc内存分配

时间:2018-11-29 12:36:11      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:大小   合并   malloc   c内存   匹配   允许   一个   情况   适配   

malloc分三步:

适配、分割、合并。

1、适配

匹配>=请求字节大小的内存块。(至于选哪一个,有策略的)

首次适配。

从上一次适配结束位置开始,接着适配。

最佳适配。

2、分割

如果适配到了,选择切割(切割成几部分,看策略具体情况)

如果没适配到,将空闲链表中的相邻空闲内存合并,都合并完了,要么可以适配,要么不可以适配,如果不可以适配,只能想堆内存申请额外的大内存块了,然后添加到空闲链表中适配切割。

3、合并

边界标记技术,允许在常数时间内进行对前面的块合并。

 

malloc内存分配

标签:大小   合并   malloc   c内存   匹配   允许   一个   情况   适配   

原文地址:https://www.cnblogs.com/westlife-11358/p/10037056.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!