Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ gr_osview(1) — IRIX 6.5.3f

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

gr_top(1)

ps(1)

top(1)



GROSVIEW(1)                                                      GROSVIEW(1)



NAME
     gr_osview - graphical system monitor

SYNOPSIS
     gr_osview [-hVLeapzEF] [-Dfile] [-sfile] [-N[user@]node] [-nnamelist]

DESCRIPTION
     This command provides a graphical display of usage of certain types of
     system resources.  This display provides a real-time window into the
     overall operation of the system.  The main display element is a
     rectangular area which is filled by uniquely colored bands, each band
     signifying a sampled variable measuring system performance.  This
     rectangular area is called a bar throughout the rest of this description.

     Each bar in a window has a header which consists of the bar title plus
     the names of each variable displayed, in colors to match those used for
     each band in the bar.  The colors used, as well as size, layout,
     background and foreground colors may be modified.

     gr_osview is implemented using a client-server model.  The server side
     acts as a simple display engine, while the client acts as a data
     generator.  By default, client and server are invoked as a tightly
     coupled process for optimal performance.  However, the client (data-
     collection) side can be automatically run on a remote machine while the
     server runs locally, allowing remote monitoring of system performance.
     Server and client operation can be used independently through the use of
     gr_osview "export" files, allowing recording and playback of performance
     monitoring sessions.

     This man page describes Version 2.2 of gr_osview.  Setup files from
     previous versions of gr_osview are accepted, however remote operation is
     only possible with a gr_osview of the same version.

     gr_osview is driven by a setup file.  The setup file may be explicitly
     named on the command line, found through an environment variable, or in
     the caller's home directory.  A complete description of the format and
     additional capabilities of the setup file is given below.

OPTIONS
     The following options are supported:

     -h        Print a summary of the available options.

     -D file   This option specifies where the setup file will come from.  If
               the file "-" is named, then the setup will be read from
               standard input.  If this option is not specified, the
               environment variable GROSVIEW is checked for a setup file name.
               If this variable is not set, then a file named ".grosview" is
               scanned for in the invoker's home directory.  If all this
               fails, a default setup of a single CPU usage bar is used.





                                                                        Page 1





GROSVIEW(1)                                                      GROSVIEW(1)



               gr_osview will automatically recognize a gr_osview "export"
               file if found instead of a setup file.  This causes gr_osview
               to automatically act as a display server, playing back the data
               in the file.

     -s file   This option specifies the creation of an "export" file.  This
               file is an ASCII text file containing the information needed to
               initialize the display server properly, followed by an
               arbitrary number of data samples.

     -N [user@]host
               Contact the remote host, using the given user ID if specified,
               and monitor that host's performance on the local machine.  The
               window border is forced in this case, and the argument is used
               as the window title.  If user is not specified, the user ID
               "guest" is used.

               gr_osview will automatically attempt to re-connect to the
               remote system if the connection is lost for some reason.  If
               system errors or other problems which would preclude successful
               reconnection are present, then gr_osview will simply exit.

     -F        This option suppresses text output.  This can be useful in
               several situations, for instance when creating a very small
               gr_osview display where the text would be illegible anyway.  As
               a side effect, max value and average counters, and the scale
               for absolute bars are suppressed.

     -E        This option directs gr_osview to act simply as a data
               generator, and an "export" file will be written to standard
               output, with continuous writing of sampled data until the
               program is killed.  The -D option is handled as expected,
               except that if an "export" file is passed, gr_osview uses only
               the initialization information and generates new data samples
               from the running system.

     -V        Print the current version and copyright information for the
               program.

     -a        This option invokes a subset of the displayable bars that
               includes: cpu usage, memory usage, cpu wait time, system
               activity and graphics activity.

     -p        This option prints the window position and size after the
               window has been laid out on standard input.  This is useful for
               programming setup scripts.

     -z        This option enables "freeze" toggling.  Sending SIGUSR1 (see
               signal(2)) to gr_osview will freeze and unfreeze the display.
               If currently generating a gr_osview "export" file, it will also
               stop any output to the file.  This is useful when doing screen
               dumps or snapshoting particular events.



                                                                        Page 2





