INTRODUCTION

psinfo shows process information and statistics using the kernel /proc interface.
This information includes:
-Process state, environment, arguments and flags
-CPU usage
-Scheduling
-I/O usage
-Virtual memory status
-Pagefaults
-Capabilities
-Signals
psinfo is useful for providing a detailed view of the current state of an
application when diagnosing issues or performance problems.

INSTALLATION

psinfo requires Linux kernel 2.6.0 or greater. Some features will not work in
earlier versions and are marked by n/a in output.
compile: make
install: make install

psinfo can be run as an ordinary user but certain features (environment, executable,
current working directory and root directory) require root rights and are 
marked n/a in output otherwise.

CONTACT

Bug reports and patches can be sent by e-mail to Ward van Wanrooij <ward@ward.nu>

DOWNLOAD

Download psinfo release 0.12: psinfo-0.12.tar.gz.
Browse psinfo release 0.12: web interface.
psinfo - v0.12 - 20100704

EXAMPLE OUTPUT
General
	Process id: 1162
	Parent process id: 1
	Process group: 1162
	Session id: 1162
	Threads: 1 (1162)
	State: S interruptable sleeping 
	Sleeping average: 98 %
	TTY: (none)
	Start time: Mon Sep 15 14:39:01 2008
	Process name: master
	Executable: /usr/libexec/postfix/master
	Root directory: /
	Working directory: /var/spool/postfix
	Arguments: 0 - /usr/libexec/postfix/master
	Environment: 0 - MAIL_CONFIG=/etc/postfix
	             1 - sample_directory=/usr/share/doc/postfix-2.3.3/samples
	             2 - setgid_group=postdrop
	             3 - sendmail_path=/usr/sbin/sendmail.postfix
	             4 - mailq_path=/usr/bin/mailq.postfix
	             5 - manpage_directory=/usr/share/man
	             6 - readme_directory=/usr/share/doc/postfix-2.3.3/README_FILES
	             7 - newaliases_path=/usr/bin/newaliases.postfix
	             8 - PATH=/bin:/usr/bin:/sbin:/usr/sbin
	             9 - PWD=/var/spool/postfix
	             10 - queue_directory=/var/spool/postfix
	             11 - LANG=C
	             12 - mail_owner=postfix
	             13 - daemon_directory=/usr/libexec/postfix
	             14 - SHLVL=1
	             15 - config_directory=/etc/postfix
	             16 - MAIL_LOGTAG=postfix
	             17 - html_directory=no
	             18 - command_directory=/usr/sbin
	             19 - OLDPWD=/etc/postfix
	             20 - _=/usr/libexec/postfix/master
	Flags: 0000000000400100
	       0000000000000100 - PF_SUPERPRIV
	       0000000000400000 - PF_RANDOMIZE
CPU usage
	Nice: 0
	Priority level: 15
	Realtime priority: 0
	Scheduling policy: default Linux time-sharing
	Runs: 546478
	Seconds:
	              user    system     guest     total
	process       1.15      9.60      0.00     10.75
	children     64.10     85.53      0.00    149.63
	total        65.25     95.13      0.00    160.38
I/O
	File descriptor table size: 256
	Time spent waiting for blocking I/O: 33.30 s
	Statistics:
	          syscalls   tput kB   disk kB
	read        723503      7896     18792
	written      73486        71        84
	cancelled        -         -         0
Memory
	Out-of-memory killer score: 708
	Out-of-memory killer adjustment: 0
	VM size: 54060 kB (peak 54080 kB)
	VM locked size: 0 kB
	VM resident set size: 1108 kB (peak 2236 kB)
	VM data segment size: 480 kB
	VM stack segment size: 88 kB
	VM text segment size: 132 kB
	VM shared library size: 5968 kB
	VM page table entries size: 124 kB
	Pagefaults:
	             minor     major
	process     428666       738
	children  27879291     11823
	total     28307957     12561
