【发布时间】:2012-02-26 14:05:17
【问题描述】:
我想知道堆上所需的空间是否不够大 这样就不需要 brk/sbrk 系统 all(移动数据段的中断指针(brk)),库函数(例如 malloc)如何在堆上分配空间。 我不是在询问堆管理的数据结构和算法。我只是问如果 malloc 不调用系统调用,它如何获取堆的第一个位置的地址。我之所以问这个问题是因为我听说并不总是需要调用系统调用 (brk/sbrk),因为它们只需要扩展空间。如果我错了,请纠正我。
【问题讨论】:
-
我在stackoverflow.com/questions/667177/heap-overflow-attacks/… 的回答展示了一些关于如何实现堆的示例数据结构。
标签: linux operating-system memory-management