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

System V 共有メモリー

System V 共有メモリーでは、プロセスによるセグメントの作成が可能です。連携するプロセスがそのメモリーセグメントに接続し (セグメントに対するアクセス権が必要)、セグメントに含まれるデータにアクセスできます。この機能はロード可能モジュールとして実装されます。/etc/system ファイルのエントリは shmsys: 接頭辞を含んでいる必要があります。 Solaris 7 リリースから、keyserv デーモンは System V 共有メモリーを使用するようになりました。

DBMS ベンダーは、パフォーマンスを高めるために、intimate shared memory (ISM) と呼ばれる特殊な共有メモリーを使用しています。共有メモリーセグメントを ISM セグメントにすると、そのセグメントのメモリーがロックされます。この機能によってより高速な入出力経路をたどることができ、メモリーの使用効率が向上します。セグメントを記述する一連のカーネル資源は、ISM モードでセグメントに接続するすべてのプロセスによって共有されます。

Solaris 10 リリースの共有メモリーリソースの変更については、「System V IPC 構成」を参照してください。

Solaris 10 リリースでの新しい資源制御の使用方法については、『Oracle Solaris のシステム管理 (Oracle Solaris コンテナ : 資源管理と Oracle Solaris ゾーン)』の第 6 章「資源制御 (概要)」を参照してください。

旧式の System V 共有メモリーパラメータの詳細は、「旧式または削除されたパラメータ」を参照してください。

segspt_minfree

備考欄

ISM 共有メモリーに割り当てることのできないシステムメモリーのページ数を指定します。

データ型

符号なし long

デフォルト

最初の ISM セグメントが作成されるときに使用可能なシステムメモリーの 5%

範囲

物理メモリーの 0 から 50 %

単位

ページ

動的か

はい

検査

ありません。値が小さすぎると、メモリーが ISM セグメントに消費される時に、システムがハングしたりパフォーマンスが大幅に低下することがあります。

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

大量のメモリーがあるデータベースシステムで ISM を使用する場合、このパラメータの値を引き下げることができます。ISM セグメントが使用されない場合には、このパラメータの効果はありません。大量のメモリーを備えたマシンでは、ほとんどの場合、最大値 128M バイト (0x4000) で十分です。

コミットレベル

変更の可能性あり