maxusers は、当初、システムがサポートできるログインユーザーの数を指定するものでした。カーネルの生成時に、この設定値に基づいて各種テーブルの大きさが決定されました。Oracle Solaris 最新リリースでは、そのサイジングの大半をシステム上のメモリー容量に基づいて行います。したがって、maxusers の使い方がこれまでとは大きく変わりました。引き続き、maxusers に基づいて決定されるサブシステムには次のものがあります。
システムで使用できるプロセスの最大数
システムに保持される割り当て構造体の数
ディレクトリ名検索キャッシュ (DNLC) の大きさ
符号付き整数
M バイト単位のメモリーの容量と 2048 のどちらか小さい方、およびその値と nCPU x 8 のどちらか大きい方
/etc/system ファイル内に設定されていない場合、物理メモリーのサイズに基づいて、1 から 2048 と nCPU x 8 のどちらか大きい方まで
/etc/system ファイル内に設定されている場合、1 から 4096 と nCPU x 8 のどちらか大きい方まで
ユーザー数
いいえ。このパラメータに依存する変数を計算したあとに maxusers がふたたび参照されることはありません。
許容される最大数より値が大きい場合、最大数にリセットされます。その作用に関するメッセージが表示されます。
システムによって計算されたデフォルトのユーザープロセス数が小さすぎる場合。このような状況は、システムコンソールに表示される次のメッセージでわかります。
out of processes
次の状況のように、デフォルトのプロセス数が多すぎる場合に、このパラメータを変更するかもしれません。
多量のメモリーがあり、動作しているプロセスの数が比較的少ないデータベースサーバーでは、maxusers のデフォルト値を少なくすることによってシステムメモリーを節約できます。
多量のメモリーがあり、動作しているプロセスがほとんどないファイルサーバーでは、この値を減らせる場合があります。しかし、その場合、DNLCのサイズを明示的に設定する必要があります。ncsizeを参照してください。
変更の可能性あり