名前
renice - 実行しているプロセスの優先順位を変更する
書式
renice priority [ [-p] pid ... ] [ [-g] pgrp ... ] [ [-u] user ... ]
説明
renice は動作中のプロセスのスケジューリング優先順位を変更する (複数のプロセスを同時に変更することもできる)。 以下の who パラメータは、プロセス ID、プロセスグループ ID、もしくはユーザ名と して解釈される。 プロセスグループを renice すると、 そのグループに属する全てのプロセスのスケジューリング優先順位が変更される。 ユーザ名に対する renice を行うと、 そのユーザが所有している全てのプロセスのスケジューリング優先順位が 変更される。 デフォルトでは、プロセス ID によって指定されたプロセスが処理対象となる。
renice のサポートするオプションは以下の通り:
-g | 強制的に who パラメータをプロセスグループの ID として解釈する。 |
-u | 強制的に who パラメータをユーザ名として解釈する。 |
-p | who がプロセス ID として解釈されるようにリセットする (これはデフォルトの解釈である)。 |
例えば renice +1 987 -u daemon root -p 32
プロセス ID 987 と 32 の優先度と、ユーザ daemon と root によって 所有されている全てのプロセスの優先度を変更する。
スーパーユーザでないユーザは、 自分が所有しているプロセスの優先度しか変更できない。 また nice 値 を増やすことしかできない。 増やせる値は 0 から
PRIO_MAX(20) までの範囲である。 (これは最重要なシステム管理命令を妨げないためである) スーパーユーザはあらゆるプロセスの優先度を変更でき、
PRIO_MIN(-20) から
PRIO_MAXの範囲で優先度の値を変更できる。 便利な優先度は: 20 (影響されたプロセスは、システムに実行するものがない場合だけ実行される) 0 (基本 のスケジューリング優先度)、 負の値 (とても早く実行される)
ファイル
/etc/passwd | |
ユーザ名とユーザIDの対応を取る。 | |
関連項目
getpriority(2), setpriority(2)
バグ
スーパユーザでないユーザは、一度スケジューリング優先度を 減らされたプロセスに関しても、これを増やすことはできない。 linux カーネル (現在 2.0.0) と linux libc (現在 5.2.18) とでは、 nice 値を設定するシステムコールのインターフェースが完全に同じでない。 したがって renice は 変更前の nice 値として正しい値を返さないことがある。
履歴
renice は BSD 4.0 から登場した。