Linux豆知識 201

「/proc/<pid>/status」ファイル

このエントリーをはてなブックマークに追加
今回は「/proc/<pid>/status」ファイルについて(<pid>はプロセスID(数字))について見てみましょう。

例として、プロセスIDが1489である、sshが走っているstatusのファイルを見てみましょう。


$ cat /proc/1489/status
Name:    sshd
State:    S (sleeping)
Tgid:    1489
Ngid:    0
Pid:    1489
PPid:    1
TracerPid:    0
Uid:    0    0    0    0
Gid:    0    0    0    0
FDSize:    64
Groups:    
VmPeak:       82472 kB
VmSize:       82468 kB
VmLck:           0 kB

(以下略)

他にも沢山の表示項目がありますが、以下に一部だけ紹介します。

Name: プロセスによって実行されたコマンド
State: プロセスの現在の状態
Tgid: スレッドグループID
TracerPid: 該当プロセスをトレースしているプロセスのID
FDSize: 割り当てられているファイルディスクリプタスロット数
Groups: 補助グループ一覧
VmPeak: 仮想メモリサイズのピーク値
VmSize: 仮想メモリサイズ
VmLck: ロックされているメモリサイズ

Stateの項目に表示される内容は、

「R (running)」=実行中
「S (sleeping)」=休眠状態
「D (disk sleep)」=ディスク待ち休眠状態
「T (stopped)」=停止状態
「T (tracing stop)」=トレースによる停止
「Z (zombie)」=ゾンビ状態
「X (dead)」=死亡

を表します。

このファイルは、情報の宝庫です。「集計」「確認」「トラブルへの対処」などを行いたいというときに、とても役に立つファイルです。様々なシステム管理系のプログラムが、このような情報を参照しています。

システムの内部動作について理解を深めるための手がかりとして、このような情報が参照できることは覚えておいてください。

ページトップへ