Код для malloc и Free

где я могу найти код для malloc, который мой компилятор gcc использует в данный момент? Я действительно хочу написать свою собственную функцию malloc, которая будет немного отличаться от оригинальной. Я знаю, что могу использовать hooks et all, но я хочу увидеть настоящий код.

4 ответов


интерфейс POSIX malloc является определено здесь.

Если вы хотите узнать, как библиотека C в GNU/Linux (glibc) реализует malloc, пойти и получить исходный код http://ftp.gnu.org/gnu/glibc/ и посмотрите на .

существует также базовая документация распределитель памяти по Doug Lea это описывает теорию m(Эмори)выделено(АТОР) (читать это carrefully, а затем решите, действительно ли вам нужно реализовать свой собственный malloc).


посмотрите в соответствующем выпуске glibc на старый сайт релиза1 или здесь. Например, если вы используете glib 2.9, он находится в этот архив. Ищите файл malloc/malloc.c.

вы увидите, что это не тривиальный кусок кода библиотеки.


1 похоже, они изменили структуру каталогов после glibc-2.9.


malloc() должно быть в glibc.

Более Дальнеишее Чтение
многопоточность
выделение C++ трюки [видео]


Я могу просматривать источник в интернете здесь.