Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!seismo!rochester!cornell!batcomputer!braner
From: braner@batcomputer.tn.cornell.edu (braner)
Newsgroups: comp.sys.atari.st
Subject: Re: Re: A challenge to you disk experts
Message-ID: <1911@batcomputer.tn.cornell.edu>
Date: Tue, 23-Dec-86 23:06:36 EST
Article-I.D.: batcompu.1911
Posted: Tue Dec 23 23:06:36 1986
Date-Received: Wed, 24-Dec-86 05:37:50 EST
References: <1895@batcomputer.tn.cornell.edu> <496@atari.UUcp>
Reply-To: braner@batcomputer.UUCP (braner)
Organization: Theory Center, Cornell University, Ithaca NY
Lines: 37
Summary: A cache for floppy use IS possible and DESIRED!

[]

Thanks to Allan for the expert advice.

My goal is not to minimize disk head movement, but to minimize disk use.
Period. Unnecessary head movement causes longer disk-turning periods -->
more disk (and head) wear (and more waiting time).

I used a 27K buffer for disk read in AUTOCOPY since the speed does not
increase significantly for larger buffers.  (Indeed, the speed is almost
up to its max with 9K!)   There I used Fread() to read into the buffer.

In AUTODISK (recently posted) I used Rwabs(), as Allen suggested.  The whole
idea behind AUTODISK is that I copy the whole disk as a block, starting with
reading the boot sector and FAT, so I know how much to read on without
re-reading anything.

I very much wish I had a good disk-cache program.  That would eliminate
not only the need for dirty tricks like AUTODISK, but also (with a BIG
cache) the need for a RAMdisk!  The problem of handling disk-swappings
(by the user, with no warning) is serious, but not insurmountable.
For example, one could write a cache program that would keep track of
the disk things came off of (not just sectors and drives), and would NOT
delay WRITING of data to the physical disk.  The former feature would allow
handling data from two or more disks with one drive and no extra swapping,
and the latter would avoid writing on the wrong disk and also after-the-fact
reporting of write errors (common on floppies...).  If the user does not
swap disks too often, the program would not need to check the disk ID very
often, and GREAT increases in disk throughput would become possible!!
If I had the time for a large project like that, a GOOD disk-cache program
would be my very first choice!  Anybody out there up to it?

Of course I've spent time on AUTOCOPY and AUTODISK, perhaps more than I'd
ever regain from them.  But EVERYBODY can now use them for free!  It's
part of my share in the great world of Public Domain Software.

- Moshe Braner