Write-Behind (was Re: Record-access libraries)

Charles Hedrick hedrick at geneva.rutgers.edu
Tue Oct 25 05:16:56 AEST 1988


The only smart controller I know about is the Ciprico 32xx.  (This is
a VME controller with 512K of cache.  We use it on our Suns.)  It
distinguishes 3 kinds of transaction: raw and two kinds of normal I/O
(the two kinds are intended to be used for small and large transfers).
The driver tells the controller board which kind of transfer is being
done.  The controller board has separate parameters for each kind, so
you can decide what sort of caching and read-ahead is to be done for
each.  Here is the help message from our script, which descibes the
options.  As far as I know, write is never delayed, for reasons of
filesystem integrity.

  echo "rfset raw fullblocks shortblocks"
  echo "  where arguments are in hex, with bits"
  echo "  200 - readahead will cross cylinders"
  echo "  100 - readahead will cross tracks"
  echo "   80 - disable zero latency"
  echo "   20 - reorder writes"
  echo "   10 - reorder reads"
  echo "    8 - cache write data"
  echo "    4 - force completion of readaheads before doing other I-O"
  echo "    2 - cache read data"
  echo "    1 - use cache when reading"
  echo "  arguments are:"
  echo "   raw: control transactions involving raw disk or swapping"
  echo "   fullblocks: normal I/O, multiples of 4K"
  echo "   shortblocks: normal I/O, other sizes"



More information about the Comp.unix.wizards mailing list