GROSVIEW(1)                                                      GROSVIEW(1)



     -e        This option is only effective when gr_osview is reading an
               "export" file.  It instructs gr_osview to exit when the data in
               the file is exhausted.  By default, the display window is left
               up, frozen at the last data sample.

     -L        This option causes gr_osview to lock down those pages which it
               actually uses while running and prevent the process from
               swapping.  This enables a minimum number of pages to be locked
               while keeping gr_osview performing as a real-time display under
               heavy system load.

     -n        This option causes gr_osview to use a kernel namelist other
               than the default, /unix. This option is currently not supported
               with -N.

OVERVIEW
     There are three potential formats for each bar, with various optional
     features.  Each bar has a header line, which gives the bar name and the
     names of its parameters, plus some additional information depending on
     the bar type.  Below this is the actual bar.  Parameters are such things
     as the various elements of CPU usage: user time, system time, interrupt
     overhead and idle time.  The text of a parameter name in the header is
     colored to match the associated part of the bar display.

     The most common format is called moving bar format.  In this format, the
     information is displayed as a sectioned bar, each section being a
     different color.  As time passes, each section will be redrawn with its
     length adjusted proportionally to the value of the parameter.  To obtain
     smooth motion, and damp peaks and valleys which would otherwise be
     visually confusing, each section of the bar is averaged over a specific
     number of intervals.  For instance, if a parameter doubles in value, the
     section will gradually double in length over a certain number of samples.
     By setting the sample interval, the user can control the update rate of
     the bar information.  The default is 2/10 second, which provides smooth
     visual motion.  A bar border is supplied by default which includes a
     heavy lower border marked in 1/10 increments for easier estimation.  This
     border can be suppressed completely, or the ruler can be suppressed.

     There are two subformats for the moving bar: relative and absolute.  In
     relative mode, the displayed values must all add up to 100% and are
     relative only to each other.  In absolute mode, the bar displays an
     indicator of events per second over the sample interval, and the header
     includes the sample interval.  The bar itself will auto-scale; this means
     that the scale used will vary automatically (with some hysteresis) as the
     number of events changes.  The scale value being used is displayed above
     the right-hand edge of the bar.  The property of relative or absolute
     display is a characteristic of the type of data being displayed, and is
     not under control of the user.

     The scale value can be locked, in which case autoscaling is disabled, and
     the scale value is inverted in color to indicate locked operation.  The
     user may specify that the bar scale be locked and its value.  If instead



                                                                        Page 3





GROSVIEW(1)                                                      GROSVIEW(1)



     the user asks the scale to creep, the scale factor will only increase,
     and never decrease.

     The second format is called strip chart format.  Any moving bar may also
     be displayed as a strip chart.  In this mode, instead of being displayed
     horizontally, the bar is drawn vertically at the right hand edge of the
     bar after moving the bar down by the size of a single sample.  This forms
     a strip-chart effect.  The number of samples and the sample interval can
     be changed.  The header of an absolute bar displayed as a strip chart
     will indicate the overall time shown by the strip instead of the sample
     interval time.  Finally, tick marks may be added to the strip to ease
     estimation.

     If the strip chart format is used for an absolute bar type, and the scale
     is not locked, then autoscaling causes an additional action.  When the
     scale changes, a red line is drawn through the bar at the point at which
     the scale changed, and the remainder of the bar is drawn in a gray color,
     showing only the outline of the parameter values.  This shows that the
     scale changed, and the grayed out data is invalid.

     In either of the above bar formats, and if the bar type is absolute, then
     some additional display options are available.  In max value mode, the
     bar display area is compressed and a text field is added to the right of
     the bar showing the maximum value ever achieved by the sum of the
     parameters.  By default, this number is displayed as red on black, in the
     upper part of the bar area.  If the user desires, then this maximum can
     be automatically reset to a lower value if the current value remains
     below it for some number of intervals.  This gives the effect of a "peak"
     meter, holding a maximum long enough for the user to note it.

     If tracking mode is enabled, then a text field is added at the right of
     the bar below the maximum value field showing the average of the sum of
     the parameters over an interval.  By default, this number is displayed as
     blue on white.

     Each of these modes displays a calculated events-per-second ratio.  If
     the sample interval is much smaller than one second, then the displays
     will show the "burst" rate achieved at the sample interval.  The system
     may not be able to sustain this rate over longer periods of time.  To get
     an accurate measure at any interval, simply adjust the sample interval as
     described below.

     The number shown for each of these modes, as well as the value used for
     scaling, are usually calculated for a subset of the parameters shown in
     the bar.  For example, if displaying memory usage, the counters and scale
     will not include the free memory in the system.

     The third main format is numeric format.  This format is currently only
     available for absolute value bar types.  Instead of a graphic display,
     the bar is replaced by a text display area in which the actual values of
     the parameters are displayed.  In contrast to the other displays, the
     parameter values are given over the whole sample interval rather than



                                                                        Page 4





