Oracle Solaris カーネルのチューンアップ・リファレンスマニュアル

System V 共有メモリーパラメータ

shmsys:shminfo_shmmni (Solaris 9 リリース)

Solaris 10 リリースでは旧式

備考欄

作成できる共有メモリーセグメント数に関するシステム全体の制限。

データ型

符号付き整数

デフォルト

100

範囲

0 から MAXINT

動的か

いいえ。shminfo 構造体の shmmni フィールドにロードされます。

検査

System V 共有メモリーに関係するデータ構造体が最大数存在する場合に消費され得る空間量を、モジュールをロードしたときに使用可能なカーネルメモリーの 25% と比較します。消費されるメモリーが大きすぎると、モジュールをロードする試みは失敗します。

どのような場合に変更するか

システムの限度が小さすぎる場合。一般には、ソフトウェアベンダーの推奨があった場合に変更します。

コミットレベル

変更の可能性あり

shmsys:shminfo_shmmax (Solaris 9 リリース)

Solaris 10 リリースでは旧式

備考欄

作成できるSystem V 共有メモリーセグメントの最大サイズ。このパラメータは、アプリケーションが要求されたメモリーセグメントを作成するために必要な物理リソースが実際にあるか調べる前に検査される上限値です。

サイズが 0 の共有メモリーセグメントや、指定した値より大きいサイズの共有メモリーセグメントを作成しようとすると、 EINVAL エラーとなります。

このパラメータは、共有メモリーセグメントのサイズとしてオペレーティングシステムが受け付けることができる最大の値だけを指定します。セグメントを作成できるかどうかは、システム上で使用可能なスワップ空間の量に完全に依存します。32 ビットプロセスの場合は、接続されるセグメントのためにプロセスのアドレス空間に十分な容量があるかどうかも影響します。

データ型

符号なし long

デフォルト

8,388,608

範囲

32 ビットシステムでは 0 から MAXUINT32、64 ビットシステムでは 0 から MAXUINT64

単位

バイト

動的か

いいえ。shminfo 構造体の shmmax フィールドにロードされます。

検査

なし

どのような場合に変更するか

デフォルト値では足りない場合。一般には、ソフトウェアベンダーの推奨があった場合に変更します。ただし、共有メモリーセグメントのサイズを制限する必要がある場合以外は、このパラメータに利用できる最大値を設定しても副次的影響はありません。

コミットレベル

変更の可能性あり

shmsys:shminfo_shmmin (Solaris 8 リリース)

Solaris 9 リリースでは旧式。変数は互換性の理由でカーネルに残されていますが、使用されません。

shmsys:shminfo_shmseg (Solaris 8 リリース)

Solaris 9 リリースでは旧式。変数は互換性の理由でカーネルに残されていますが、使用されません。