top のコマンド名表示
procps の top の COMMAND 列は c キーでコマンド名/コマンドライン表示を切り替えられる。(FreeBSD ではできない?)
例 | 取得元 | ||
コマンド名 | vi | /proc/PID/stat | |
コマンドライン | vi memo | /proc/PID/cmdline | execve の第二引数と同じ |
9738 ao 18 0 18712 6700 4352 T 0.0 1.3 0:01.27 vi 9738 ao 18 0 18712 6700 4352 T 0.0 1.3 0:01.30 vi memo [/proc/9738:1]$ tracelink `which vi` /usr/bin/vi -> /etc/alternatives/vi -> -rwxr-xr-x 1 root root 2061608 2007-12-02 20:06 /usr/local/bin/vim [/proc/9738:1]$ ll exe lrwxrwxrwx 1 ao ao 0 2008-02-28 00:20 exe -> /usr/local/bin/vim*
・情報取得
readproc(PT, ...)
→ PT->reader(PT,p)
→ simplereader
・表示
window_show // 全行表示
task_show // 1行表示
top.c, libproc-3.2.7.so make top export LD_LIBRARY_PATH=/path/to/libproc-3.2.7.soのディレクトリ
procファイルシステム調理法
http://web-old.turbolinux.co.jp/world/library/features/c_magazine/vol_03.html
ps を読む
http://www.dzeta.jp/~junjis/code_reading/index.php?ps%A4%F2%C6%C9%A4%E0