GROSVIEW(1)                                                      GROSVIEW(1)



     scaled to units per second.  This allows a long sample time for slow
     changing parameters.

     By default, the current values of the parameters are displayed in the
     same color as the graphical display would use just below each parameter
     name in the header.  If max value mode is turned on, then a listing of
     the maximum value seen for each parameter is given below the current
     values, except that all text is displayed in the current maximum display
     foreground color, which is red by default.  If tracking mode is turned
     on, then the average numeric values are summed and displayed to the right
     in the foreground color, with an appropriate title.

     The behavior of the max value and average modes is intuitively similar to
     that for a moving bar, except each parameter is handled independently.

SETUP FILE
     The setup file provides a simple mechanism for initializing a large
     number of possible parameters for the gr_osview display.  The setup file
     is an ASCII file.  Comment lines are delimited by a # character in the
     first column, and blank lines are ignored.  In addition, trailing
     comments may be added using a # character, after which all data on the
     line is ignored.  Lines containing information may be classed into two
     types, monitor lines and option lines.  Monitor lines describe the format
     of an individual bar, while option lines describe global parameters.  The
     monitor bars in the gr_osview window are brought up in the same order
     they are found in the setup file.  A particular monitor bar may be
     entered several times, possibly with many different options.

     Each monitor line consists of a name followed by zero or more modifier
     options.  The following monitor bars are available:

          cpu       - monitor CPU usage
          rmem      - monitor real memory usage
          rmemc     - monitor real memory usage
          wait      - monitor time waiting for I/O
          sysact    - monitor important system activity
          gfx       - monitor important graphics activity
          bdev      - monitor block device throughput
          fault     - monitor page faults
          tlb       - monitor TLB activity
          intr      - monitor interrupts
          pswap     - monitor page swapping activity
          nettcp    - monitor TCP protocol activity
          netudp    - monitor UDP protocol activity
          netip     - monitor IP layer activity
          netif     - monitor network interface activity
          disk      - monitor disk usage
          swp       - monitor logical swap space

     The cpu, netif and disk bars have special formats.  The cpu bar may have
     an optional argument which indicates a particular CPU to monitor (if more
     than one is present in the system).  In this case, the descriptor takes



                                                                        Page 5





GROSVIEW(1)                                                      GROSVIEW(1)



     the form:

          cpu(n)         - monitor CPU number n

     If the word sum is given instead, the bar monitors the sum of all CPU
     activity in the system in a single bar.

     The netif bar may have an optional argument which indicates a particular
     interface to monitor, or it may indicate that only the sum of all network
     interface activity is to be monitored.  By default, a bar is generated
     for each network interface on the system except for the local loopback
     interface.  If a name is given, the descriptor takes the form:

          netif(name)    - monitor interface name name

     Typical interface names are et0, for the built-in ethernet interface on
     the POWERSeries, lo0 for the local loopback interface, enp0 for the
     standard Professional IRIS VMEbus ethernet card, and ec0 for the Personal
     IRIS built-in ethernet interface.  If the word sum is given instead, the
     bar monitors the sum of all interface traffic for the system.

     The disk bar requires an argument describing the volume to monitor.  The
     form of the descriptor is:

          disk(path)     - monitor the volume given by path

     The path argument can name a filesystem in one of two ways.  If it names
     a block special device, then that device is assumed to contain an EFS or
     XFS filesystem, and usage is monitored with the special file name used as
     the bar header.  Otherwise, the argument is assumed to name a file
     residing on some mounted volume.  The path name passed in is used as the
     header.  The bar scale is set at the number of megabytes of storage on
     the volume.

     The scale number for the real memory bars, rmem and rmemc, is the number
     of memory pages in the system.  On current SGI systems, each page can be
     4096 or 16384 bytes in length depending on the return value of the
     getpagesize(2) system call.  In general, the larger page size is used on
     systems where uname(1) returns "IRIX64".  For the sysact, gfx, intr,
     bdev, fault, pswap, netudp, netip, netif, tlb bars, the scale will show
     the calculated number of events per second which would fill the bar.  For
     the disk bar, the scale value will show the total size of the disk in
     bytes.  For the swp bar, the scale value will show the total amount of
     logical swap.  The cpu and wait bars cannot be displayed as numeric bars.
     If the bdev, netudp, netip or netif bars are displayed as numeric bars
     then additional information is available.

     The following options may be supported for each of the above bar types.
     If the option is unsupported, it will be silently ignored by gr_osview.

          strip          - display as a strip chart
          numeric        - display numeric values



                                                                        Page 6





