Linux
Tips |
|
プロセスの親子関係を表示するには
北浦訓行
2003/12/18
|
Linuxは動作中の全プログラムをプロセスとして管理する。プロセスは独立して動作するが、「あるプロセスが別のプロセスを起動する」というように、親子関係ができる。
親子関係にあるプロセスを停止するときは、最初に子プロセス、その次に親プロセスを止める。そうしないと、子プロセスがゾンビプロセス(消滅せずにシステム上に残っているのに動作していないプロセス)として残ってしまう場合がある。従って、killコマンドでプロセスを停止するときは、プロセスの親子関係を考慮する必要がある(親プロセスが停止したときに子プロセスが必ずゾンビプロセスになるとは限らない)。
プロセスの状態は、psコマンドで調べることが多い。psコマンドでも以下のようにすれば親子関係を表示可能だが、これではちょっと見にくい。
# ps --forest
PID TTY TIME CMD
3294 pts/0 00:00:00 su
3295 pts/0 00:00:00 bash
4096 pts/0 00:00:00 \_ ps ←psがbashから生成されていることが分かる |
そのようなときは、pstreeコマンドを使うと便利だ。オプションを指定しないで実行すると、initを起点としたプロセスが表示される。自分のプロセスだけを表示するには、ユーザーアカウントを指定してpstreeコマンドを実行する。
# pstree
init-+-apmd
|-atd
(省略)
|-gdm-binary---gdm-binary-+-X
| `-gdmgreeter
(省略) |
Linux Squareフォーラム Linux Tipsカテゴリ別インデックス |
Linux & OSS 記事ランキング
本日
月間