ps(1)




NAME

     ps - report process status


SYNOPSIS

     ps [-aAcdefjlLPy] [-g grplist] [-n namelist]  [-o format]...
     [-p proclist]   [-s sidlist]   [-t term]   [-u uidlist]   [-
     U uidlist] [-G gidlist]


DESCRIPTION

     The ps command prints information  about  active  processes.
     Without  options, ps prints information about processes that
     have the same effective user ID  and  the  same  controlling
     terminal  as  the invoker. The output contains only the pro-
     cess ID, terminal identifier, cumulative execution time, and
     the   command  name.  Otherwise,  the  information  that  is
     displayed is controlled by the options.

     Some options accept lists as arguments. Items in a list  can
     be either separated by commas or else enclosed in quotes and
     separated by commas  or  spaces.  Values  for  proclist  and
     grplist must be numeric.


OPTIONS

     The following options are supported:

     -a    Lists information about all processes most  frequently
           requested:   all  those  except  session  leaders  and
           processes not associated with a terminal.

     -A    Lists information for all processes. Identical to  -e,
           below.

     -c    Prints information in a format that reflects scheduler
           properties  as described in priocntl(1). The -c option
           affects the output  of  the  -f  and  -l  options,  as
           described below.

     -d    Lists information about all processes  except  session
           leaders.

     -e    Lists information about every process now running.

     -f    Generates a full listing. (See below for  significance
           of columns in a full listing.)

     -g grplist
           Lists  only  process  data  whose  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.)

     -G gidlist
           Lists information for processes whose  real  group  ID
           numbers  are  given  in gidlist. The gidlist must be a
           single argument in the form  of  a  blank-  or  comma-
           separated list.

     -j    Prints session ID and process group ID.

     -l    Generates a long listing. (See below.)

     -L    Prints information about  each  light  weight  process
           (lwp) in each selected process. (See below.)

     -n namelist
           Specifies the name of an alternative  system  namelist
           file  in place of the default. This option is accepted
           for compatibility, but is ignored.

     -o format
           Prints information according to the format  specifica-
           tion  given  in  format.  This  is  fully described in
           DISPLAY FORMATS. Multiple -o options can be specified;
           the  format  specification  will be interpreted as the
           space-character-separated  concatenation  of  all  the
           format option-arguments.

     -ps proclist
           Lists only process data whose process ID  numbers  are
           given in proclist.

     -P    Prints the number of the processor to which  the  pro-
           cess  or  lwp  is  bound,  if any, under an additional
           column header, PSR.

     -s sidlist
           Lists information on all  session  leaders  whose  IDs
           appear in sidlist.

     -t term
           Lists only process data associated with term. Terminal
           identifiers  are  specified as a device file name, and
           an identifier. For example, term/a, or pts/0.

     -u uidlist
           Lists only process data whose effective 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 name.

     -U uidlist
           Lists information for processes  whose  real  user  ID
           numbers  or  login  names  are  given  in uidlist. The
           uidlist must be a single argument in  the  form  of  a
           blank- or comma-separated list.

     -y    Under a long listing (-l), omits the  obsolete  F  and
           ADDR  columns and includes an RSS column to report the
           resident set size of the process. Under the -y option,
           both  RSS and SZ (see below) will be reported in units
           of kilobytes instead of pages.

     Many of the options shown are used to  select  processes  to
     list. If any are specified, the default list will be ignored
     and  ps  will  select  the  processes  represented  by   the
     inclusive OR of all the selection-criteria options.


