我必须用 C 语言重新编码这 3 个函数,目标是重新编码的函数必须替换不同程序或系统调用中的系统函数。
自从我阅读了手册后,我真的不明白这些函数的行为是什么,我只知道我可以使用 brk()
和 sbrk()
.
最佳答案
malloc
基本上预分配内存页面(参见 getpagesize(2)
),并在调用时返回指向这些预分配区域的可用部分的指针。
然后,malloc
必须“记住”这些预分配内存段的哪一部分正在使用,以及哪一部分是空闲的。
阅读这篇文章:https://www.cocoawithlove.com/2010/05/look-at-how-malloc-works-on-mac.html可能有帮助! (我知道当我在 mac Os 上重新编码 malloc 作为大学作业时,这对我有很大帮助;))。
关于c - C 中的 Malloc、free 和 realloc 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41825009/