psコマンドは、プロセスの状態を一覧形式で表示します。オプションを省略した場合は、psコマンドを実行したユーザが起動しているプロセスのみを一覧表示します。
LinuxとFreeBSDでは、オプションをハイフン(-)を付けずに指定できますが、Solarisでは、ハイフンを付けて指定します。
topコマンドを使ってpsコマンドを実行することによって、この状態を繰り返し更新して見ることができます。
topコマンド
- ① a [FreeBSD][Linux]
- 全ユーザのプロセスの状態を表示します。
- ② f [FreeBSD][Linux]
- プロセスの親子関係をツリー状にして表示します。
- ③ u [FreeBSD][Linux]
- プロセスのユーザ名と開始時刻を表示内容に付加します。
- ④ x [FreeBSD][Linux]
- 制御端末を持たないデーモンなどのプロセスも合わせて表示します。
- ⑤ -e [Solaris][Linux]
- 全プロセスの情報を表示します。
- ⑥ -l [Solaris][Linux]またはl [FreeBSD][Linux]
- 詳細情報を表示します。
psコマンドのオプションには、Unix98オプションと呼ばれる形式とBSD形式と呼ばれるものがあります。Unix98オプションは、オプション文字にハイフンを付け、BSDオプションは逆にハイフンを付けません。FreeBSDはBSD形式で指定し、SolarisはUnix98オプションで指定します。Linuxはどちらの指定も可能で、また混在することもできます
デーモンプログラムとは、常に動作して何かを監視しているプログラムのことで、決められたタイミング(変化)をきっかけに、決められたアクションを起こします
$ ps -e
PID TTY TIME CMD
1 ? 00:00:04 init
2 ? 00:00:00 keventd
3 ? 00:00:00 kapmd
4 ? 00:00:00 ksoftirqd_CPU0
5 ? 00:00:00 kswapd
(略)
1106 pts/0 00:00:00 bash
1557 pts/0 00:00:00 telnet
1640 pts/0 00:00:00 ps
[takeda]$ ps -l
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
100 S 50615 3521 3520 0 76 0 - 693 wait4 pts/0 00:00:00 bash
000 R 50615 4336 3521 0 78 0 - 766 - pts/0 00:00:00 ps
[takeda]$
なお、表示される各列についてまとめると以下のとおりとなります。
① F
プロセスに関するフラグですが、現在は意味を持ちません。
② S
プロセスの状態を表します。状態を表す文字には以下のものがあります。
O:プロセスが実行中であることを表す
S:プロセスが休止状態であることを表す。プロセスがイベント(割り込み)を待っている状態
R:プロセスが実行可能状態であることを表す。プロセスは実行待ち行列上にあって、起動指示があれば実行できる状態
I:プロセスが生成中であることを表す(アイドル状態)
Z:プロセスがゾンビプロセスであることを表す。親プロセスとの関係が切れたゾンビ状態
③ UID
起動ユーザIDです。
④ PID
プロセスIDです。
⑤ PPID
親プロセスIDです。
⑥ C
CPUの利用率です。
⑦ PRI
プロセスの優先度を表示します。
⑧ NI
プロセスの優先度を表すNice値です。
⑨ ADDR
メモリアドレスです。
⑩ SZ
プロセスが確保しているメモリ容量を表示します。
⑪ WCHAN
プロセスが休止状態にあるとき止まっている場所を表示します。
⑫ TTY
起動したTTY端末です。
⑬ TIME
コマンドの実行時間です。
⑭ CMD
コマンド名です。
本コンテンツは「UNIXコマンド辞典 ビギナー編」(2003年)を元にWeb用に再編集したものです
All Contents copyright © 2003-2009 Odyssey Communications Inc., Shoeisha Co., Ltd.