DISPLAY FORMATS

     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.

     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: 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. These flags are available for historical pur-
           poses; no meaning  should  be  currently  ascribed  to
           them.

     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.

           Z     Zombie state: process terminated and parent  not
                 waiting.

           T     Process is stopped, either by a job control sig-
                 nal or because it is being traced.

     UID (f,l)
           The effective user ID number of the process (the login
           name is printed under the -f option).

     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  (obsolete).  Not
           printed when the -c option is used.

     CLS  (f,l)
           Scheduling class. Printed only when the -c  option  is
           used.

     PRI  (l)
           The priority of the process. Without  the  -c  option,
           higher  numbers  mean  lower  priority.  With  the  -c
           option, higher numbers mean higher priority.

     NI   (l)
           Nice value, used in priority computation. Not  printed
           when the -c option is used. Only processes in the cer-
           tain scheduling classes have a nice value.

     ADDR (l)
           The memory address of the process.

     SZ   (l)
           The total size  of  the  process  in  virtual  memory,
           including  all mapped files and devices, in pages. See
           pagesize(1).

     WCHAN     (l)
           The address of an  event  for  which  the  process  is
           sleeping (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 process.

     CMD  (all)
           The command name (the full command name and its  argu-
           ments,  up  to  a  limit of 80 characters, are printed
           under the -f option).

     The following two additional columns are printed when the -j
     option is specified:

     PGID  The process ID of the process group leader.

     SID   The process ID of the session leader.

     The following two additional columns are printed when the -L
     option is specified:

     LWP   The lwp ID of the lwp being reported.

     NLWP  The number of lwps in  the  process  (if  -f  is  also
           specified).

     Under the -L option, one line is printed for each lwp in the
     process  and  the  time-reporting fields STIME and TIME show
     the values for the  lwp,  not  the  process.  A  traditional
     single-threaded process contains only one lwp.

     A process that has exited and has a parent, but has not  yet
     been waited for by the parent, is marked <defunct>.

  -o format
     The -o option allows the output format to be specified under
     user control.

     The format specification must be a list of  names  presented
     as  a single argument, blank- or comma-separated. Each vari-
     able has a default header. The default header can  be  over-
     ridden  by  appending an equals sign and the new text of the
     header. The rest of the characters in the argument  will  be
     used  as the header text. The fields specified will be writ-
     ten in the order specified on the command line,  and  should
     be  arranged in columns in the output. The field widths will
     be selected by the system to be at  least  as  wide  as  the
     header  text  (default  or  overridden value). If the header
     text is null, such as -o user=, the field width will  be  at
     least as wide as the default header text. If all header text
     fields are null, no header line will be written.

     The following names are recognized in the POSIX locale:

     user  The effective user ID of the process. This will be the
           textual  user  ID, if it can be obtained and the field
           width permits, or a decimal representation otherwise.

     ruser The real user ID of the process. This will be the tex-
           tual  user  ID,  if  it  can be obtained and the field
           width permits, or a decimal representation otherwise.

     group The effective group ID of the process.  This  will  be
           the  textual  group  ID, if it can be obtained and the
           field width permits, or a decimal representation  oth-
           erwise.

     rgroup
           The real group ID of the process.  This  will  be  the
           textual  group ID, if it can be obtained and the field
           width permits, or a decimal representation otherwise.

     pid   The decimal value of the process ID.

     ppid  The decimal value of the parent process ID.

     pgid  The decimal value of the process group ID.

     pcpu  The ratio of CPU time used recently to CPU time avail-
           able  in  the  same period, expressed as a percentage.
           The  meaning  of  ``recently''  in  this  context   is
           unspecified.  The  CPU time available is determined in
           an unspecified manner.

     vsz   The total size of the process in  virtual  memory,  in
           kilobytes.

     nice  The decimal value of the system scheduling priority of
           the process. See nice(1).

     etime In the POSIX locale, the elapsed time since  the  pro-
           cess was started, in the form:

           [[dd-]hh:]mm:ss

           where

     dd    is the number of days

     hh    is the number of hours

     mm     is the number of minutes

     ss    is the number of seconds

     The dd field will be a decimal integer. The hh,  mm  and  ss
     fields will be two-digit decimal integers padded on the left
     with zeros.

     time  In the POSIX locale, the cumulative CPU  time  of  the
           process in the form:

           [dd-]hh:mm:ss

           The dd, hh, mm, and  ss fields will be as described in
           the etime specifier.

     tty   The name of the controlling terminal  of  the  process
           (if  any)  in  the same format used by the who(1) com-
           mand.

     comm  The name of the command being executed (argv[0] value)
           as a string.

     args  The command with all its arguments as  a  string.  The
           implementation  may  truncate  this value to the field
           width;  it  is  implementation-dependent  whether  any
           further  truncation  occurs. It is unspecified whether
           the string represented is a version  of  the  argument
           list  as it was passed to the command when it started,
           or is a version of the arguments as they may have been
           modified   by  the  application.  Applications  cannot
           depend on being able to modify their argument list and
           having that modification be reflected in the output of
           ps. The Solaris implementation limits the string to 80
           bytes;  the string is the version of the argument list
           as it was passed to the command when it started.

     The following names are recognized in the Solaris  implemen-
     tation:

     f     Flags (hexadecimal and additive) associated  with  the
           process.

     s     The state of the process.

     c     Processor utilization for scheduling (obsolete).

     uid   The effective user ID  number  of  the  process  as  a
           decimal integer.

     ru+id The real user ID number of the process  as  a  decimal
           integer.

     gid   The effective group ID number  of  the  process  as  a
           decimal integer.

     rgid  The real group ID number of the process as  a  decimal
           integer.

     projid
           The project ID number of  the  process  as  a  decimal
           integer.

     project
           The project ID of the process as a  textual  value  if
           that  value  can  be  obtained; otherwise as a decimal
           integer.

     sid   The process ID of the session leader.

     taskid
           The task ID of the process.

     class The scheduling class of the process.

     pri   The priority  of  the  process.  Higher  numbers  mean
           higher priority.

     opri  The obsolete priority of the  process.  Lower  numbers
           mean higher priority.

     lwp   The decimal value of the lwp ID. Requesting this  for-
           matting  option causes one line to be printed for each
           lwp in the process.

     nlwp  The number of lwps in the process.

     psr   The number of the processor to which  the  process  or
           lwp is bound.

     pset  The ID of the processor set to which  the  process  or
           lwp is bound.

     addr  The memory address of the process.

     osz   The total size of the process in  virtual  memory,  in
           pages.

     wchan The address of an  event  for  which  the  process  is
           sleeping (if -, the process is running).

     stime The starting time or date of the process, printed with
           no blanks.

     rss   The resident set size of the process, in kilobytes.

     pmem  The ratio of the process's resident set  size  to  the
           physical memory on the machine, expressed as a percen-
           tage.

     fname The first 8 bytes of the base name  of  the  process's
           executable file.

     Only comm and args are allowed to contain blank  characters;
     all  others, including the Solaris implementation variables,
     are not.

     The following table specifies the default header to be  used
     in the POSIX locale corresponding to each format specifier.

     __________________________________________________________________
    | Format           Default       | Format           Default       |
    | Specifier        Header        | Specifier        Header        |
    | args             COMMAND       | ppid             PPID          |
    | comm             COMMAND       | rgroup           RGROUP        |
    | etime            ELAPSED       | ruser            RUSER         |
    | group            GROUP         | time             TIME          |
    | nice             NI            | tty              TT            |
    | pcpu             %CPU          | user             USER          |
    | pgid             PGID          | vsz              VSZ           |
    | pid              PID           |                                |
    |________________________________|________________________________|

     The following table lists the Solaris implementation  format
     specifiers and the default header used with each.

     __________________________________________________________________
    | Format           Default       | Format           Default       |
    | Specifier        Header        | Specifier        Header        |
    | addr             ADDR          | projid           PROJID        |
    | c                C             | project          PROJECT       |
    | class            CLS           | psr              PSR           |
    | f                F             | rgid             RGID          |
    | fname            COMMAND       | rss              RSS           |
    | gid              GID           | ruid             RUID          |
    | lwp              LWP           | s                S             |
    | nlwp             NLWP          | sid              SID           |
    | opri             PRI           | stime            STIME         |
    | osz              SZ            | taskid           TASKID        |
    | pmem             %MEM          | uid              UID           |
    | pri              PRI           | wchan            WCHAN         |
    |________________________________|________________________________|


EXAMPLES

     Example 1: An example of the ps command

     The command:

     example% ps -o user,pid,ppid=MOM -o args

     writes the following in the POSIX locale:

      USER  PID   MOM   COMMAND
     helene  34    12   ps -o uid,pid,ppid=MOM -o args

     The contents of the COMMAND field need not be the  same  due
     to possible truncation.


ENVIRONMENT VARIABLES

     See environ(5) for descriptions of the following environment
     variables  that  affect  the  execution of ps: LANG, LC_ALL,
     LC_CTYPE, LC_MESSAGES, LC_TIME, and NLSPATH.

     COLUMNS
           Override the system-selected horizontal  screen  size,
           used  to  determine  the  number  of  text  columns to
           display.


EXIT STATUS

     The following exit values are returned:

     0     Successful completion.

     >0    An error occurred.


FILES

     /dev/pts/*
     /dev/term/*
           terminal (``tty'') names searcher files

     /etc/passwd
           UID information supplier

     /proc/*
           process control files

     /tmp/ps_data
           internal data structure


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | Availability                | SUNWcsu                     |
    |_____________________________|_____________________________|
    | CSI                         | Enabled (see USAGE)         |
    |_____________________________|_____________________________|
    | Interface Stability         | Standard                    |
    |_____________________________|_____________________________|


SEE ALSO

     kill(1),  nice(1),   pagesize(1),   pgrep(1),   priocntl(1),
     who(1),   getty(1M),   proc(4),  ttysrch(4),  attributes(5),
     environ(5), standards(5)


NOTES

     Things can change while ps is running. The snapshot it gives
     is  true only 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 options to select processes  are  specified,  ps  will
     report  all processes associated with the controlling termi-
     nal. If there is no controlling terminal, there will  be  no
     report other than the header.

     ps -ef or ps -o stime may not report the actual start  of  a
     tty  login session, but rather an earlier time, when a getty
     was last respawned on the tty line.

     ps is CSI-enabled except for login names (usernames).


Man(1) output converted with man2html