我正在尝试为我的操作系统类实现 malloc,我想知道维护空闲内存块的双向链表相对于单链表的优势。
最佳答案
如果您在 malloc() 中将一大块内存分成较小的内存块,那么当您使用 free() 返回这些 block 时,您必须将每个返回的 block 与其 2 个相邻 block 连接起来。在这种情况下,双向链表是最容易处理的。
关于c - 在 malloc 实现中维护空闲列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7764057/