PS(1-SysV) RISC/os Reference Manual PS(1-SysV)
NAME
ps - report process status
SYNOPSIS
ps [ options ]
DESCRIPTION
ps prints certain information about active processes.
Without options, information is printed about processes
associated with the controlling terminal. The output con-
sists of a short listing containing only the process ID,
terminal identifier, cumulative execution time, and the com-
mand name. Otherwise, the information that is displayed is
controlled by the selection of options.
Options accept names or lists as arguments. Arguments can
be either separated from one another by commas or enclosed
in double quotes and separated from one another by commas or
spaces. Values for proclist and grplist must be numeric.
The options are given in descending order according to
volume and range of information provided:
-e Print information about every process
now running.
-d Print information about all processes
except process group leaders.
-a Print information about all processes
most frequently requested: all those
except process group leaders and
processes not associated with a termi-
nal.
-f Generate a full listing. (See below for
significance of columns in a full list-
ing.)
-l Generate a long listing. (See below.)
-n name Take argument signifying an alternate
system name in place of /unix.
-t termlist List only process data associated with
the terminal given in termlist. Termi-
nal identifiers may be specified in one
of two forms: the device's file name
(e.g., tty04) or, if the device's file
name starts with tty, just the digit
identifier (e.g., 04).
-p proclist List only process data whose process ID
numbers are given in proclist.
-u uidlist List only process data whose user ID
number or login name is given in
uidlist. In the listing, the numerical
user ID will be printed unless you give
the -f option, which prints the login
Printed 1/15/91 Page 1
PS(1-SysV) RISC/os Reference Manual PS(1-SysV)
name.
-g grplist List only process data whose process
group leader's ID number(s) appears in
grplist. (A group leader is a process
whose process ID number is identical to
its process group ID number. A login
shell is a common example of a process
group leader.)
Under the -f option, ps tries to determine the command name
and arguments given when the process was created by examin-
ing the user block. Failing this, the command name is
printed, as it would have appeared without the -f option, in
square brackets.
Page 2 Printed 1/15/91
PS(1-SysV) RISC/os Reference Manual PS(1-SysV)
The column headings and the meaning of the columns in a ps
listing are given below; the letters f and l indicate the
option (full or long, respectively) that causes the
corresponding heading to appear; all means that the heading
always appears. Note that these two options determine only
what information is provided for a process; they do not
determine which processes will be listed.
F (l) Flags (hexadecimal and additive) associated
with the process
MIPS Computers
00 Process has terminated: process
table entry now available.
01 A system process: always in primary
memory.
02 Parent is tracing process.
04 Tracing parent's signal has stopped
process: parent is waiting
[ptrace(2)].
08 Process cannot wakeup by signal.
10 Process currently in primary
memory.
20 Process currently in primary
memory; locked until an event com-
pletes.
S (l) The state of the process:
O Process is running on a processor.
S Sleeping: process is waiting for an
event to complete.
R Runnable: process is on run queue.
I Idle: process is being created.
Z Zombie state: process terminated
and parent not waiting.
T Traced: process stopped by a signal
because parent is tracing it.
X SXBRK state: process is waiting for
more primary memory.
UID (f,l) The user ID number of the process owner
(the login name is printed under the -f
option).
Printed 1/15/91 Page 3
PS(1-SysV) RISC/os Reference Manual PS(1-SysV)
PID (all) The process ID of the process (this datum
is necessary in order to kill a process).
PPID (f,l) The process ID of the parent process.
C (f,l) Processor utilization for scheduling.
PRI (l) The priority of the process (higher numbers
mean lower priority).
NI (l) Nice value, used in priority computation.
ADDR (l) The memory address of the process.
SZ (l) The size (in pages or clicks) of the swap-
pable process's image in main memory.
WCHAN (l) The address of an event for which the pro-
cess is sleeping, or in SXBRK state, (if
blank, the process is running).
STIME (f) The starting time of the process, given in
hours, minutes, and seconds. (A process
begun more than twenty-four hours before
the ps inquiry is executed is given in
months and days.)
TTY (all) The controlling terminal for the process
(the message, ?, is printed when there is
no controlling terminal).
TIME (all) The cumulative execution time for the pro-
cess.
COMMAND(all) The command name (the full command name and
its arguments are printed under the -f
option).
A process that has exited and has a parent, but has not yet
been waited for by the parent, is marked <defunct>.
FILES
/dev
/dev/sxt/*
/dev/tty*
/dev/xt/* terminal (``tty'') names searcher files
/dev/kmem kernel virtual memory
/dev/swap the default swap device
/dev/mem memory
/etc/passwd UID information supplier
/etc/ps_data internal data structure
/unix system namelist
Page 4 Printed 1/15/91
PS(1-SysV) RISC/os Reference Manual PS(1-SysV)
SEE ALSO
kill(1), nice(1).
getty(1M) in the System Administrator's Reference Manual.
WARNING
Things can change while ps is running; the snap-shot it
gives is only true for a split-second, and it may not be
accurate by the time you see it. Some data printed for
defunct processes is irrelevant.
If no termlist, proclist, uidlist, or grplist is specified,
ps checks stdin, stdout, and stderr in that order, looking
for the controlling terminal and will attempt to report on
processes associated with the controlling terminal. In this
situation, if stdin, stdout, and stderr are all redirected,
ps will not find a controlling terminal, so there will be no
report.
On a heavily loaded system, ps may report an lseek(2) error
and exit. ps may seek to an invalid user area address:
having got the address of a process' user area, ps may not
be able to seek to that address before the process exits and
the address becomes invalid.
ps -ef may not report the actual start of a tty login ses-
sion, but rather an earlier time, when a getty was last
respawned on the tty line.
Printed 1/15/91 Page 5