From owner-freebsd-hackers Fri Sep 12 11:44:36 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id LAA28285 for hackers-outgoing; Fri, 12 Sep 1997 11:44:36 -0700 (PDT) Received: from usr05.primenet.com (tlambert@usr05.primenet.com [206.165.6.205]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id LAA28258; Fri, 12 Sep 1997 11:44:29 -0700 (PDT) Received: (from tlambert@localhost) by usr05.primenet.com (8.8.5/8.8.5) id LAA02974; Fri, 12 Sep 1997 11:43:54 -0700 (MST) From: Terry Lambert Message-Id: <199709121843.LAA02974@usr05.primenet.com> Subject: Re: Do *you* have problems with floppies? To: luigi@labinfo.iet.unipi.it (Luigi Rizzo) Date: Fri, 12 Sep 1997 18:43:54 +0000 (GMT) Cc: kjk1@ukc.ac.uk, hackers@FreeBSD.ORG, questions@FreeBSD.ORG In-Reply-To: <199709120935.LAA03134@labinfo.iet.unipi.it> from "Luigi Rizzo" at Sep 12, 97 11:35:28 am X-Mailer: ELM [version 2.4 PL23] Content-Type: text Sender: owner-freebsd-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > > Wild guess: driver needs to recalibrate every once in a while, so if you > > write a whole floppy at once, it slowly loses calibration. MS-DOS > > `recalibrates' by writing the FAT every block or so. How does that sound? > > I doubt it writes the fat so often, performance would be much worse > than the 30-40K/s we get now... This should be unnecessary. In Technical report CMU-CS-93-196, "An MS-DOS File System for UNIX", Allessandro Forin and Gerald R. Malan hobbled an FFS system, claiming many of its opimizations to be "unfair for comparison", and then loaded the entire FAT into core to improve the FAT performance relative to the FFS. They also neglected the fact that a writeable FAT FS can't be a POSIX FS because of its failure to follow "must be updated" timestamp semantics -- FAT does not supportstorage of all require POSIX tiemstamp fields, so this is impossible for it. In any case, the in-core FAT was written infrequently (it was stored in MACH pageable memory), which means they were not resynchronizing. [a much shorter version of the paper is available in the Proceedings of the 1994 Winter USENIX Conference, January 1994)] Personally, I suspect timing issues with the floppy driver; I assume you are using an unFIFO'ed NEC floppy controller. Floppy timing is a critical factor in hysterisis effects and overall reliability. Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.