Solaris 環境における他のスケジューリングクラスと同様に、FSS では、スケジューリングクラスを設定するコマンドや、スケジューラのチューンアップパラメータを設定するコマンド、個々のプロセスのプロパティを設定するコマンドを使用できます。
dispadmin コマンドを使用して、システムのデフォルトのスケジューラとして FSS を設定します。
# dispadmin -d FSS |
この変更指定は次の再起動で有効になります。再起動後は、システムのすべてのプロセスが FSS スケジューリングクラスで実行されます。
デフォルトのスケジューリングクラスを変更した後で再起動しなくても、プロセスを TS スケジューリングクラスから FSS スケジューリングクラスに手動で移動できます。
スーパーユーザーになります。
init プロセス (pid 1) を FSS スケジューリングクラスに移動します。
# priocntl -s -c FSS -i pid 1 |
すべてのプロセスを TS スケジューリングクラスから FSS スケジューリングクラスに移動します。
# priocntl -s -c FSS -i class TS |
すべてのプロセスは、再起動後には再び TS スケジューリングクラスで実行されます。
TS 以外のデフォルトのクラスを使用している場合、たとえば、デフォルトで IA クラスを使用するウィンドウ環境がシステムで実行されている場合があります。デフォルトのスケジューリングクラスを変更した後で再起動しなくても、すべてのプロセスを FSS スケジューリングクラスに手動で移動できます。
スーパーユーザーになります。
init プロセス (pid 1) を FSS スケジューリングクラスに移動します。
# priocntl -s -c FSS -i pid 1 |
すべてのプロセスを現在のスケジューリングクラスから FSS スケジューリングクラスに移動します。
# priocntl -s -c FSS -i all |
すべてのプロセスは、再起動後には再びデフォルトのスケジューリングクラスで実行されます。
特定のプロジェクト内のプロセスを現在のスケジューリングクラスから FSS スケジューリングクラスに手動で移動できます。
# priocntl -s -c FSS -i projid 10 |
プロジェクトのプロセスは、再起動後には再びデフォルトのスケジューリングクラスで実行されます。
dispadmin コマンドを使用して、FSS スケジューラのタイムクォンタム (time quantum) 値を調べ、調整できます。タイムクォンタムとは、スレッドがプロセッサに上で実行を開始してからそのプロセッサを放棄するまでの時間量のことです。FSS スケジューラの現在のタイムクォンタムを表示するには、次のように入力します。
$ dispadmin -c FSS -g # # Fair Share Scheduler Configuration # RES=1000 # # Time Quantum # QUANTUM=110 |
-g オプションを使用するときに、同時に -r オプションも指定すると、タイムクォンタム値の表示に使用する最小単位を指定できます。最小単位を指定しないと、タイムクォンタム値はデフォルトのミリ秒で表示されます。次のコマンドを入力します。
$ dispadmin -c FSS -g -r 100 # # Fair Share Scheduler Configuration # RES=100 # # Time Quantum # QUANTUM=11 |
FSS スケジューリングクラスにスケジューリングパラメータを設定するには、dispadmin -s を使用します。file 内の値は、-g オプションで得られる出力と同じ形式で指定する必要があります。これらの値は、カーネル内の現在の値を上書きします。次のコマンドを入力します。
$ dispadmin -c FSS -s file |
FSS スケジューラの使用方法については、priocntl(1)、ps(1)、dispadmin(1M)、および FSS(7) を参照してください。