我想研究一下malloc的实现,是否与dlmalloc类似。
10 个解决方案
#1
#2
http://topic.csdn.net/t/20051114/18/4392765.html
#3
多谢,不过这个帖子中并,没有给出正确的答复。
#4
glibc-2.8/malloc/malloc.c里面有这么一行
#define public_mALLOc malloc
这大概就是给应用程序用的malloc吧,根据make时的不同选项,public_mALLOc还有可能被替换为dlmalloc或者__libc_malloc
同一文件里可以找到public_mALLOc的实现代码,接下来又涉及到__malloc_hook、malloc_hook_ini之类的乱七八糟的内容
#define public_mALLOc malloc
这大概就是给应用程序用的malloc吧,根据make时的不同选项,public_mALLOc还有可能被替换为dlmalloc或者__libc_malloc
同一文件里可以找到public_mALLOc的实现代码,接下来又涉及到__malloc_hook、malloc_hook_ini之类的乱七八糟的内容
#5
linux代码里面条件编译的东西太多了。
要是能正确编译一次,然后看看预处理的结果,应该能过滤掉很多没用的内容
要是能正确编译一次,然后看看预处理的结果,应该能过滤掉很多没用的内容
#6
glibc-2.9是在malloc/malloc.c里:
Void_t*
public_mALLOc(size_t bytes)
Void_t*
public_mALLOc(size_t bytes)
#7
find /dir -name "*.[ch"]|xargs grep malloc
#8
学习了
#9
其实也说了吧,这个不是简单的函数实现,不是那么容易说清的……
#10
感觉按理来说应该是在malloc/malloc.c文件中,简单看了一下,感觉写的比较乱,没有确认是不是
#1
#2
http://topic.csdn.net/t/20051114/18/4392765.html
#3
多谢,不过这个帖子中并,没有给出正确的答复。
#4
glibc-2.8/malloc/malloc.c里面有这么一行
#define public_mALLOc malloc
这大概就是给应用程序用的malloc吧,根据make时的不同选项,public_mALLOc还有可能被替换为dlmalloc或者__libc_malloc
同一文件里可以找到public_mALLOc的实现代码,接下来又涉及到__malloc_hook、malloc_hook_ini之类的乱七八糟的内容
#define public_mALLOc malloc
这大概就是给应用程序用的malloc吧,根据make时的不同选项,public_mALLOc还有可能被替换为dlmalloc或者__libc_malloc
同一文件里可以找到public_mALLOc的实现代码,接下来又涉及到__malloc_hook、malloc_hook_ini之类的乱七八糟的内容
#5
linux代码里面条件编译的东西太多了。
要是能正确编译一次,然后看看预处理的结果,应该能过滤掉很多没用的内容
要是能正确编译一次,然后看看预处理的结果,应该能过滤掉很多没用的内容
#6
glibc-2.9是在malloc/malloc.c里:
Void_t*
public_mALLOc(size_t bytes)
Void_t*
public_mALLOc(size_t bytes)
#7
find /dir -name "*.[ch"]|xargs grep malloc
#8
学习了
#9
其实也说了吧,这个不是简单的函数实现,不是那么容易说清的……
#10
感觉按理来说应该是在malloc/malloc.c文件中,简单看了一下,感觉写的比较乱,没有确认是不是