GROSVIEW(1)                                                      GROSVIEW(1)



          max       - add a maximum value numeric meter
          max(n)         - add a maximum value meter with reset interval n
          tracksum  - add an average value numeric meter
          tracksum(n)    - add an average value meter with interval n
          noborder  - suppress bar border
          interval(n)    - set sample interval in base units
          samples(n)     - set number of samples in strip chart
          attack(f)      - set attack speed of bar
          colors(c,...)  - set bar colors to use
          maxcolor(b,f)  - set maximum value display colors
          limcolor(b,f)  - set scale limit value display colors
          sumcolor(b,f)  - set tracking sum display colors
          lockscale(x)   - lock the scale value
          creepscale     - autoscaling will only increase the scale
          ticks(i,n)          - set strip chart tick marks

     A strip chart is a pictorial representation of a number of samples from
     the given bar, displayed vertically rather than horizontally.  The header
     displays the total time covered by the bar, which is the interval times
     the number of samples.  A numeric chart simply shows the monitored values
     as absolute numeric values rather then as pictorial values.

     The max enables max value mode, while the tracksum option enables average
     value tracking mode.  If the second form of max, is used, the argument
     indicates a number of intervals after which the max value will be reset
     to the current value, if the current value remains below the displayed
     max value.  In the second form of tracksum, the argument specifies the
     number of intervals over which to average the value.  This allows, for
     instance, a moving bar to react very quickly for good visual effect while
     the average value is computed over a longer interval for more accuracy.
     These values are displayed at the end of a bar, the max value above the
     tracksum value.

     If the noborder option is given, then the bar border is suppressed.

     The interval option specifies the update interval of the bar, in base
     interval units.  The base interval is set as a global option; see below.
     The argument to this option indicates the number of base interval units
     in the interval for this bar.  For instance, if the base interval is .2
     seconds, then an argument of "5" would indicate a 1 second interval.

     The attack option specifies the percentage of the new value to be used in
     the rolling average calculation.  This averaging is what makes each bar
     appear to move smoothly; changing the attack value can change the speed
     and appearance of a bar substantially.  The value can range from 0.0 to
     1.0; of course 0.0 indicates no movement of the bar ever, while 1.0 means
     instant change to the next value.

     The colors option modifies the colors used for the bar.  Starting from
     the first parameter in a bar, the colors are modified until either all
     parameters are modified or no more colors are specified.  Each color
     specified in the argument is a color map index to use for that color.



                                                                        Page 7





