malloc:通过二叉搜索树实现的malloc函数

时间:2024-07-25 03:52:44
【文件属性】:

文件名称:malloc:通过二叉搜索树实现的malloc函数

文件大小:7KB

文件格式:ZIP

更新时间:2024-07-25 03:52:44

C

/* 毫米 我们的设计是维护一个二叉搜索树来管理不同大小的空闲块。 我们使用一个空闲块本身作为树节点。 树中的每个节点也是双向链表的头,其中所有节点的大小相同。 free_tree 中的节点有四个属性 left-child、right-child、parent 和兄弟。 并且每个属性都使用空闲块中的一个字长空间来执行。 如果节点在链表中,这是一个树节点, 我们使用 left-child 来保存这个列表中前一个空闲块的地址, 并使用兄弟保存此列表中下一个空闲块的地址, 还将右孩子分配给 -1,这与没有右孩子的树节点不同(在这种情况下,将其分配给 0)。 此外,它由一个 4 字节的头部和一个 4 字节的尾部包裹,用于合并 空闲块的最小大小为 24 字节。 当我们需要分配的大小不大于512时,我们分配一个上键大小为(2^n)+4+4的空间。 例如,当我们需要10个字节的空


【文件预览】:
malloc-master
----README.md(2KB)
----malloc.c(23KB)

网友评论