web-dev-qa-db-ja.com

mallocと無料のコード

Gccコンパイラが現在使用しているmallocのコードはどこにありますか?私は実際に、元の関数とは少し異なる独自のmalloc関数を作成したいと思っています。フックなどを使用できることはわかっていますが、実際のコードを見たいと思っています。

14
MetallicPriest

MallocのPOSIXインターフェースは ここで定義 です。

GNU/Linux(glibc)のCライブラリがmallocをどのように実装しているかを知りたい場合は、 http://ftp.gnu.org/gnu/glibc/)からソースコードを入手してください。 そしてmalloc/malloc.cファイルを見てください。

Doug Leaによるメモリアロケータ の基本ドキュメントもあり、m(emory)alloc(ator)(これを注意深く読んでから、本当に独自のmallocを実装する必要があるかどうかを判断してください)。

18
Cédric Julien

古いリリースサイト でglibcの適切なリリースを調べてください。1 または ここ 。たとえば、glib 2.9を使用している場合は、 このアーカイブ にあります。ファイルを探すmalloc/malloc.c

これは、些細なライブラリコードではないことがわかります。


1 glibc-2.9以降にディレクトリ構造が変更されたようです。

7
wallyk

malloc()はglibcにある必要があります。

さらに読む
マルチスレッド
C++割り当てのトリック[ビデオ]

1
Karoly Horvath

私はソースをオンラインで閲覧することができます ここ

1
plafratt