GROSVIEW(1)                                                      GROSVIEW(1)



     The maxcolor, limcolor and sumcolor options set the background and
     foreground colors, respectively, of that type of display for this bar.

     The lockscale option locks the scale value for the bar to the given
     value, disabling autoscaling.  A locked scale is indicated by the scale
     value being inverted (reverse video) in the display.  If the numeric
     argument to lockscale is suffixed by a 'k' or 'K', then the argument is
     multiplied by 1024, a 'm' or 'M' suffix multiplies the argument by 1 meg
     (1024 times 1024), or a 'g' or 'G' suffix multiplies the argument by 1
     gig (1024 times 1024 times 1024).  The creepscale option allows
     autoscaling, but the scale can only increase.

     The ticks option enables tick marks for the given strip.  Tick marks are
     painted at the top of the bar, and follow the strip as it moves.  The
     first form, ticks(n), paints a tick mark every n samples.  The second
     form, ticks(n,m), paints a double-length tick mark every (n*m) samples,
     or every m normal tick marks.

     Global options are introduced by a line with the special descriptor opt
     beginning the line.  The following global options are accepted:

          noborder  - suppress borders on all bars
          arbsize        - allow arbitrary window sizing
          width(w)  - set number of bars horizontally
          interval(t)    - set base sample interval
          colors(c,...)  - modify default color behavior
          maxcolor(b,f)  - set colors for maximum value displays
          limcolor(b,f)  - set colors for limit value displays
          sumcolor(b,f)  - set colors for sum value displays
          backcolor(c)   - set background color
          frontcolor(c)  - set foreground color
          font(f)        - set font to use
          origin(x,y)    - set window origin
          winsize(x,y)   - set window size
          nodecorate     - request an unframed window

     The noborder option suppresses borders on all bars, making each bar
     display seem to "hang in space".  The arbsize option allows arbitrary
     sizing of the window; gr_osview may not always be able to properly scale
     text or draw to match the window size if it is too small.  The
     acceptability of a too-small display is left to the user.  The width
     option sets the number of bars horizontally to use.  This value is one by
     default, meaning that a long, vertical display is used.  The interval
     option sets the base sample interval.  The argument is given in tenths of
     seconds.  The default base interval is two tenths of a second.

     The colors option sets the global color table, from which each bar
     selects its default colors, in the same manner as for an individual bar.
     The limcolor, maxcolor and sumcolor options set the background and
     foreground colors, respectively, of the limit value, maximum value and
     tracking sum value displays.  The backcolor and frontcolor options set
     the general background or foreground colors respectively.



                                                                        Page 8





GROSVIEW(1)                                                      GROSVIEW(1)



     The font option sets the font to be used for text.  This is a font name
     as known to the IRIS GL Font Manager (libfm).  Default is
     "TimesBoldItalic".  The origin option specifies the initial origin of the
     window in screen coordinates.  The winsize option sets the initial window
     size in screen coordinates.

     Setting the nodecorate option specifies a gr_osview window with no
     borders.  The default is to request a border around the window.

INTERPRETING THE DISPLAY
     cpu     The cpu bar statistically monitors the distribution of CPU cycles
             between user programs, the operating system, interrupt overhead,
             graphics and idle time.  Computation-intensive loads will show
             large user times, while I/O or kernel service intensive loads
             will show up as increased system and interrupt time.  If
             intensive graphics activity is under way, then the time spent
             waiting for the graphics hardware to context switch and the time
             spent waiting for the graphics FIFO to empty will consume a
             significant portion of the processor.  gr_osview perturbs this
             slightly, since it causes graphics context switches to occur.

             The data is collected by sampling the program counter at the
             kernel clock frequency, which is 100HZ on the 4D series.  This
             sampling is done automatically by the operating system; gr_osview
             simply collects the data and displays it.

     wait    The wait bar monitors the percentage of time that the system is
             idle due to waiting for outstanding I/O requests.  If a processor
             can perform other useful work while waiting for an I/O request,
             then the processor is not viewed as idle (on the cpu bar) and the
             wait bar will not reflect any wait time.  This bar is constructed
             by summing all the idle time for all processors in the system and
             displaying the percentage of that time that an I/O request was
             pending.  Since in a multiprocessor system, there is no way to
             differentiate which processors have I/O pending, if there is any
             outstanding I/O request, and a processor goes idle, that
             processor (along with all other idle processors) will accumulate
             wait for I/O time rather than idle time.

             The different forms of waiting are:  IO refers to time spent
             waiting for traffic related to file system accesses (including
             local, remote, and mapped files, and normal file read and write).
             Swap refers to time spent waiting for paging and swapping
             operations to and from any swap devices.  Pio refers to time
             spent waiting for physical IO to complete; for example, direct
             DMA to user space.

             The information is collected in the same way as cpu time.

     rmem    This bar measures real memory usage.  kernel memory is memory
             allocated to the operating system and drivers.  fs ctl is memory
             used to store filesystem meta-data, that is, information such as



                                                                        Page 9





