Solaris 10と11ではカーネルメモリアロケータにスラブ割り当てがまだ使用されていますか?

Solaris 10と11ではカーネルメモリアロケータにスラブ割り当てがまだ使用されていますか?

そうでない場合、何を使用していますか。ソースを提供してください。

答え1

OpenSolaris 10のソースコードの一部は公開されており、kmemそのリリースではスラブアロケータを使用しています。kmem.cコメントではアロケータについて詳しく説明しています。

イルモス用途同じアロケータ

を見てカーネルメモリアロケータを使用したデバッグページからOracle Solaris モジュラーデバッガガイドSolaris 11 (Express) の場合、そのリリースでアロケータが大幅に変更されたと考える理由はありません。

答え2

Solaris 10以前では、スラブアロケータ。

OpenSolaris リリース、OpenIndiana/SmartOS/etc Illumos ベースの OS、および (現在の) Solaris 11、つまり SunOS 5.11 ベースの OS では、引き続き使用されています。

VM2は、まだリリースされていないプロジェクトですが、将来の Solaris 11 バージョンで最終的に置き換えられる可能性があります (または置き換えられない可能性があります)。

Solaris リリースで slab がまだ使用されているかどうかを確認するには、次のコマンドを使用します。

echo ::kmem-slabs | mdb -k

関連情報