hihi66 发表于 2013-2-21 13:18:51

malloc是如何工作的?

动态分配网上说是在链表上登记可是那不是也需要动态分配吗,才形成链表啊?难道是固定地址

mitchell 发表于 2013-2-21 13:21:25

从heap里分配的,用链表来记录分配情况,heap是固定地址。

dr2001 发表于 2013-2-21 13:21:54

动态分配算法有很多很多种,看具体实现的是哪个。

常用的malloc代码可以Google。

一般链表信息在内存块地址前边,当然也有动态分别的数据用于链表的。

hihi66 发表于 2013-2-21 15:21:26

详细一些,是怎样的一个结构啊

mangocity 发表于 2013-2-21 15:32:46

ld 脚本里面有个符号,crt 根据这个符号来定 heap 内存的起始地址。
至于内存分配的算法,就像楼上说的有很多了。
页: [1]
查看完整版本: malloc是如何工作的?