GROSVIEW(1)                                                      GROSVIEW(1)



             inodes, bitmaps, directories and the like that are used to manage
             file data.  fsdirty memory is occupied by modified file system
             pages which have not yet been written to backing store.  fsclean
             memory is occupied by unmodified file system pages which are
             currently attached to file system buffer headers.  free is memory
             not currently in use.  user is memory currently allocated to
             running processes.

             Note that some of the pages marked fsclean or fsdirty may also be
             allocated to running processes, but will not be accounted as user
             memory.
             Note also that some of the free memory may represent file system
             data.

             Memory data is collected as absolute numbers rather than with
             statistical means, such as for cpu usage.  Most bars listed here
             use this kind of accurate data, unless stated otherwise.

     rmemc   This bar is the same as the rmem bar, except that two fields are
             used to describe memory not currently in use: freec is unused
             memory which contains valid backing-store data and which may be
             reclaimed by a process or by the file system buffer cache; freeu
             is unused memory which contains no usable data.

     sysact  The system activity bar measures a few of the important system
             activities, namely total system calls, process context switches,
             fork, exec and iget operations.  Fork operations are initiated by
             a process when it wishes to create a new process.  Exec
             operations are initiated by a process to overlay itself with a
             new process; this is how a new program image is loaded and run.
             Finally, an iget operation occurs whenever the state of a file is
             changed, for instance when it is opened.  This is a crude measure
             of file system activity.  It is important to note that gr_osview
             adds to the totals shown in this bar, since it to must perform at
             least some system calls, and causes some process context
             switches.

     gfx     This bar monitors graphics activity on the system.  On most
             systems, the graphics hardware can interrupt the CPU when certain
             conditions occur; the first bar element measures the amount of
             such activity, named intr.  Every time the processor switches to
             a new process which is using a GL window on the graphics screen,
             a graphics context switch occurs, labeled swch.  The X server and
             GL graphics programs will sometimes interact with privileged code
             in the kernel to obtain some service; this is labeled ioctl after
             the system call used to perform the service.  When a GL graphics
             program wishes to be synchronized with buffer swapping done
             during double buffering, it must wait for the next vertical
             retrace.  The number of times this happens is labeled swap.
             Finally, the graphics pipeline is preceded by a FIFO buffer to
             smooth data movement into the pipeline.  When the FIFO fills up,
             which it can with a fast processor, it interrupts the host, which



                                                                       Page 10





GROSVIEW(1)                                                      GROSVIEW(1)



             waits until the FIFO has emptied somewhat before allowing the
             graphics process to continue drawing.  The fiwt element describes
             the number of times this has happened.  The finowt element
             describes the number of times the interrupt routine found that
             the FIFO was below the low-water mark by the time it had saved
             state and entered the interrupt handler.

     bdev    This bar (titled "BufAct") monitors the input/output activity to
             block devices.  Block devices are usually those which hold
             filesystems, thus this bar measures filesystem throughput.  The
             values are given in blocks per second, each block being 512 bytes
             in length.  If displayed as a numeric bar, then the logical read
             and write rates as well as the actual read and write rates, are
             displayed, as well as the hit ratio of logical to actual reads
             and writes and the rate at which delayed writes are cancelled
             (due, for example, to truncation requests).

     fault   This bar monitors page fault activity.  These are events that
             occur in managing the virtual address space of a process.  The
             types of events are:

          cpw   These are copy-on-write events.  This occurs when two or more
                processes are sharing a page, and one of them attempts to
                modify the page.  To preserve the semantics of the UNIX fork()
                primitive, a copy of the shared page is made for the process,
                and it is then allowed to modify that page at will.

          mod   Modified faults occur the first time a process modifies a
                page, which tells the operating system that the page is dirty.
                For unmodified pages, the kernel can go to the filesystem to
                get a copy of the page, which saves the overhead of keeping a
                copy on swap during paging.  A copy of all modified pages must
                be maintained in memory or on swap.

          dmd   Demand-fill faults occur the first time a process references a
                page with which there is no associated backing-store, for
                instance when first touching the BSS segment in a program.
                Since BSS is guaranteed to be zero, it is not kept in the
                object file, but is allocated to the process on demand by the
                kernel.

          cache During paging, the kernel keeps a pool of pages which have
                been selected as candidates for stealing, and have backing
                store containing a copy of the page.  This allows the kernel
                to respond to memory allocation needs quickly, while allowing
                a process to get back a page quickly if it touches it again.
                This pool is called the page cache.  Each cache event
                indicates that a page fault occurred and the desired page was
                found in the page cache.






                                                                       Page 11





