[Mona]

Doug Lea氏の高速 mallocMona ツリーに取り込みました。
これでユーザー側の malloc はかなり信頼性・速度が向上したと思います。


プログラムを書いているときに意識している人は少ないと思いますが、実はC言語のライブラリの関数の中にはOSに依存しているものとしていないものがあります。


たとえば、 strcpyは文字列のコピーをします。これはOSへの依存度が小さくLinuxから Windowsに持ってきても変更なしで動くでしょう。
それに対して、putsは文字列を出力しますが、これはOSに依存しています。


で、malloc はメモリ割り当てをするわけですがバリバリOSに依存しそうですね。実際ヒープとの兼ね合いやページの扱い等々かなり面倒なところがかかわります。


ところがこのDouga Lea氏のコードは非常にうまく作られていてなるべく OS、アーキテクチャに依存しないような構造となっています。
メモリを割り当ているということだけに特化して作られていて Mona にも簡単に取り込むことができました。


いやはやすばらしいライブラリです。そして教えてくださった id:yaneuraoさんありがとうございました。