home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 8 / CDACTUAL8.iso / share / dos / varios / ccdisk / concache.txt < prev    next >
Encoding:
Text File  |  1996-06-22  |  27.3 KB  |  768 lines

  1. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  2.  
  3.  
  4.  
  5. NAME
  6.      concache.exe - DOS concurrent disk cache
  7.  
  8. SYNOPSIS
  9.      concache   [memory-arguments]   [drive-arguments]   [option]
  10.      [flags]
  11.  
  12.      device=concache.exe   [memory-arguments]   [drive-arguments]
  13.      [option] [flags]
  14.  
  15.      concache VECTOR [interrupt-number interrupt-id]
  16.  
  17. COMMAND LINE RULES
  18.      Command line has following rules
  19.  
  20.      -    Operands  consist of options and terminating ';' (semi-
  21.           colon).  Except for ';' , the order is unimportant.
  22.  
  23.      -    The character ';' (semicolon) terminates command  line.
  24.           Operands after the character are ignored.
  25.  
  26.      -    All  operands are case sensitive, and generally must be
  27.           in lower case.  In this  version  VECTOR  is  the  only
  28.           upper  case  operand.  On config.sys line, operands are
  29.           converted to lower case and then interpreted.
  30.  
  31.      -    The character '/' can be placed anywhere ' ' (the white
  32.           space) can be placed.
  33.  
  34.      -    Alphabetic part of an option can be abbreviated down to
  35.           one character, if there is no ambiguities.  For example
  36.           the delete option has the syntax [d[e[l[e[t[e]]]]]].
  37.  
  38.      -    Where drives are written, the character ':' (colon) can
  39.           be written, if adjacent to drive  letter,  as  many  as
  40.           wanted.  For  example,  in  concache.exe  command line,
  41.           "sfg" is equivalent to "s:f:g:", "sf:g::", and so on.
  42.  
  43.      The   bitmap_length=   and    buffer_size=    options    and
  44.      gang_interrupts  and  gnaw_interrupt  options  are  the only
  45.      those that at least leading two letters disambiguate.
  46.  
  47. DESCRIPTION
  48.      Conc286.exe has the  same  functionality  with  concache.exe
  49.      except that it runs also on 286 based compatibles with obvi-
  50.      ous limitation it is loaded only below 640kb of main  memory
  51.      when under 286 CPU.
  52.  
  53.      The  concache.exe is the disk cache program for DOS environ-
  54.      ments. The other programs ccdisk.exe and floppies.exe  works
  55.  
  56. Concache 1.10       Last Update:  20 June 1996                  1
  57.  
  58.  
  59.  
  60. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  61.  
  62.  
  63.  
  64.      under the control of this program.
  65.  
  66.      It  is  possible to load concache.exe into UMB (upper memory
  67.      block) by appropriate  load  command,  such  as  devicehigh=
  68.      instead  of  device=  or  using  loadhigh command.  Also, it
  69.      loads its resident part into UMB with its option.  This  can
  70.      be  convenient  since this method is not affected by initial
  71.      concache.exe program size.  See below for more.
  72.  
  73.      After loaded as a character device driver or as a TSR  (Ter-
  74.      minate  and  Stay Resident) program, concache.exe can change
  75.      most of parameters from command.com command line.
  76.  
  77.      If used without any operand, concache.exe lists the flags in
  78.      effect,  state  of  memory, and state of disks in use.  con-
  79.      cache.exe gets this information from  resident  concache.exe
  80.      program.
  81.  
  82.      After  concache.exe  has  become  resident,  if  windows  is
  83.      started, concache.exe is expected to be  readable  from  the
  84.      same drive and directory as it is loaded. For example, if it
  85.      is loaded from a floppy drive, the floppy  media  is  refer-
  86.      enced at the same drive when windows starts.
  87.  
  88.  
  89.   Memory Arguments
  90.      These  arguments  determines  the  cache data area and their
  91.      sizes to be used for keeping copies of disk data.  At  least
  92.      one of them must be present for concache.exe to go resident.
  93.      Each of the named memories are examined and if enough memory
  94.      is  available to satisfy the argument then they are used for
  95.      cache data area.  Memory argument takes following forms
  96.  
  97.      x[size]
  98.           Allocate/redefine  extended  memory  according  to  XMS
  99.           (Extended Memory Specification) 2.0.
  100.  
  101.      e[size]
  102.           Allocate/redefine  expanded  memory  according  to  EMS
  103.           (Expanded Memory Specification) 4.0.  Concache.exe does
  104.           not use page frames.
  105.  
  106.      p[size]
  107.           Allocate  raw  protected  memory,  retrievable via BIOS
  108.           int15.
  109.  
  110.      where size is the size to start or to continue concache.exe.
  111.      If  size  is  not  given, concache.exe uses all of available
  112.      memory of the type.
  113.  
  114.  
  115. Concache 1.10       Last Update:  20 June 1996                  2
  116.  
  117.  
  118.  
  119. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  120.  
  121.  
  122.  
  123.      Int15 memory is not allowed to change its  size  after  once
  124.      concache.exe  is loaded.  Changing its size is only possible
  125.      by unloading and reloading concache.exe.
  126.  
  127.      Extended and expanded memory can  be  changed  at  any  time
  128.      after  concache.exe  is  loaded.   However, this must not be
  129.      exercised frequently, since this causes voiding  accumulated
  130.      cached data in memory.
  131.  
  132.      Size  is  written  in  decimal or in 0x preceded hexadecimal
  133.      value optionally followed by no space intervening m, mb,  k,
  134.      kb,  or  b for megabytes, kilobytes, or bytes, respectively.
  135.      (A trailing b is for "bytes".  If the  hexadecimal  is  fol-
  136.      lowed by 'b' then it is interpreted as part of value but not
  137.      to mean "bytes".)  The size is truncated to nearest multiple
  138.      of  64  kb.   If  total  usable  memory is less than 128 kb,
  139.      caching is not done.
  140.  
  141.      The total maximum value concache.exe handles is 64 mb.
  142.  
  143.  
  144.   Drive Arguments
  145.      Drive arguments define cache  refreshment  policy  for  each
  146.      drive.  They take the forms
  147.  
  148.      c[drives] (default)
  149.           to refresh cache using concurrent method, that is, con-
  150.           cache.exe refreshes unwritten (wet) cache data back  to
  151.           drives  concurrently  with  user  programs and DOS, and
  152.           possibly with the other devices,
  153.  
  154.      a[drives]
  155.           to refresh cache not using concurrent method but  using
  156.           write after,
  157.  
  158.      w[drives]
  159.           to  refresh cache with "write through" method.  This is
  160.           the safest traditional disk cache method,
  161.  
  162.      s[drives]
  163.           not to cache the data for the drives.
  164.  
  165.      Drives are written after each c, a,  w,  s  letter  with  no
  166.      spaces  and  tabs.  Range expressions of drives are allowed.
  167.      For example, wja-df-h is equivalent  to  wabcdfghj  to  mean
  168.      drives  a:, b:, c:, d:, f:, g:, h:, j: are to be cached with
  169.      write through method but drives e:, i:, and those  after  j:
  170.      are not.
  171.  
  172.      It  makes no sense to specify different refreshment policies
  173.  
  174. Concache 1.10       Last Update:  20 June 1996                  3
  175.  
  176.  
  177.  
  178. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  179.  
  180.  
  181.  
  182.      for drives on the same devices. In these cases  concache.exe
  183.      uses  the most pessimistic policy for the drive.  Note actu-
  184.      ally this happens only between concurrent  and  write  after
  185.      methods.
  186.  
  187.      If  no  drives are specified after any of c, a, w, s letter,
  188.      then it means "all the other" drives.  For  example  aabc  w
  189.      specifies  drives  a:,  b:,  c:  are cached with write after
  190.      method but all the other drives are write through.
  191.  
  192.  
  193.      With similar syntax, following cache controls are available.
  194.  
  195.      r[drives]
  196.           means  refresh  unwritten  cache data back immediately.
  197.           The command awaits the completion of the writes.
  198.  
  199.      f[drives]
  200.           means discard all data for the  drive  unconditionally,
  201.           written  back  or  not.   In  practice, flush is seldom
  202.           used. If however, for example, floppy change line  does
  203.           not  work,  then cached data for the device may have to
  204.           be flushed with this method.
  205.  
  206.      n[drives]
  207.           disallows  prereading  on  the  drives.  Normally  con-
  208.           cache.exe  schedules  one  block  preread  after a read
  209.           request is completed.
  210.  
  211.      o[drives]
  212.           reenables  prereading  on  the   drives   disabled   by
  213.           n[drives].
  214.  
  215.      The  r[drives]  and f[drives] are only meaningful after con-
  216.      cache.exe is loaded.  Thus these two are meaningless on con-
  217.      fig.sys command line.
  218.  
  219.  
  220.   Options.
  221.      Among  available  options,  the most frequently use ones are
  222.      load_umb, io_buffers_low, and delete.  All other options are
  223.      for  fine control of efficiency on particular configurations
  224.      or applications, or for solving possible  incompatibilities.
  225.  
  226.      bitmap_length=nbytes
  227.           The  value  for  nbytes must be less than 128 and even.
  228.           This directs how the cache data area  given  by  memory
  229.           arguments  described  above  is to be split into arenas
  230.           which are multiple of 16kb.  This option can be  useful
  231.           for very small or large cache data area, or the area is
  232.  
  233. Concache 1.10       Last Update:  20 June 1996                  4
  234.  
  235.  
  236.  
  237. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  238.  
  239.  
  240.  
  241.           frequently changed.  Since the bit map length is corre-
  242.           lated  with max_directory_size= option, a more explana-
  243.           tion is given below.
  244.  
  245.  
  246.      buffer_size=nbytes
  247.           The option specifies the size of each  io  buffer  that
  248.           may  be  specified by io_buffers= option (see below) to
  249.           be used for cache io, which defaults  to  the  size  of
  250.           largest block disks, normally 512 bytes.  The value can
  251.           be any multiple of this default.
  252.  
  253.  
  254.      concurrency=max_concurrency
  255.           The option specifies the number  of  devices  that  can
  256.           perform  io in parallel.  The value must be larger than
  257.           1.  This option is used to prepare stacks  and  working
  258.           spaces for concurrency.
  259.  
  260.  
  261.      delete
  262.           The  delete  option  is  the  option  to  tell resident
  263.           (loaded as TSR) concache.exe to be unloaded  from  mem-
  264.           ory. It ignores all the other operands.
  265.  
  266.           This  option  tries to refresh unwritten data before it
  267.           attempts to delete the resident code and data.
  268.  
  269.           If delete is unsuccessful for  any  reason,  then  con-
  270.           cache.exe stays in memory with stop mode.
  271.  
  272.  
  273.      gang_interrupts
  274.           This  option  is  seldom, probably never, necessary. It
  275.           tells concache.exe  that  programs  other  than  multi-
  276.           taskers  and concache.exe need BIOS multitasking inter-
  277.           rupts.
  278.  
  279.           Normally, concache.exe terminates int159[01]  chain  to
  280.           prevent  from stack overflow. However, if TSR or device
  281.           driver loaded before concache.exe needs the interrupts,
  282.           then this option must be used.
  283.  
  284.           If  this  option  is  used  then stacksize= (see below)
  285.           option should be specified to a larger value.
  286.  
  287.  
  288.      gnaw_interrupt
  289.           This option should be seldom necessary.  Normally  con-
  290.           cache.exe  handles  floppy  and  IDE disk interrupts by
  291.  
  292. Concache 1.10       Last Update:  20 June 1996                  5
  293.  
  294.  
  295.  
  296. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  297.  
  298.  
  299.  
  300.           itself to guard against  interrupt  handlings  of  some
  301.           BIOSes  which  cause stack overflow.  This option tells
  302.           disk interrupts should be handled by genuine BIOS.   If
  303.           this  option is used then stacksize= (see below) option
  304.           might be necessary to be a larger value.
  305.  
  306.  
  307.      h[{c|d|h|m|w}...]
  308.           The option controls status display  from  concache.exe,
  309.           where 'c' displays the values of options in effect. The
  310.           'd' drive status, the 'h', together  with  'd',  clears
  311.           drive  statistics, the 'm' displays state of cache data
  312.           area, and the 'w' displays concache.exe overall  condi-
  313.           tions.
  314.  
  315.           The  'c',  'd', 'm', 'w', and 'h' can be combined (with
  316.           no intervening space) into one operand. If 'h' alone is
  317.           given then concache.exe behaves as if hcdmw is given.
  318.  
  319.  
  320.      io_buffers_low
  321.           This  option  directs  allocation  of io buffers in low
  322.           (conventional) memory.  If this  option  is  not  used,
  323.           then io buffers are allocated at the same region as for
  324.           resident part of concache.exe.
  325.  
  326.  
  327.      io_buffers=number-of-entries
  328.           This option specifies the number of disk and floppy  io
  329.           buffers.   The  default is 16 (8kb if buffer_size = 512
  330.           bytes).  Increasing this value improves performance.
  331.  
  332.  
  333.      largest_io_buffer=number-of-entries
  334.           This option specifies the maximum number of io  buffers
  335.           to  be  used  for  each  buffer refresh operation.  The
  336.           default value is the value  given  by  io_buffers=  and
  337.           bitmap_length= above, of whichever is smaller. But set-
  338.           ting this value larger than these values has no effect,
  339.  
  340.           Specifying  the  value smaller than default can improve
  341.           concurrency, but  can  make  individual  io  operations
  342.           slower.
  343.  
  344.  
  345.      load_umb
  346.           This option specifies the resident part of concache.exe
  347.           be loaded into UMB if possible.  If used  with  device-
  348.           high  or  loadhigh  command then this option is ignored
  349.           (i.e., naturally satisfied).
  350.  
  351. Concache 1.10       Last Update:  20 June 1996                  6
  352.  
  353.  
  354.  
  355. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  356.  
  357.  
  358.  
  359.      max_directory_space=nbytes
  360.           The default value is computed as the trade off  between
  361.           space   required  and  hash  table  access  efficiency.
  362.           Although concache.exe computes this value and  the  bit
  363.           map  length  and  allocates space for all necessary bit
  364.           map at start up, the value can  be  improper  when  the
  365.           cache  data area was changed without recomputing it, or
  366.           when very large cache data area is  used.   The  option
  367.           allows  redefine the size of concache.exe directory for
  368.           cache data area.
  369.  
  370.  
  371.      stackspace=nbytes
  372.           specifies size of each  stack  space  for  concurrently
  373.           driven devices.
  374.  
  375.  
  376.      tick_delay=number-of-seconds
  377.           This  option  specifies  the  delay  after any DOS disk
  378.           access to begin writing wet data back to devices.   The
  379.           value can be up to 254.  Default value is one.  Because
  380.           io request clash is most expensive, a larger delay tend
  381.           to avoid that of request to write back by concache.exe,
  382.           the background, and requests that come  from  DOS,  the
  383.           foreground.   Also, the more writes accumulate in cache
  384.           data area, the smaller the number  of   actual  writes.
  385.           On  the  other  hand,  refreshing  quickly  may prepare
  386.           future write requests' cache data area.
  387.  
  388.  
  389.      unknown_drives_allowed
  390.           This option tells concache.exe that drives  unknown  to
  391.           it  must  be treated just like hard disks.  In the case
  392.           such as two drives are unknown but only one of them  is
  393.           to  be  handled  as  a  hard  disk, the remaining truly
  394.           unknown one must be marked with s drive argument.  Fol-
  395.           lowing  types of drives are treated as "unknown" drives
  396.           by concache.exe.
  397.  
  398.  
  399.           Number of fats are not two.
  400.                These drives may represent ram disks, which  don't
  401.                need to be cached.
  402.  
  403.           Not a physical disk.
  404.                In  current directory structure in DOS, each drive
  405.                is marked  as  a  physical  drive  or  not.   Con-
  406.                cache.exe faithfully believes this information.
  407.  
  408.  
  409.  
  410. Concache 1.10       Last Update:  20 June 1996                  7
  411.  
  412.  
  413.  
  414. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  415.  
  416.  
  417.  
  418.           Extraordinary block size devices.
  419.                If physical block size is not 512 bytes or if log-
  420.                ical block size is not 512, 1024, 2048,  4098,  or
  421.                8192 bytes  then the device is unknown.
  422.  
  423.           Drive is neither disk or floppy.
  424.                If  device  parameter  reports otherwise, then the
  425.                drive is considered unknown.
  426.  
  427.           No device parameters.
  428.                Drives on device driver which does  not  implement
  429.                ioctl  function  (int21440d,  get drive parameters
  430.                call).
  431.  
  432.           Only this last type of disk drives  can  be  forcefully
  433.           "known"   to   concache.exe   by   using   the   option
  434.           unknown_drives_allowed, in which case the drive is han-
  435.           dled  as  if  a  known disk.  Typically, device drivers
  436.           that predate DOS 3.3 lack (or have undetectable) device
  437.           parameters are rescued with this option.
  438.  
  439.  
  440.   More on load_umb And io_buffers_low Options
  441.      The  load_umb option alone specifies that both resident part
  442.      and io buffers are to be loaded high. If it  is  accompanied
  443.      with  io_buffers_low  then io buffers are tried to load into
  444.      low memory and resident part is attempted  to  be  in  upper
  445.      memory.  In  the  latter case if there is no upper memory to
  446.      load resident memory both will be loaded low.  The  load_umb
  447.      option is treated as a hint; if no upper memory to load res-
  448.      ident part is found then the resident part is  loaded  where
  449.      it  happened  to  find  adequate  space.  On the other hand,
  450.      io_buffers_low is regarded as a  mandatory  requirement;  if
  451.      there  is no low memory to load io buffers, then the loading
  452.      concache.exe will be aborted.
  453.  
  454.  
  455.  
  456.   Flags
  457.      Flags are specified after "+" or "-" to mean  set  or  reset
  458.      the flags.  Default states of flags are all reset, irrespec-
  459.      tive of options and arguments.
  460.  
  461.  
  462.      h    The flag h is to "hold" the cached data. If  this  flag
  463.           is effective, no additional cache is made, while cached
  464.           data are retrievable. This flag is useful to prevent  a
  465.           large copy of files from flushing useful cached data.
  466.  
  467.  
  468.  
  469. Concache 1.10       Last Update:  20 June 1996                  8
  470.  
  471.  
  472.  
  473. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  474.  
  475.  
  476.  
  477.      l, u The  flag  l  "lock"s  the  succeeding cached data.  To
  478.           "unlock" the lock, use u flag. This flag starts  unlock
  479.           previously  locked  cache  data.  The +l starts locking
  480.           referenced data, while -l stops locking  further.   The
  481.           locked  cached  data  are not purged out of cache until
  482.           worst case (where no unwritten cache data area exist to
  483.           additionally  cache) arises.  After l flag is set, con-
  484.           cache.exe marks the data in cache as locked,  to  indi-
  485.           cate  subsequent  space  hunter  keep  away  from those
  486.           marked. If the flag is reset by either -l  concache.exe
  487.           stops the marking.  The +u says start unlocking if data
  488.           blocks touched are in locked state, while -u tells stop
  489.           unlocking on further data reference.  "Unlocking" means
  490.           unmark the locked data  touched  while  u  flag  is  in
  491.           effect.  These data in cache becomes ordinary member of
  492.           cached data.  After this, space  hunter  can  take  the
  493.           piece of memory into consideration.
  494.  
  495.           Since it is illogical to allow both locking and unlock-
  496.           ing at the same time, the +l and the +u are  considered
  497.           to  implicitly  deny each other.  The command line does
  498.           not allow +ul or -ul.
  499.  
  500.           Locking is not a write protection. Locked data may  get
  501.           "wet". They obey the usual cache refreshment policy.
  502.  
  503.           There are two points to note.
  504.  
  505.           If  too  much records are locked, cache performance can
  506.           degrade because concache.exe uses  only  the  remaining
  507.           space for the other.
  508.  
  509.           For  write  operations,  if  space  to  write cannot be
  510.           found, an  arbitrarily  chosen  locked  space  will  be
  511.           silently  unlocked and used as an ordinary cache space.
  512.  
  513.  
  514.      n    The flag +n says not to perform prereads on any  drive.
  515.           -n  restarts preread operation on drives that have no n
  516.           specified.
  517.  
  518.  
  519.      c, a, w, s
  520.           These flags are alternate  ways  to  define  the  cache
  521.           refreshment  policy for all drives.  The +c flag speci-
  522.           fies all drives specified by c argument  to  use  fully
  523.           concurrent  write  back.   The  +a  flag  specifies all
  524.           drives  specified  by  c  or  a  argment  to  use  non-
  525.           concurrent  write  back. It allows concache.exe to syn-
  526.           chronize with DOS.  The +w flag  specifies  all  drives
  527.  
  528. Concache 1.10       Last Update:  20 June 1996                  9
  529.  
  530.  
  531.  
  532. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  533.  
  534.  
  535.  
  536.           specified  by  c,  a,  or w argument to use write back.
  537.           The flag +s specifies cache should not be done.   These
  538.           flags  are  mutually  exclusive,  and specifying one of
  539.           these flags resets the other flags automatically.
  540.  
  541.           Resetting flags with -a, -w, and -s respectively resets
  542.           +a,  +w,  and +s.  (Note -c "resets" the +c but this is
  543.           meaningless.)  In general, each of them  is  meaningful
  544.           iff the corresponding flag is set.
  545.  
  546.           Since  these  flags  are  specified  independently from
  547.           drive arguments, the overall refreshment policy can  be
  548.           maintained keeping the drive's default policies.
  549.  
  550.           The  flag set is combined with drive refreshment policy
  551.           and the pessimistic value is used for the drive's  pol-
  552.           icy.
  553.  
  554.           Resetting  these  options  lets  concache.exe go to the
  555.           default c refreshment  policy,  even  if  -c  is  used.
  556.           These options are asymmetric in this sense.
  557.  
  558.  
  559.   VECTOR argument
  560.      This argument is used to change interrupt convention used to
  561.      communicate between resident and  transient  parts  of  con-
  562.      cache.exe,  ccdisk.exe,  and  floppies.exe.  The programs do
  563.      not become resident by  invoking  the  programs  using  this
  564.      argument.   No  interactions to resident programs are tried.
  565.      They merely rewrite themselves and exit immediately.
  566.  
  567.      This argument must be written by its own; no other arguments
  568.      can be written together.  VECTOR must be in upper case.
  569.  
  570.      If  interrupt-number  and  interrupt-id are missing then the
  571.      current settings of interrupt conditions  for  the  commands
  572.      are displayed.
  573.  
  574.      The  interrupt-number  is a two digit hexadecimal number and
  575.      interrupt-id is a four digit hexadecimal  number  loaded  in
  576.      register  AX  when  the  interrupt is used.  They are inter-
  577.      preted as hexadecimal values without leading 0x or  trailing
  578.      h.
  579.  
  580.      The  default  values  are interrupt-number = 0xbe and inter-
  581.      rupt-id = 0xefed.  This default interrupt number is known to
  582.      be  used  by IBM ROM BASIC.  If the machine is using it, the
  583.      interrupt number for above programs must be changed  to  the
  584.      other than the range 0x86 - 0xf0.
  585.  
  586.  
  587. Concache 1.10       Last Update:  20 June 1996                 10
  588.  
  589.  
  590.  
  591. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  592.  
  593.  
  594.  
  595.      Unfortunately,  there  are many settings that cause conflict
  596.      with other programs.  Further, there are no absolutely  con-
  597.      flict free values. Following are a few of known reminders.
  598.  
  599.      -    External interrupts should not be chosen since they can
  600.           have any value in register AX at the instance of inter-
  601.           rupts.
  602.  
  603.      -    Also,  there  are  a  few  interrupts that can have any
  604.           value in register AX, such as 0x00 - 0x0f, 0x18,  0x19,
  605.           0x20, 0x28, and 0x2e.
  606.  
  607.      -    A  few interrupt numbers are not really used for inter-
  608.           rupts but rather for table  addresses.  These  includes
  609.           0x1d - 0x1f.
  610.  
  611.      -    Frequently  used  interrupts  such as 0x21, 0x2a, 0x2f,
  612.           and 0x13 should be avoided since such  interrupts  must
  613.           pass through the chain of interrupt unnecessarily.
  614.  
  615.      -    Larger  interrupt-id  values  cause  less conflicts, in
  616.           general.
  617.  
  618. WHEN TO USE DESCRIPTIONS
  619.      Each of arguments on command line can or must  be  specified
  620.      at  load  time  or  after loaded.  Following clarifies these
  621.      conditions.
  622.  
  623.      Arguments missing in the tables below can be used either  at
  624.      load time or after loaded.
  625.  
  626.      1) Must be at load time
  627.           Memory argument is the minimal must.
  628.  
  629.           The  raw  protected  memory is specifiable only at load
  630.           time.
  631.  
  632.           In addition, following options are only  meaningful  at
  633.           load time.
  634.  
  635.          buffer_size=   gang_interrupts          gnaw_interrupt
  636.          io_buffers=    io_buffer_low            largest_io_buffer=
  637.          load_umb       max_director_spaces=     stackspace=
  638.          tick_delay=    unknown_device_allowed
  639.  
  640.      2)Used only after loaded
  641.           Options   delete  and  h[c|d|h|m|w],  device  arguments
  642.           o[drives], r[drives], and f[drives] are meaningful only
  643.           after loaded.
  644.  
  645.  
  646. Concache 1.10       Last Update:  20 June 1996                 11
  647.  
  648.  
  649.  
  650. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  651.  
  652.  
  653.  
  654. WHEN TO LOAD CONCACHE.EXE
  655.      Under  DOS  environment,  it  is  important  to  load device
  656.      drivers and TSRs in a specific order. Below is  the  loading
  657.      order related to concache.exe.
  658.  
  659.      1)   Concache.exe  must be loaded after block device drivers
  660.           intended to be cached.  It intercepts DOS device driver
  661.           requests.
  662.  
  663.      2)   Ccdisk.exe  must  be loaded after ASPI manager, but due
  664.           to the condition above, it must be loaded  before  con-
  665.           cache.exe.  Ccdisk.exe is loaded only by config.sys.
  666.  
  667.      3)   Floppies.exe  may  be  loaded  independent  of  all the
  668.           other.
  669.  
  670.      4)   If disk-in-disk type of device drivers are  used,  then
  671.           concache.exe  must  be  loaded  before them, except for
  672.           those specifically noted.
  673.  
  674.  
  675. EXAMPLES
  676.      Locking all executable's directory entries and stop locking
  677.  
  678.           concache /+l
  679.           missing     /nonexisting exe file
  680.           concache /-l
  681.  
  682.  
  683.      Using 2megabytes of EMS and XMS each at startup
  684.  
  685.           concache /x2m /e2m
  686.  
  687.  
  688.      Startup anyway. The exact memory size other  than  raw  pro-
  689.      tected memory will be given afterwards.
  690.  
  691.           concache /x0
  692.  
  693.  
  694.      Change vectors for concache.exe, ccdisk.exe and floppies.exe
  695.      to interrupt-number = 0x16 and interrupt-id = 0xbeef.
  696.  
  697.           concache V 16 beef
  698.           ccdisk VE 16 beef
  699.           floppies VEC 16 beef
  700.  
  701.  
  702. SEE ALSO
  703.      ccdisk.txt, floppies.txt, eqanda.txt, overview.txt.
  704.  
  705. Concache 1.10       Last Update:  20 June 1996                 12
  706.  
  707.  
  708.  
  709. CONCACHE.EXE    COPYRIGHT 1995-1996 horio shoichi    CONCACHE.EXE
  710.  
  711.  
  712.  
  713.      Ralf Brown, Jim Kyle "PC interrupts" 2nd ed., Addison Wesly
  714.  
  715.  
  716. FEATURES
  717.      Concache.exe works only on local physical block devices.  No
  718.      redirected nor character devices are considered.
  719.  
  720.      Depending  on  interrupt  overlay  order with the other pro-
  721.      grams, delete option may not always work.
  722.  
  723.      The  option  io_buffers_low  is  effectively  impossible  if
  724.      loaded  by loadhigh or devicehigh= command, since the latter
  725.      preoccupies whole conventional memory.
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.  
  734.  
  735.  
  736.  
  737.  
  738.  
  739.  
  740.  
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764. Concache 1.10       Last Update:  20 June 1996                 13
  765.  
  766.  
  767.  
  768.