Annotation of 43BSDReno/usr.bin/systat/systat.1, revision 1.1.1.1

1.1       root        1: .\" Copyright (c) 1985, 1990 The Regents of the University of California.
                      2: .\" All rights reserved.
                      3: .\"
                      4: .\" Redistribution and use in source and binary forms are permitted provided
                      5: .\" that: (1) source distributions retain this entire copyright notice and
                      6: .\" comment, and (2) distributions including binaries display the following
                      7: .\" acknowledgement:  ``This product includes software developed by the
                      8: .\" University of California, Berkeley and its contributors'' in the
                      9: .\" documentation or other materials provided with the distribution and in
                     10: .\" all advertising materials mentioning features or use of this software.
                     11: .\" Neither the name of the University nor the names of its contributors may
                     12: .\" be used to endorse or promote products derived from this software without
                     13: .\" specific prior written permission.
                     14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
                     15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
                     16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
                     17: .\"
                     18: .\"     @(#)systat.1   6.9 (Berkeley) 7/24/90
                     19: .\"
                     20: .Dd July 24, 1990
                     21: .Dt SYSTAT 1
                     22: .Os BSD 4.3
                     23: .Sh NAME
                     24: .Nm systat
                     25: .Nd display system statistics on a crt
                     26: .Sh SYNOPSIS
                     27: .Nm systat
                     28: .Op Fl display
                     29: .Op Ar refresh-interval
                     30: .Sh DESCRIPTION
                     31: .Nm Systat
                     32: displays various system statistics in a screen oriented fashion
                     33: using the curses screen display library,
                     34: .Xr curses 3 .
                     35: .Pp
                     36: While
                     37: .Nm systat
                     38: is running the screen is usually divided into two windows (an exception
                     39: is the vmstat display which uses the entire screen).  The
                     40: upper window depicts the current system load average.  The
                     41: information displayed in the lower window may vary, depending on
                     42: user commands.  The last line on the screen is reserved for user
                     43: input and error messages.
                     44: .Pp
                     45: By default
                     46: .Nm systat
                     47: displays the processes getting the largest percentage of the processor
                     48: in the lower window.  Other displays show swap space usage, disk i/o
                     49: statistics (a la
                     50: .Xr iostat  1  ) ,
                     51: virtual memory statistics (a la
                     52: .Xr vmstat  1  ) ,
                     53: network ``mbuf'' utilization, and network connections (a la
                     54: .Xr netstat  1  ) .
                     55: .Pp
                     56: Input is interpreted at two different levels.
                     57: A ``global'' command interpreter processes all keyboard input.
                     58: If this command interpreter fails to recognize a command, the
                     59: input line is passed to a per-display command interpreter.  This
                     60: allows each display to have certain display-specific commands.
                     61: .Pp
                     62: Command line options:
                     63: .Pp
                     64: .Tw refresh_interval
                     65: .Tp Cx Fl
                     66: .Ar display
                     67: .Cx
                     68: The
                     69: .Fl
                     70: flag expects
                     71: .Ar display
                     72: to be one of:
                     73: .Ic pigs ,
                     74: .Ic iostat ,
                     75: .Ic swap ,
                     76: .Ic mbufs ,
                     77: .Ic vmstat
                     78: or
                     79: .Ic netstat .
                     80: These displays can also be requested interactively (without the
                     81: .Dq Fl )
                     82: and are described in
                     83: full detail below.
                     84: .Tp Ar refresh-interval
                     85: The
                     86: .Ar refresh-value
                     87: specifies the screen refresh time interval in seconds.
                     88: .Tp
                     89: .Pp
                     90: Certain characters cause immediate action by
                     91: .Nm systat  .
                     92: These are
                     93: .Tw Fl
                     94: .Tp Ic \&^L
                     95: Refresh the screen.
                     96: .Tp Ic \&^G
                     97: Print the name of the current ``display'' being shown in
                     98: the lower window and the refresh interval.
                     99: .Tp Ic \&^Z
                    100: Stop
                    101: .Nm systat  .
                    102: .Tp Ic \&:
                    103: Move the cursor to the command line and interpret the input
                    104: line typed as a command.  While entering a command the
                    105: current character erase, word erase, and line kill characters
                    106: may be used.
                    107: .Pp
                    108: The following commands are interpreted by the ``global''
                    109: command interpreter.
                    110: .Tp Ic \&help
                    111: Print the names of the available displays on the command line.
                    112: .Tp Ic \&load
                    113: Print the load average over the past 1, 5, and 15 minutes
                    114: on the command line.
                    115: .Tp Ic \&stop
                    116: Stop refreshing the screen.
                    117: .Tp Cx Op Ic start
                    118: .Cx \&\ \&
                    119: .Op Ar number
                    120: .Cx
                    121: Start (continue) refreshing the screen.  If a second, numeric,
                    122: argument is provided it is interpreted as a refresh interval
                    123: (in seconds).
                    124: Supplying only a number will set the refresh interval to this
                    125: value.
                    126: .Tp Ic \&quit
                    127: Exit
                    128: .Nm systat  .
                    129: (This may be abbreviated to
                    130: .Ic q  . )
                    131: .Tp
                    132: .Pp
                    133: The available displays are:
                    134: .Tw Ic
                    135: .Tp Ic pigs
                    136: Display, in the lower window, those processes resident in main
                    137: memory and getting the
                    138: largest portion of the processor (the default display).
                    139: When less than 100% of the
                    140: processor is scheduled to user processes, the remaining time
                    141: is accounted to the ``idle'' process.
                    142: .Tp Ic iostat
                    143: Display, in the lower window, statistics about processor use
                    144: and disk throughput.  Statistics on processor use appear as
                    145: bar graphs of the amount of time executing in user mode (``user''),
                    146: in user mode running low priority processes (``nice''), in
                    147: system mode (``system''), and idle (``idle'').  Statistics
                    148: on disk throughput show, for each drive, kilobytes of data transferred,
                    149: number of disk transactions performed, and average seek time
                    150: (in milliseconds).  This information may be displayed as
                    151: bar graphs or as rows of numbers which scroll downward.  Bar
                    152: graphs are shown by default; 
                    153: .Pp
                    154: The following commands are specific to the
                    155: .Ic iostat
                    156: display; the minimum unambiguous prefix may be supplied.
                    157: .Dw Fl
                    158: .Dp Cm numbers
                    159: Show the disk i/o statistics in numeric form.  Values are
                    160: displayed in numeric columns which scroll downward.
                    161: .Dp Cm bars
                    162: Show the disk i/o statistics in bar graph form (default).
                    163: .Dp Cm msps
                    164: Toggle the display of average seek time (the default is to
                    165: not display seek times).
                    166: .Dp
                    167: .Pp
                    168: .Tp Ic swap
                    169: Display, in the lower window, swap space in use on each swap
                    170: device configured.  Two sets of bar graphs are shown.  The
                    171: upper graph displays swap space allocated to pure text segments
                    172: (code), the lower graph displays space allocated to stack and
                    173: data segments.  Allocated space is sorted by its size into buckets
                    174: of size dmmin, dmmin*2, dmmin*4, up to dmmax (to reflect allocation
                    175: policies imposed by the system).  The disk segment size, in sectors,
                    176: is displayed along the left hand side of the text,
                    177: and data and stack graphs.
                    178: Space allocated to the user structure and page
                    179: tables is not currently accounted for.
                    180: .Tp Ic mbufs
                    181: Display, in the lower window, the number of mbufs allocated
                    182: for particular uses, i.e. data, socket structures, etc.
                    183: .Tp Ic vmstat
                    184: Take over the entire display and show a (rather crowded) compendium
                    185: of statistics related to virtual memory usage, process scheduling,
                    186: device interrupts, system name translation cacheing, disk i/o, etc.
                    187: .Pp
                    188: The upper left quadrant of the screen shows the number
                    189: of users logged in and the load average over the last one, five,
                    190: and fifteen minute intervals.
                    191: Below this line are statistics on memory utilization.
                    192: The first row of the table reports memory usage only among
                    193: active processes, that is processes that have run in the previous
                    194: twenty seconds.
                    195: The second row reports on memory usage of all processes.
                    196: The first column reports on the number of physical pages
                    197: claimed by processes.
                    198: The second column reports the number of physical pages that
                    199: are devoted to read only text pages.
                    200: The third and fourth columns report the same two figures for
                    201: virtual pages, that is the number of pages that would be
                    202: needed if all processes had all of their pages.
                    203: Finally the last column shows the number of physical pages
                    204: on the free list.
                    205: .Pp
                    206: Below the memory display is the disk usage display.
                    207: It reports the number of seeks, transfers, and number
                    208: of kilobyte blocks transferred per second averaged over the
                    209: refresh period of the display (by default, five seconds).
                    210: For some disks it also reports the average milliseconds per seek.
                    211: Note that the system only keeps statistics on at most four disks.
                    212: .Pp
                    213: Below the disk display is a list of the
                    214: average number of processes (over the last refresh interval)
                    215: that are runnable (`r'), in page wait (`p'),
                    216: in disk wait other than paging (`d'),
                    217: sleeping (`s'), and swapped out but desiring to run (`w').
                    218: Below the queue length listing is a numerical listing and
                    219: a bar graph showing the amount of
                    220: system (shown as `='), user (shown as `>'),
                    221: nice (shown as `-'), and idle time (shown as ` ').
                    222: .Pp
                    223: At the bottom left are statistics on name translations.
                    224: It lists the number of names translated in the previous interval,
                    225: the number and percentage of the translations that were
                    226: handled by the system wide name translation cache, and
                    227: the number and percentage of the translations that were
                    228: handled by the per process name translation cache.
                    229: .Pp
                    230: Under the date in the upper right hand quadrant are statistics
                    231: on paging and swapping activity.
                    232: The first two columns report the average number of pages
                    233: brought in and out per second over the last refresh interval
                    234: due to page faults and the paging daemon.
                    235: The third and fourth columns report the average number of pages
                    236: brought in and out per second over the last refresh interval
                    237: due to swap requests initiated by the scheduler.
                    238: The first row of the display shows the average
                    239: number of disk transfers per second over the last refresh interval;
                    240: the second row of the display shows the average
                    241: number of pages transferred per second over the last refresh interval.
                    242: .Pp
                    243: Below the paging statistics is a line listing the average number of
                    244: total reclaims ('Rec'),
                    245: intransit blocking page faults (`It'),
                    246: swap text pages found in free list (`F/S'),
                    247: file system text pages found in free list (`F/F'),
                    248: reclaims from free list (`RFL'),
                    249: pages freed by the clock daemon (`Fre'),
                    250: and sequential process pages freed (`SFr')
                    251: per second over the refresh interval.
                    252: .Pp
                    253: Below this line are statistics on the average number of
                    254: zero filled pages (`zf') and demand filled text pages (`xf')
                    255: per second over the refresh period.
                    256: The first row indicates the number of requests that were
                    257: resolved, the second row shows the number that were set up,
                    258: and the last row shows the percentage of setup requests were
                    259: actually used.
                    260: Note that this percentage is usually less than 100%,
                    261: however it may exceed 100% if a large number of requests
                    262: are actually used long after they were set up during a
                    263: period when no new pages are being set up.
                    264: Thus this figure is most interesting when observed over
                    265: a long time period, such as from boot time
                    266: (see below on getting such a display).
                    267: .Pp
                    268: Below the page fill statistics is a column that
                    269: lists the average number of context switches (`Csw'),
                    270: traps (`Trp'; includes page faults), system calls (`Sys'), interrupts (`Int'),
                    271: characters output to DZ ports using pseudo-DMA (`Pdm'),
                    272: network software interrupts (`Sof'),
                    273: page faults (`Flt'), pages scanned by the page daemon (`Scn'),
                    274: and revolutions of the page daemon's hand (`Rev')
                    275: per second over the refresh interval.
                    276: .Pp
                    277: Running down the right hand side of the display is a breakdown
                    278: of the interrupts being handled by the system.
                    279: At the top of the list is the total interrupts per second
                    280: over the time interval.
                    281: The rest of the column breaks down the total on a device
                    282: by device basis.
                    283: Only devices that have interrupted at least once since boot time are shown.
                    284: .Pp
                    285: The following commands are specific to the
                    286: .Ic vmstat
                    287: display; the minimum unambiguous prefix may be supplied.
                    288: .Dp Cm boot
                    289: Display cumulative statistics since the system was booted.
                    290: .Dp Cm run
                    291: Display statistics as a running total from the point this
                    292: command is given.
                    293: .Dp Cm time
                    294: Display statistics averaged over the refresh interval (the default).
                    295: .Dp Cm zero
                    296: Reset running statistics to zero.
                    297: .Dp
                    298: .Tp Ic netstat
                    299: Display, in the lower window, network connections.  By default,
                    300: network servers awaiting requests are not displayed.  Each address
                    301: is displayed in the format ``host.port'', with each shown symbolically,
                    302: when possible.  It is possible to have addresses displayed numerically,
                    303: limit the display to a set of ports, hosts, and/or protocols
                    304: (the minimum unambiguous prefix may be supplied):
                    305: .Pp
                    306: .Dw Ar
                    307: .Dp Cm all
                    308: Toggle the displaying of server processes awaiting requests (this
                    309: is the equivalent of the
                    310: .Fl a
                    311: flag to
                    312: .Ar netstat  1  ) .
                    313: .Dp Cm numbers
                    314: Display network addresses numerically.
                    315: .Dp Cm names
                    316: Display network addresses symbolically.
                    317: .Dp Ar protocol
                    318: Display only network connections using the indicated protocol
                    319: (currently either ``tcp'' or ``udp'').
                    320: .Dp Cx Cm ignore
                    321: .Cx \&\ \&
                    322: .Op Ar items
                    323: .Cx
                    324: Do not display information about connections associated with
                    325: the specified hosts or ports.  Hosts and ports may be specified
                    326: by name (``ucbmonet'', ``ftp''), or numerically.  Host addresses
                    327: use the Internet dot notation (``128.32.0.9'').  Multiple items
                    328: may be specified with a single command by separating them with
                    329: spaces.
                    330: .Dp Cx Cm display
                    331: .Cx \&\ \&
                    332: .Op Ar items
                    333: .Cx
                    334: Display information about the connections associated with the
                    335: specified hosts or ports.  As for
                    336: .Ar ignore  ,
                    337: .Op Ar items
                    338: may be names or numbers.
                    339: .Dp Cx Cm show
                    340: .Cx \&\ \&
                    341: .Op Ar ports\&|hosts
                    342: .Cx
                    343: Show, on the command line, the currently selected protocols,
                    344: hosts, and ports.  Hosts and ports which are being ignored
                    345: are prefixed with a `!'.  If
                    346: .Ar ports
                    347: or
                    348: .Ar hosts
                    349: is supplied as an argument to
                    350: .Cm show  ,
                    351: then only the requested information will be displayed.
                    352: .Dp Cm reset
                    353: Reset the port, host, and protocol matching mechanisms to the default
                    354: (any protocol, port, or host).
                    355: .Dp
                    356: .Tp
                    357: .Pp
                    358: Commands to switch between displays may be abbreviated to the
                    359: minimum unambiguous prefix; for example, ``io'' for ``iostat''.
                    360: Certain information may be discarded when the screen size is
                    361: insufficient for display.  For example, on a machine with 10
                    362: drives the
                    363: .Ic iostat
                    364: bar graph displays only 3 drives on a 24 line terminal.  When
                    365: a bar graph would overflow the allotted screen space it is
                    366: truncated and the actual value is printed ``over top'' of the bar.
                    367: .Pp
                    368: The following commands are common to each display which shows
                    369: information about disk drives.  These commands are used to
                    370: select a set of drives to report on, should your system have
                    371: more drives configured than can normally be displayed on the
                    372: screen.
                    373: .Dw Tx
                    374: .Dp Cx Cm ignore
                    375: .Cx \&\ \&
                    376: .Op Ar drives
                    377: .Cx
                    378: Do not display information about the drives indicated.  Multiple
                    379: drives may be specified, separated by spaces.
                    380: .Dp Cx Cm display
                    381: .Cx \&\ \&
                    382: .Op Ar drives
                    383: .Cx
                    384: Display information about the drives indicated.  Multiple drives
                    385: may be specified, separated by spaces.
                    386: .Dp
                    387: .Sh FILES
                    388: .Dw /etc/networks
                    389: .Di L
                    390: .Dp Pa /vmunix
                    391: for the namelist
                    392: .Dp Pa /dev/kmem
                    393: for information in main memory
                    394: .Dp Pa /dev/drum
                    395: for information about swapped out processes
                    396: .Dp Pa /etc/hosts
                    397: for host names
                    398: .Dp Pa /etc/networks
                    399: for network names
                    400: .Dp Pa /etc/services
                    401: for port names
                    402: .Dp
                    403: .Sh AUTHOR
                    404: The unknown hacker.  The
                    405: .Ic pigs
                    406: display is derived from a program of the same name
                    407: written by Bill Reeves.
                    408: .Sh HISTORY
                    409: .Nm
                    410: appeared in 4.3 BSD.
                    411: .Sh BUGS
                    412: Takes 2-10 percent of the cpu.  Certain displays presume
                    413: a 24 line by 80 character terminal.  The swap space display
                    414: should account for space allocated to the user structure and
                    415: page tables.  The
                    416: .Ic vmstat
                    417: display looks out of place because it is (it was added in as
                    418: a separate display rather than create a new program).
                    419: .Pp
                    420: The whole
                    421: thing is pretty hokey and was included in the distribution under
                    422: serious duress.

unix.superglobalmegacorp.com

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