[comp.os.minix] Track-at-a-time caching

ERUEDA%SJSUVM1.BITNET@cornellc.cit.cornell.edu (10/30/90)

   I am now implementing track-at-a-time caching within minix floppy
disk driver (I am using Minix 1.3), and I have a few questions :

    - I noticed that the original driver uses the DMA controller to
      tranfer the data from the disk directly to FS's cache. I wonder
      if the best way would be to change this, and redirect the transfer
      to my "track cache". Then, the driver would have to take care
      of the transfer to the FS (or could it use the system task ??).

    - I have planned to implement a "write-through" cache but this
      will slow down the driver. In case I switch to a "write-back"
      cache, how could the driver "know" when Minix is about to
      shutdown in order to flush its cache (an equivalent for the
      sync command).

    - An obvious solution is to locate the cache within the driver,
      any other suggestions ?

    - Definitely I am not familiar with the use of the DMA, any advices
      on how to use it, or how it is used in Minix would be highly
      appreciated.

    /* I am not looking for a high-performance floppy disk driver,
       rather I am trying to understand its implementation, and
       how I can manage to modify it successfully. */

           Many thanks in advance,
           Virtually yours.