GROSVIEW(1)                                                      GROSVIEW(1)



          file  File events occur when a page fault happens and a copy of the
                required page is fetched from the file system.

          swap  This event indicates that a page fault occurred, and the
                desired page was fetched from the disk swap area.

          double
                This event indicates that a second-level fault has occurred.
                On the 4D series, translation lookaside buffer (TLB) handling
                is performed entirely by software.  This is done by looking up
                the missing page entry in a page table, and entering the
                virtual to physical mapping into the TLB.  First-level faults
                are handled by extremely efficient low-level software.  The
                page tables themselves are virtually mapped, so when the first
                level TLB handler attempts to load a page table entry, it may
                fault because the page table isn't mapped.  This is a second-
                level fault, and must be repaired by high-level kernel
                routines.

          pgref This event indicates that a page fault occurred, but the page
                was actually still attached to the user address space.
                Reference faults are used by the operating system to keep
                accurate usage information when paging is imminent.

     pswap   The page swapping activity monitor bar (titled "Pages Swapped")
             measures access to the swap areas, for either swapin or swapout
             activity.  During heavy paging, both swapin and swapout activity
             could be significant.  On a system with only a single swap area
             on the same disk as the system and user data, the swapping rate
             will be effectively limited by the disk latency.  Much higher
             swapping rates are possible with several swap areas configured
             across multiple disks and disk controllers.  This may be
             necessary to achieve reasonable throughput in the face of many
             large jobs competing for main memory.

             The pswap bar is different than the swp bar described elsewhere;
             while pswap measures pages swapped in and out, the swp bar
             measures the usage of logical swap space.

     nettcp  This bar measures data throughput for the TCP network protocol,
             in kilobytes per second.  TCP, standing for Transmission Control
             Protocol, is a reliable connection oriented protocol used mainly
             for stream oriented operation, such as remote login or file copy.

     netudp  This bar measures data throughput for the UDP network protocol,
             in datagrams.  INdgram and OUTdgram measure the datagram
             throughput, while Dropped measures the number of datagrams
             dropped.

             UDP, the User Datagram Protocol, is a datagram service used where
             low latency transactions are useful.  For instance, the Sun
             Remote Procedure Call protocol uses UDP.  The NFS filesystem is



                                                                       Page 12





GROSVIEW(1)                                                      GROSVIEW(1)



             based on SunRPC, and therefore UDP activity is a good indicator
             of NFS activity.

     netip   This bar measures packet throughput for the IP network protocol.
             INpack and OUTPack measure the number of packets, while Dropped
             measures the number of packets dropped by the protocol.  In
             numeric mode, additional fields are:Forward, giving the number of
             packets forwarded on to another host and Delivered, giving the
             number of packets handed over to an upper-layer protocol.

             IP, standing for Internet Protocol, is the basic packet
             management layer of the network.  It sits between the network
             interface driver and higher level protocols, providing error
             control and routing facilities.

     netif   This bar monitors packets transmitted or received through the
             various network interfaces which may be present on a machine.  If
             displayed as a regular bar, the number of packets transferred in
             or out over the interface is shown as INpack or OUTpack.  If
             displayed as a numeric bar, then three additional fields may be
             displayed:  INerr and OUTerr measure the number of packets
             received in error or which had errors during transmission, while
             coll measures the number of packet collisions which occurred,
             which only happens on CSMA/CD interfaces.

             Each machine supporting networking has a local loopback interface
             called lo0.  This interface is not usually displayed unless
             specifically called out, and it does not have the INerr, OUTerr
             and coll fields.

     tlb     The tlb monitor bar measures translation lookaside buffer (TLB)
             activity on the system.  mpsync counts how many times a request
             is made to flush all TLB entries on all processors and vmwrap
             indicates how many times mpsync is caused by a depletion of clean
             (with respect to the TLB) kernel virtual addresses.  flush counts
             how many times an entire TLB is flushed on any one processor and
             idwrap shows how many times this happens because a processor's
             TLB ids have been depleted.  idget monitors TLB id allocation and
             idpurge counts how many times a tlb id is forcefully removed from
             a process.  Lastly, vapurge counts individual tlb entries being
             purged.

     intr    The interrupt monitor bar measures the interrupt rate in the
             system, and is broken out into VME interrupts and others, which
             are typically local interrupts to the CPU chip, such as serial
             I/O ports.  The operating system clock also interrupts the CPU at
             100HZ, thus at least this interrupt rate will always show as a
             background value.  A large interrupt value, coupled with
             extremely sluggish performance, may indicate hardware problems,
             such as continuously interrupting device.





                                                                       Page 13