Privilege
	Identity:
	              real effective     saved        fs
	user             0         0         0         0
	group            0         0         0         0
	Cap inheritable:  0000000000000000
	Cap permitted:    00000000fffffeff
	                  0 - CAP_CHOWN
	                  1 - CAP_DAC_OVERRIDE
	                  2 - CAP_DAC_READ_SEARCH
	                  3 - CAP_FOWNER
	                  4 - CAP_FSETID
	                  5 - CAP_KILL
	                  6 - CAP_SETGID
	                  7 - CAP_SETUID
	                  9 - CAP_LINUX_IMMUTABLE
	                  10 - CAP_NET_BIND_SERVICE
	                  11 - CAP_NET_BROADCAST
	                  12 - CAP_NET_ADMIN
	                  13 - CAP_NET_RAW
	                  14 - CAP_IPC_LOCK
	                  15 - CAP_IPC_OWNER
	                  16 - CAP_SYS_MODULE
	                  17 - CAP_SYS_RAWIO
	                  18 - CAP_SYS_CHROOT
	                  19 - CAP_SYS_PTRACE
	                  20 - CAP_SYS_PACCT
	                  21 - CAP_SYS_ADMIN
	                  22 - CAP_SYS_BOOT
	                  23 - CAP_SYS_NICE
	                  24 - CAP_SYS_RESOURCE
	                  25 - CAP_SYS_TIME
	                  26 - CAP_SYS_TTY_CONFIG
	                  27 - CAP_MKNOD
	                  28 - CAP_LEASE
	                  29 - CAP_AUDIT_WRITE
	                  30 - CAP_AUDIT_CONTROL
	                  31 - CAP_FS_MASK
	Cap effective:    00000000fffffeff
	                  0 - CAP_CHOWN
	                  1 - CAP_DAC_OVERRIDE
	                  2 - CAP_DAC_READ_SEARCH
	                  3 - CAP_FOWNER
	                  4 - CAP_FSETID
	                  5 - CAP_KILL
	                  6 - CAP_SETGID
	                  7 - CAP_SETUID
	                  9 - CAP_LINUX_IMMUTABLE
	                  10 - CAP_NET_BIND_SERVICE
	                  11 - CAP_NET_BROADCAST
	                  12 - CAP_NET_ADMIN
	                  13 - CAP_NET_RAW
	                  14 - CAP_IPC_LOCK
	                  15 - CAP_IPC_OWNER
	                  16 - CAP_SYS_MODULE
	                  17 - CAP_SYS_RAWIO
	                  18 - CAP_SYS_CHROOT
	                  19 - CAP_SYS_PTRACE
	                  20 - CAP_SYS_PACCT
	                  21 - CAP_SYS_ADMIN
	                  22 - CAP_SYS_BOOT
	                  23 - CAP_SYS_NICE
	                  24 - CAP_SYS_RESOURCE
	                  25 - CAP_SYS_TIME
	                  26 - CAP_SYS_TTY_CONFIG
	                  27 - CAP_MKNOD
	                  28 - CAP_LEASE
	                  29 - CAP_AUDIT_WRITE
	                  30 - CAP_AUDIT_CONTROL
	                  31 - CAP_FS_MASK
	Cap bounding set: fffffffffffffeff
	                  0 - CAP_CHOWN
	                  1 - CAP_DAC_OVERRIDE
	                  2 - CAP_DAC_READ_SEARCH
	                  3 - CAP_FOWNER
	                  4 - CAP_FSETID
	                  5 - CAP_KILL
	                  6 - CAP_SETGID
	                  7 - CAP_SETUID
	                  9 - CAP_LINUX_IMMUTABLE
	                  10 - CAP_NET_BIND_SERVICE
	                  11 - CAP_NET_BROADCAST
	                  12 - CAP_NET_ADMIN
	                  13 - CAP_NET_RAW
	                  14 - CAP_IPC_LOCK
	                  15 - CAP_IPC_OWNER
	                  16 - CAP_SYS_MODULE
	                  17 - CAP_SYS_RAWIO
	                  18 - CAP_SYS_CHROOT
	                  19 - CAP_SYS_PTRACE
	                  20 - CAP_SYS_PACCT
	                  21 - CAP_SYS_ADMIN
	                  22 - CAP_SYS_BOOT
	                  23 - CAP_SYS_NICE
	                  24 - CAP_SYS_RESOURCE
	                  25 - CAP_SYS_TIME
	                  26 - CAP_SYS_TTY_CONFIG
	                  27 - CAP_MKNOD
	                  28 - CAP_LEASE
	                  29 - CAP_AUDIT_WRITE
	                  30 - CAP_AUDIT_CONTROL
	                  31 - CAP_FS_MASK
Signals
	User signal queue: 0/1088
	Pending private: 0000000000000000
	Pending shared:  0000000000000000
	Blocked:         0000000000000000
	Ignored:         0000000000001000
	                 13 - SIGPIPE
	Caught:          000000018001644f
	                 1 - SIGHUP
	                 2 - SIGINT
	                 3 - SIGQUIT
	                 4 - SIGILL
	                 7 - SIGBUS
	                 11 - SIGSEGV
	                 14 - SIGALRM
	                 15 - SIGTERM
	                 17 - SIGCHLD