ps(1)ps(1)Nameps - print process status statistics
Syntaxps [ options ] [ namelist ] [ corefile ]
Description
The command displays information about processes. Information on pro‐
cesses can change while is running, so the information it gives is a
snapshot taken at a given time.
If you omit the -a option, only your processes are candidates to be
displayed by Specifying the -a option causes information about other
users' processes to be displayed; specifying the -x option includes
information on processes without control terminals.
You must use the -k option and specify both the namelist and corefile
arguments when you look at a crash dump. The namelist argument indi‐
cates that information is to be gathered using the specified system
namelist file. (The namelist file is a kernel image file). If you
omit namelist, uses The core argument indicates that information is to
be gathered using the specified core file. If you omit core, uses
Options
-# Represents any given process number and must be the last
option given. You cannot use this option with the -a and -tx
options.
-C Causes the %CPU field of the display to reflect the absolute
percentage of cpu used by the process for scheduling during
its resident time .
-S Causes the TIME field of the display to reflect the amount of
user+system time spent by a process and its children.
-a Displays information for processes executed from all users'
terminals. The default is to show processes executed from
your terminal only. You cannot use this option with the -#
or -t option.
-c Displays the command names as stored internally in the system
for accounting purposes instead of the command arguments,
which are kept in the process address space. This display is
more reliable, if less informative, because a process is free
to destroy the latter information.
-e Displays the environment as well as the command arguments.
-g Displays all processes within the process group. Without
this option, displays only ``interesting'' processes. Pro‐
cesses that are process group leaders are not considered
interesting; therefore, top-level command interpreters and
processes waiting for users to log in are normally not shown.
-k Uses the file specified in the core argument in place of and
If you specify the -k option but no core argument, uses
-l Displays information in long format, showing the fields PPID,
CP, PRI, NI, ADDR, SIZE, RSS, and WCHAN as described under
Output Fields.
-s Adds the size SSIZ of the kernel stack of each process to the
basic output format for use by system administrators.
-tx Displays information for only the specified terminal. This
option restricts output to processes whose controlling termi‐
nal is x. Specify x in the same format as displays terminal
names. For example, displays for tty3, for console, for
ttyd0, for processes with no terminal, and for processes at
the current terminal. This option must be the last one
given. You cannot use this option with the -# or -a options.
-u Displays user-oriented output, which includes fields USER,
%CPU, and %MEM. This option also displays SZ and RSS, which
are computed differently than they are for the -l and -v
options. The SZ field is computed as SIZE + TSIZ (virtual
size plus size of text). The RRS field is computed as RSS +
(TRS/xccount) where xccount is the number of processes cur‐
rently sharing the text.
-v Displays process system time and user time in addition to
cumulative time. This display includes fields RE, SL,
PAGEIN, SIZE, RSS, LIM, TSIZ, TRS, %CPU, and %MEM, described
under Output Fields.
-w Produces 132-column rather than 80 column output. If
repeated, as -ww, produces arbitrarily wide output. This
option allows to display more of wide displays.
-x Displays information for all processes, including those not
executed from terminals.
Output Fields
The command displays the following fields in all output formats:
PID The process identification (PID) number
TT The control terminal of the process
TIME The time, including both user and system time
STAT The state of the process given by a sequence of five letters,
such as RWNAV.
The first letter indicates the run status of the process:
R The process is running.
T The process is stopped.
P The process is in page wait.
D The process is in disk (or other short-term) wait.
S The process is sleeping for less than about 20 seconds.
I The process is idle (sleeping longer than about 20 sec‐
onds).
The second letter indicates whether a process is swapped out:
W The process is swapped out.
Z The process is killed, but not yet removed.
(blank)
The process is in core.
> The process has a specified soft limit on memory
requirements and is exceeding that limit. This type
of process is not swapped.
The third letter indicates whether a process is running with
an altered CPU scheduling priority, using
N The process priority is reduced.
< The process priority has been artificially raised.
(blank)
The process is running without special treatment.
The fourth letter indicates any special treatment of the
process for virtual memory:
A Represents VA_ANOM. This status typically represents a
process using a disk more efficiently by removing gaps
caused by deletes and then collecting the remaining
data.
S Represents VA_SEQL. This status is typical of large
image processing programs that are using virtual memory
to sequentially address voluminous data.
(blank)
Represents VA_NORM.
The fifth letter indicates whether the process is a vector
process:
V Indicates that the process is using vector hardware.
Only processes running on a VAX processor that con‐
tains vector hardware can have this status.
(blank)
Indicates the process is not using vector hardware.
The following fields are not displayed in all output formats:
USER Names the owner of the process.
%CPU Describes the use of the CPU by the process. This percentage
is a decaying average over a minute or less of previous
(real) time. The time base over which this percentage is
computed varies because processes may be new. The sum of all
%CPU fields can therefore exceed 200%.
NICE (or NI)
Indicates the process scheduling increment. For further
information, see
SIZE (or SZ)
Shows the virtual size of the process in 1024-byte units.
RSS Shows the real memory (resident set) size of the process in
1024-byte units.
LIM Indicates the soft limit on memory used, which is specified
by a call to If no limit has been specified, this limit is
shown as
TSIZ Shows the size of the text (shared program) image.
TRS Shows the size of resident (real memory) set of text.
%MEM Gives the percentage of real memory used by this process.
RE Indicates the residency time of the process (seconds in
core).
SL Indicates the sleep time of the process (seconds blocked).
PAGEIN Shows the number of disk input and output operations result‐
ing from references by the process to pages not loaded in
core.
UID Shows the numerical user identification number of the process
owner.
PPID Shows the numerical identification number of the parent of
process.
CP Displays the short-term CPU use factor used in scheduling.
PRI Displays process priority. (This value is nonpositive when
the process is in a wait state that cannot be interrupted.)
ADDR Displays the swap address of the process or page frame of the
beginning of the user page table entries.
WCHAN Indicates the event for which the process is waiting (an
address in the system), with the initial part of the address
truncated. For example, the address 80004000 displays as
4000.
F Displays flags associated with the process as in
SLOAD 00000001 Process is resident in memory.
SSYS 00000002 System process: swapper, pager,
idle (RISC only), trusted path daemon.
SLOCK 00000004 Process is being swapped out.
SSWAP 00000008 Process requested to swap out for page table
growth.
STRC 00000010 Traced.
SWTED 00000020 Used in tracing.
SULOCK 00000040 Locked in by plock(2).
SPAGE 00000080 Process is waiting for page-in to complete.
SKEEP 00000100 Process is protected from swapout while transferring.
resources to another process.
SOMASK 00000200 Used by sigpause(2).
SWEXIT 00000400 Process is exiting.
SPHYSIO 00000800 Process is protected from swapout while doing physical
input or output.
SVFORK 00001000 Process resulted from a vfork(2) that is not
yet complete.
SVFDONE 00002000 Parent has received resources returned by
vfork(2) child.
SNOVM 00004000 Process has no virtual memory, as it is a
parent in the context of vfork(2).
SPAGI 00008000 Process is demand-paging data pages from its
text gnode.
SSEQL 00010000 Process has advised of sequential memory access.
SUANOM 00020000 Process has advised of random memory access.
SXCTDAT 00080000 Process has indicated intent to execute data
or stack (RISC only).
SNOCLDSTP 00100000 POSIX environment: no SIGCLD generated when
children stop (formerly named SOUSIG).
SOWEUPC 00200000 Process is owed a profiling tick.
SSEL 00400000 Used by select(2).
SLOGIN 00800000 Process is a login process.
SPTECHG 01000000 The page table entries for the process have changed.
SLKDONE 04000000 System V file lock has been applied.
SFIXADE 08000000 Fix of unaligned accesses is being attempted
(RISC only).
SEXECDN 10000000 Process has done an execve(2).
SIDLEP 20000000 The idle process (RISC only).
A process that has a parent and has exited, but for which the parent
has not yet waited, is marked <defunct>. A process that is blocked
trying to exit is marked <exiting>. The command determines the filename
and arguments given when the process was created by examining memory or
the swap area. The method is unreliable because, for example, a
process can destroy this information. The filename and arguments dis‐
plays might be incorrect.
Files
Searched to find swap device and terminal names
Swap device
Kernel memory
User process information
Core file
System namelist
See Alsokill(1), w(1), getpriority (2), getrlimit(2), dump(5)ps(1)