Annotation of cci/usr/src/man/man1/ps.1, revision 1.1

1.1     ! root        1: .TH PS 1 "13 April 1983"
        !             2: .UC 4
        !             3: .SH NAME
        !             4: ps \- process status
        !             5: .SH SYNOPSIS
        !             6: .B ps
        !             7: [
        !             8: .B acegklstuvwx#
        !             9: ]
        !            10: .SH DESCRIPTION
        !            11: .I Ps
        !            12: prints information about processes.
        !            13: Normally, only your processes are candidates to be printed by
        !            14: .I ps;
        !            15: specifying
        !            16: .B a
        !            17: causes other users processes to be candidates to be printed;
        !            18: specifying
        !            19: .B x
        !            20: includes processes without control terminals in the candidate pool.
        !            21: .PP
        !            22: All output formats include, for each process, the process id PID,
        !            23: control terminal of the process TT, cpu time used by the process TIME
        !            24: (this includes both user and system time), the state STAT of the process,
        !            25: and an indication of the COMMAND which is running.
        !            26: The state is given by a sequence of four letters, e.g. ``RWNA''.
        !            27: The first letter indicates the runnability of the process:
        !            28: R for runnable processes,
        !            29: T for stopped processes,
        !            30: P for processes in page wait,
        !            31: D for those in disk (or other short term) waits,
        !            32: S for those sleeping for less than about 20 seconds,
        !            33: and I for idle (sleeping longer than about 20 seconds)
        !            34: processes.
        !            35: The second letter indicates whether a process is swapped out,
        !            36: showing W if it is, or a blank if it is loaded (in-core);
        !            37: a process which has specified a soft limit on memory requirements
        !            38: and which is exceeding that limit shows >; such a process is (necessarily)
        !            39: not swapped.
        !            40: The third letter indicates whether a process is running with altered
        !            41: CPU scheduling priority (nice); if the process priority is reduced,
        !            42: an N is shown, if the process priority has been artificially raised then
        !            43: a `<' is shown; processes running without special treatment have just a
        !            44: blank.
        !            45: The final letter indicates any special treatment of the process for virtual
        !            46: memory replacement; the letters correspond to options to the
        !            47: .IR vadvise (2)
        !            48: call; currently the possibilities are A standing for VA_ANOM, 
        !            49: S for VA_SEQL and blank for VA_NORM; an A typically represents a
        !            50: .IR lisp (1)
        !            51: in garbage collection, S is typical of large image processing programs
        !            52: which are using virtual memory to sequentially address voluminous data.
        !            53: .PP
        !            54: Here are the options:
        !            55: .TP 5
        !            56: .B a
        !            57: asks for information about all processes with terminals (ordinarily
        !            58: only one's own processes are displayed).
        !            59: .TP 5
        !            60: .B c
        !            61: prints the command name, as stored internally in the system for purposes
        !            62: of accounting, rather than the command arguments, which are kept
        !            63: in the process' address space.  This is more reliable, if less informative,
        !            64: since the process is free to destroy the latter information.
        !            65: .TP 5
        !            66: .B e
        !            67: Asks for the environment to be printed as well as the arguments to the command.
        !            68: .TP 5
        !            69: .B g
        !            70: Asks for all processes.
        !            71: Without this option,
        !            72: .I ps
        !            73: only prints ``interesting'' processes.
        !            74: Processes are deemed to be uninteresting if they are process group leaders.
        !            75: This normally eliminates top-level command interpreters and processes
        !            76: waiting for users to login on free terminals.
        !            77: .TP 5
        !            78: .B k
        !            79: causes the file
        !            80: .I /vmcore
        !            81: is used in place of
        !            82: .IR /dev/kmem " and " /dev/mem.
        !            83: This is used for
        !            84: postmortem system debugging.
        !            85: .TP 5
        !            86: .B l
        !            87: asks for a long listing, with fields PPID, CP, PRI, NI, ADDR, SIZE, RSS and
        !            88: WCHAN as described below.
        !            89: .TP 5
        !            90: .B s
        !            91: Adds the size SSIZ of the kernel stack of each process (for use by system
        !            92: maintainers) to the basic output format.
        !            93: .TP 5
        !            94: \fBt\fIx\fR
        !            95: restricts output to processes whose controlling tty is \fIx\fR
        !            96: (which should be specified as printed by
        !            97: .I ps,
        !            98: e.g.
        !            99: .I t3
        !           100: for tty3,
        !           101: .I tco
        !           102: for console,
        !           103: .I td0
        !           104: for ttyd0,
        !           105: .I t?
        !           106: for processes with no tty,
        !           107: .I t
        !           108: for processes at the current tty,
        !           109: etc).
        !           110: This option must be the last one given.
        !           111: .TP 5
        !           112: .B u
        !           113: A user oriented output is produced.
        !           114: This includes fields USER, %CPU, NICE, SIZE, and RSS as described below.
        !           115: .TP 5
        !           116: .B v
        !           117: A version of the output containing virtual memory statistics is output.
        !           118: This includes fields RE, SL, PAGEIN, SIZE, RSS, LIM, TSIZ, TRS, %CPU
        !           119: and %MEM, described below.
        !           120: .TP 5
        !           121: .B w
        !           122: Use a wide output format (132 columns rather than 80); if repeated,
        !           123: e.g. ww, use arbitrarily wide output.
        !           124: This information is used to decide how much of long commands to print.
        !           125: .TP 5
        !           126: .B x
        !           127: asks even about processes with no terminal.
        !           128: .TP 5
        !           129: .B #
        !           130: A process number may be given,
        !           131: (indicated here by #),
        !           132: in which case the output
        !           133: is restricted to that process.
        !           134: This option must also be last.
        !           135: .PP
        !           136: A second argument is taken 
        !           137: to be the file containing the system's
        !           138: namelist.  Otherwise, /vmunix is used.
        !           139: A third argument tells
        !           140: .I ps
        !           141: where to look for
        !           142: .I core
        !           143: if the
        !           144: .B k
        !           145: option is given, instead of /vmcore.
        !           146: If a fourth argument is given, it
        !           147: is taken to be the name of a swap file to use instead of
        !           148: the default /dev/drum.
        !           149: .PP
        !           150: Fields which are not common to all output formats:
        !           151: .PD 0
        !           152: .IP USER 10
        !           153: name of the owner of the process
        !           154: .IP %CPU 10
        !           155: cpu utilization of the process; this is a decaying average over up to
        !           156: a minute of previous (real) time.  Since the time base over which this
        !           157: is computed varies (since processes may be very young) it is possible
        !           158: for the sum of all %CPU fields to exceed 100%.
        !           159: .IP NICE 10
        !           160: (or NI) process scheduling increment (see
        !           161: .IR setpriority (2))
        !           162: .IP SIZE 10
        !           163: virtual size of the process (in 1024 byte units)
        !           164: .IP RSS 10
        !           165: real memory (resident set) size of the process (in 1024 byte units)
        !           166: .IP LIM 10
        !           167: soft limit on memory used, specified via a call to
        !           168: .IR setrlimit (2);
        !           169: if no limit has been specified then shown as \fIxx\fR
        !           170: .IP TSIZ 10
        !           171: size of text (shared program) image
        !           172: .IP TRS 10
        !           173: size of resident (real memory) set of text
        !           174: .IP %MEM 10
        !           175: percentage of real memory used by this process.
        !           176: .IP RE 10
        !           177: residency time of the process (seconds in core)
        !           178: .IP SL 10
        !           179: sleep time of the process (seconds blocked)
        !           180: .IP PAGEIN 10
        !           181: number of disk i/o's resulting from references by the process
        !           182: to pages not loaded in core.
        !           183: .IP UID 10
        !           184: numerical user-id of process owner
        !           185: .IP PPID 10
        !           186: numerical id of parent of process
        !           187: .IP CP 10
        !           188: short-term cpu utilization factor (used in scheduling)
        !           189: .IP PRI 10
        !           190: process priority (non-positive when in non-interruptible wait)
        !           191: .IP ADDR 10
        !           192: swap address of the process
        !           193: .IP WCHAN 10
        !           194: event on which process is waiting (an address in the system), with
        !           195: the initial part of the address trimmed off e.g. 80004000 prints
        !           196: as 4000.
        !           197: .sp
        !           198: .IP F 10
        !           199: flags associated with process as in
        !           200: .RI < sys/proc.h >:
        !           201: .br
        !           202: .PP
        !           203: .sp
        !           204: .nf
        !           205: .ta 6n 18n 26n
        !           206:        SLOAD   000001  in core
        !           207:        SSYS    000002  swapper or pager process
        !           208:        SLOCK   000004  process being swapped out
        !           209:        SSWAP   000008  save area flag
        !           210:        STRC    000010  process is being traced
        !           211:        SWTED   000020  another tracing flag
        !           212:        SULOCK  000040  user settable lock in core
        !           213:        SPAGE   000080  process in page wait state
        !           214:        SKEEP   000100  another flag to prevent swap out
        !           215:        SDLYU   000200  delayed unlock of pages
        !           216:        SWEXIT  000400  working on exiting
        !           217:        SPHYSIO 000800  doing physical i/o (bio.c)
        !           218:        SVFORK  001000  process resulted from vfork()
        !           219:        SVFDONE 002000  another vfork flag
        !           220:        SNOVM   004000  no vm, parent in a vfork()
        !           221:        SPAGI   008000  init data space on demand from inode
        !           222:        SANOM   010000  system detected anomalous vm behavior
        !           223:        SUANOM  020000  user warned of anomalous vm behavior
        !           224:        STIMO   040000  timing out during sleep
        !           225:        SDETACH 080000  detached inherited by init
        !           226:        SOUSIG  100000  using old signal mechanism
        !           227: .fi
        !           228: .PD
        !           229: .PP
        !           230: A process that has exited and has a parent, but has not
        !           231: yet been waited for by the parent is marked <defunct>; a process
        !           232: which is blocked trying to exit is marked <exiting>;
        !           233: .I Ps
        !           234: makes an educated guess as to the file name
        !           235: and arguments given when the process was created
        !           236: by examining memory or the swap area.
        !           237: The method is inherently somewhat unreliable and in any event
        !           238: a process is entitled to destroy this information,
        !           239: so the names cannot be counted on too much.
        !           240: .SH FILES
        !           241: .ta \w'/usr/sys/core 'u
        !           242: /vmunix        system namelist
        !           243: .br
        !           244: /dev/kmem      kernel memory
        !           245: .br
        !           246: /dev/drum      swap device
        !           247: .br
        !           248: /vmcore        core file
        !           249: .br
        !           250: /dev   searched to find swap device and tty names
        !           251: .SH "SEE ALSO"
        !           252: kill(1), w(1)
        !           253: .SH BUGS
        !           254: Things can change while
        !           255: .I ps
        !           256: is running; the picture it gives is only a close
        !           257: approximation to reality.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.