Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

getpriority(3)

nice(3C)

kill(1)

whodo(1)

lseek(2)



ps(1)                    USER COMMANDS                      ps(1)



NAME
     ps - display the status of current processes

SYNOPSIS
     /usr/ucb/ps [ -acglnrSuUvwx ] [ -tterm ] [ num ]

DESCRIPTION
     The ps command displays information about  processes.   Nor-
     mally,  only  those  processes  that  are  running with your
     effective user ID and are attached to a controlling terminal
     (see   termio(4))   are  shown.   Additional  categories  of
     processes can be added to the display using various options.
     In particular, the -a option allows you to include processes
     that are not owned by you (that do not have your  user  ID),
     and  the  -x  option allows you to include processes without
     control terminals.  When you specify both -a and -x, you get
     processes  owned by anyone, with or without a control termi-
     nal.  The -r option restricts the list of processes  printed
     to  running and runnable processes.  ps displays the process
     ID, under PID; the control terminal (if any), under TT;  the
     cpu time used by the process so far, including both user and
     system time, under TIME; the state of the process, under  S;
     and  finally,  an indication of the COMMAND that is running.
     The state is given by a single letter from the following:

          O    Process is running on a processor.
          S    Sleeping. Process is waiting for an event to  com-
               plete.
          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.
     The following options must all be combined to form the first
     argument:

     -a   Include information about processes owned by others.

     -c   Display the command name, as stored internally  in  the
          system for purposes of accounting, rather than the com-
          mand arguments, which are kept in the process'  address
          space.   This  is  more  reliable, if less informative,
          since the process is free to destroy the latter  infor-
          mation.

     -g   Display all processes.  Without this  option,  ps  only
          prints  interesting processes.  Processes are deemed to
          be uninteresting if they  are  process  group  leaders.
          This normally eliminates top-level command interpreters



             Last change: BSD Compatibility Package             1





ps(1)                    USER COMMANDS                      ps(1)



          and processes waiting for users to login on free termi-
          nals.

     -l   Display a long listing, with fields F, PPID,  CP,  PRI,
          NI, SZ, RSS and WCHAN as described below.

     -n   Produce numerical output for some fields.   In  a  user
          listing, the USER field is replaced by a UID field.

     -r   Restrict output to running and runnable processes.

     -S   Display accumulated CPU time used by this  process  and
          all of its reaped children.

     -u   Display user-oriented  output.   This  includes  fields
          USER, SZ, RSS and START as described below.

     -U   Update a private database where ps keeps system  infor-
          mation.

     -v   Display a version  of  the  output  containing  virtual
          memory.   This  includes fields SIZE and RSS, described
          below.

     -w   Use a wide output format (132 columns rather than  80);
          if repeated, that is, -ww, use arbitrarily wide output.
          This information is used to decide  how  much  of  long
          commands to print.

     -x   Include processes with no controlling terminal.

     -tterm
          List only process data associated  with  the  terminal,
          term.   Terminal identifiers may be specified in one of
          two forms:  the device's file name (for example,  tty04
          or  term/14)  or, if the device's file name starts with
          tty, just the digit identifier (for example, 04).

     num  A process number may be given, in which case the output
          is  restricted  to  that  process.  This option must be
          supplied last.

DISPLAY FORMATS
     Fields that are not common to all output formats:

     USER        Name of the owner of the process.

     NI          Process scheduling increment [see getpriority(3)
                 and nice(3C)].

     SIZE
     SZ          The combined size of the data and stack segments



             Last change: BSD Compatibility Package             2





ps(1)                    USER COMMANDS                      ps(1)



                 (in kilobyte units)

     RSS         Real memory (resident set) size of  the  process
                 (in kilobyte units).

     UID         Numerical user-ID of process owner.

     PPID        Numerical ID of parent of process.

     CP          Short-term  CPU  utilization  factor  (used   in
                 scheduling).

     PRI         The priority of the process (higher numbers mean
                 lower priority).

     START       The starting  time  of  the  process,  given  in
                 hours,  minutes,  and  seconds.  A process begun
                 more than 24 hours before the ps inquiry is exe-
                 cuted is given in months and days.

     WCHAN       The address of an event for which the process is
                 sleeping,  or in SXBRK state (if blank, the pro-
                 cess is running).

     F           Flags (hexadecimal and additive) associated with
                 the process:
                 00   Process has terminated.  Process table  now
                      available.
                 01   A system process, always in primary memory.
                 02   Parent is tracing process.
                 04   Tracing parent's signal  has  stopped  pro-
                      cess.  Parent is waiting, see ptrace(2).
                 08   Process is currently in primary memory.
                 10   Process currently in primary memory, locked
                      until an event is completed.
     A process that has exited and has a parent, but has not  yet
     been  waited  for  by the parent is marked <defunct>; other-
     wise, ps tries to determine the command name  and  arguments
     given  when  the  process  was created by examining the user
     block.

FILES
     /dev
     /dev/sxt/*
     /dev/tty*
     /dev/xt/*           terminal (tty) names searcher files
     /dev/kmem           kernel virtual memory
     /dev/swap           default swap device
     /dev/mem            memory
     /etc/passwd         UID information supplier
     /etc/ps_data        internal data structure




             Last change: BSD Compatibility Package             3





ps(1)                    USER COMMANDS                      ps(1)



SEE ALSO
     getpriority(3), nice(3C) kill(1)  in  the  User's  Reference
     Manual.
     whodo(1) in the System Administrator's Reference Manual.
     lseek(2) in the Programmer's Reference Manual.

NOTES
     Things can change while ps is running; the picture it  gives
     is  only  a  close approximation to the current state.  Some
     data printed for defunct processes  is  irrelevant.   If  no
     term  or num is specified, ps checks the standard input, the
     standard output, and the standard error in that order, look-
     ing  for the controlling terminal and will attempt to report
     on processes associated with the controlling  terminal.   In
     this  situation, if the standard input, the standard output,
     and the standard error 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
     obtained the address of process' user area, ps  may  not  be
     able  to  seek  to that address before the process exits and
     the address becomes invalid.

































             Last change: BSD Compatibility Package             4



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026