我正在寻找C应用程序的内存管理机制的详细描述,尤其是基于区域的内存管理。我找不到任何有关它的深入文章/书籍/教程:(
有人可以指出我正确的方向吗?
答案 0 :(得分:1)
好的参考是原始的Doom源代码(区域内存分配器,请参见此处http://doom.wikia.com/wiki/Zone_memory)
进一步开发Quake1源代码(hunk / zone malloc)。
不是教程,而是非常好的实现。
答案 1 :(得分:0)
虽然不是C,但我可以直接说下文中的实现是用C语言编写的,作为gcc-plugin。 paper here PDF的标题是“走向基于区域的内存管理”。有很多语义可以解释作者如何为Go编程语言实现RBMM。
答案 2 :(得分:0)
有关于APR memory pools的一些信息: