Linuxのプロセス管理†
プロセスの確認†
ps ※実行したユーザが起動しているプロセスの情報を表示
- 表示される項目
| 項目 | 説明 |
| UID | プロセスを所有するユーザーのID |
| PID | プロセスID |
| PPID | 親プロセスのプロセスID |
| PRI | |
| NI | プロセスのnice値(優先度)。範囲は-20(最高)〜19(最低) |
| VSZ | メモリ使用量。データセグメント+スタックセグメント |
| RSS | 実メモリのサイズ |
| WCHAN | カーネル関数名(プロセスが休眠状態の時) |
| STAT | プロセスの状態(S:スリープ,R:CPUの空き待ち,D:IO処理中,Z:プロセス終了し親による終了処理待ち,W:スワップアウト,I:アイドルカーネル) |
| START | 開始時刻 |
| TIME | CPUを使った累計時間 |
| TTY | 端末名 |
| COMMAND | 実行コマンド名 |
| %CPU | CPU使用時間の割合 |
| %MEM | 全メモリに対するメモリ使用率 |
| MAJFL | メジャーフォールトの発生回数 |
| TRS | テキストセグメントのサイズ |
| DRS | データセグメントのサイズ |
pgrep†
top†
- 画面の表示
- 1行目:システムの稼働状況
- 2行目:実行プロセス数
- 3行目:CPUの状態
- 4行目:メモリの状態
- 5行目:スワップの状態
- 6行目以降:プロセスごとの情報
- 表示される項目(psとほぼ同じ。異なるもののみ記載)
| 項目 | 説明 |
| DATA | メモリ使用量。データセグメント+スタックセグメント |
| RES | 実メモリのサイズ |
| S | プロセスの状態(S:スリープ,R:CPUの空き待ち,D:IO処理中,Z:プロセス終了し親による終了処理待ち,W:スワップアウト,I:アイドルカーネル) |
| nFLT | メジャーフォールトの発生回数 |
| CODE | テキストセグメントのサイズ |
| DATA | データセグメントのサイズ |
htop†
pstree†
- 実行中のプロセス情報をツール状で表示する
pstree
/var/run/*.pid†
- PIDが記述されているファイルの内容を表示
cat /var/run/httpd.pid
プロセスの終了†
kill†
- プロセスを終了する(PIDを指定する) ※下記3種類とも動作は同じ
- kill -<signal-name/signal-id> PID
- kill -s <signal-name/signal-id> PID
- kill -SIG<signal-name> PID
- 使い方の参考
- TERMシグナルで終了しない場合、KILLシグナルで強制終了する。
- 通常、親プロセスを強制終了すると、子プロセスも終了する。
- シグナルの種類(代表的なもののみ)
| シグナルID | シグナル名 | 説明 |
| 1 | HUP | ハングアップ |
| 2 | INT | キーボード入力の割り込み(Ctl+C) |
| 9 | KILL | 強制終了 |
| 15 | TERM | 終了(デフォルト) |
| 18 | CONT | 停止中のプロセスを再開 |
| 19 | STOP | 一時停止 |
killall†
pkill†
プロセスの優先度の指定†
nice†
- ナイス値の範囲
- -20 〜 19(値が小さいほど優先順位が高くなる)
renice†
パッケージ†