この記事はLinux Advent Calendar 2017の1日目の記事です。Linuxのスラブアロケーター仕組みを多少弄りながら学んでみます。 スラブアロケーターとはなんぞやというところはSlab allocation - Wikipediaを参照してください。スラブアロケーターはSolaris5.4で最初に実装されたようです。 Linuxカーネルプログラミングで動的にメモリを確保するのに使用するkmalloc()もスラブアロケーターを使用しています。 目次 Linuxのスラブアロケーター SLAB SLUB SLOB 各スラブアロケーターのまとめ 実装 スラブ用のページ 弄ってみる 最低限必要な準備 実装開始 データ構造 ロック 初期化 kmem_cache_create() スラブオブジェクトのアロケート スラブオブジェクトのfree 実験 ボトルネック この後 Linuxのスラ
![弄りながらなんとなく学ぶLinuxのスラブアロケーター - φ(・・*)ゞ ウーン カーネルとか弄ったりのメモ](https://cdn-ak-scissors.b.st-hatena.com/image/square/5cc2926434bbdeafb2797ff89ef60b7ecd83f0c8/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fm%2Fmasami256%2F20171124%2F20171124171302.png)