Hacker News new | past | comments | ask | show | jobs | submit login
Understanding glibc malloc (sploitfun.wordpress.com)
85 points by signa11 on April 6, 2015 | hide | past | favorite | 3 comments



Doug Lea's dlmalloc implementation is the basis for GCC's ptmalloc, IIRC. His writeup on the topic is a wonderful read; and for the code itself, it is beautifully organised and well commented.

http://g.oswego.edu/dl/html/malloc.html


jemalloc is also pretty well-documented, though it's relatively big for a malloc implementation.

BSDcan paper: http://people.freebsd.org/~jasone/jemalloc/bsdcan2006/jemall... Facebook Engineering post: https://www.facebook.com/notes/facebook-engineering/scalable....

The NetBSD version, though probably not the most up to date, is the easiest to understand, being in a single file: http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/stdlib/jema....


The NetBSD is also a great starting point for people who want to port to weird architectures. It's simple and a little old fashioned, but it's in the sweet spot for most bootstrappable C compilers for memory-constrained devices. This or dmalloc are usually the easiest to get up and running on a device where you can't or don't want to trust the system libraries.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: