应用程序不使用旁视列表

时间:2012-11-03 18:26:07

标签: c memory heap

使用Dev-C ++ 4.9.2。我正在通过HeapCreate分配一个新堆,然后做两个HeapAlloc(分配两个堆段),然后通过HeapFree释放第二个堆段...这都是在Windows XP SP3上。当我正在释放第二个堆段时,而不是像它应该那样转到LookAside List(LAL),而是将第二个段与堆中未分配的内存合并。所以我最终得到了一个仍然分配的堆段,而根本没有第二段。当我最终应该分配一个堆段和LAL上的第二个段。

有什么想法吗?

我正在使用一些基本的堆溢出代码(试图了解堆溢出如何工作以便编码更安全)来自http://www.net-ninja.net/article/2011/Sep/03/heap-overflows-for-humans-102/并且我使用Dev-C ++ 4.9.2编译它。

0 个答案:

没有答案