GROSVIEW(1)                                                      GROSVIEW(1)



     disk    The disk monitor bar comes in two flavors, an EFS version and an
             "everything else" version.  In the EFS version, the first two
             parameters specify the space taken by the used and free I-nodes
             on the volume.  The third is the space used by files, and any
             remainder is free space.  In the non-EFS version, only the space
             used by files is shown.  The tracksum and max values are the
             number of bytes used on the file system.

     swp     This bar monitors the amount of logical swap space on the system.
             If swap space is added or deleted, the bar will update to the
             appropriate values automatically.  The total amount of logical
             swap space is computed as the sum of the amount of physical
             memory available to processes plus the amount of physical swap
             space plus the amount of virtual swap space.  Physical swap space
             is further divided into free and used.  Logical swap is reserved
             (used) by processes' private mappings (see swap(1m) for more
             information on private mappings).  The swp bar combines these two
             kinds of information (logical swap makeup and reserved logical
             swap) by splitting each of the four parts that make up the sum
             logical swap into two pieces - reserved and available.  The 8
             components of this bar are:

          mem   The amount of physical memory available to processes that is
                not reserved.

          mem-r The amount of physical memory available to processes that is
                reserved.

          fswp  The amount of physical swap that is neither allocated nor
                reserved.

          fswp-r
                The amount of physical swap that is not allocated but is
                reserved.

          uswp  The amount of physical swap that is allocated but not
                reserved.

          uswp-r
                The amount of physical swap that is allocated and reserved.

          vswp  The amount of virtual swap that is not reserved.

          vswp-r
                The amount of virtual swap that is reserved.

             The tracksum and max values are the number of bytes of logical
             swap reserved.







                                                                       Page 14





GROSVIEW(1)                                                      GROSVIEW(1)



EXAMPLE
     The following description file gives a layout identical to that used when
     the -a option of gr_osview is given:

          cpu
          rmem max tracksum
          wait strip
          sysact max tracksum creepscale
          gfx max tracksum creepscale


FILES
     /usr/sbin/gr_osview
     $HOME/.grosview

SEE ALSO
     gr_top(1), ps(1), top(1).

BUGS
     When using a strip chart display, and some other window obscures part of
     the strip chart, the bar will gradually turn to black.  This is because
     an in-framebuffer copy operation is used to make the strip appear to
     move, and when part of the window is obscured there is nothing to copy.
     It is not clear that this bug will ever be fixed, because of the
     performance advantages of this style of update.

     If the gr_osview window is redrawn, perhaps due to a repaint or resizing
     of the window, the next tick mark to be drawn on the strip may be drawn
     at an incorrect position.  Following marks will have correct position and
     interval.

     If the arbsize option is used, a tiny window can be drawn which is
     unintelligible.  It is assumed that if the arbsize option is given, then
     a truly arbitrary size is desired.

     A global colors option will only affect bars declared after the colors
     declaration.  It seems that this is the proper behavior, since it allows
     groups of bars to be set to the same colors.

     If a small window is used, and a width greater than one is specified, the
     bar header and variable names may continue beyond the end of the bar.
     This does not effect the operation of the program, but may cause some
     visual confusion.












                                                                       Page 15



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