C

mallocを作ったよ

sbrkでシンプルなmallocを実装しているのはネット上でいくつか見つけたんだけど、sbrkとmmapと両方使っている実装はそれなりに手の込んだものばかりな気がしたので、両方使う単純なmallocを作ってみた。

できたものは<こちら>に置きました。

僕のようにC言語学ぶためにmalloc自作する人は他にもいると思うので、メモも兼ねて参考になった資料を紹介しておきます:

メモリー管理の内側

  • とても単純なmalloc、freeの実装。
  • sbrkのみ利用。
  • データブロックのヘッダはリスト構造ではない。

Write a simple memory allocator

  • 単純なmalloc、free、realloc、callocの実装。
  • sbrkのみ利用。
  • データブロックのヘッダはリスト構造。
  • スレッドセーフ。
  • 英語。

malloc(3)のメモリ管理構造

  • glibcのmallocの実装の紹介。
  • 詳しい解説。