Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 4 Feb 1996 12:54:52 -0559 (CST)
From:      Boyd Faulkner <faulkner@asgard.bga.com>
To:        luigi@labinfo.iet.unipi.it (Luigi Rizzo)
Cc:        hackers@freebsd.org
Subject:   Re: FAT filesystem performance
Message-ID:  <199602041854.MAA07227@asgard.bga.com>
In-Reply-To: <199602041410.PAA18920@labinfo.iet.unipi.it> from "Luigi Rizzo" at Feb 4, 96 03:10:36 pm

next in thread | previous in thread | raw e-mail | index | archive | help
Before Terry has a fit :-) , let me tell you what he once told me.
One of the problems of implementing someone else's file system is 
error recovery.  If you cache FAT and your power goes out, for example,
the FAT on the disk is not consistent.  Aside from there being no fsck_msdos,
if you then booted up in DOS, your filesystem would be inconsistent, and
DOS doesn't like or expect that.  You can write a fast read-only FAT
FS but you have to fail as FAT would fail, to be truly compatible.

Did I get that right, Terry? :-)
Boyd

According to Luigi Rizzo:
> 
> 
> Some time ago there was a discussion on the performance of FAT
> filesystems. I think the conclusion was that it is not intrinsically
> slow, it is just a problem of non optimal implementations which
> tend not to keep the FAT in memory, and perhaps use synchronous writes. 
> 
> Additionally, performance might probably benefit by an allocation
> policy which privileges contiguity and locality for the blocks
> belonging to the same file. 
> 
> We use FAT filesystems both in the kernel, and in mtools.
> For the latter, I thought there was a quick fix to the problem of
> caching the FAT: just mmap the device, and the kernel will do caching
> for you. Well, it does not look that simple, as the vast majority of
> raw devices does not support mmap.
> 
> I am wondering: how hard would it be to add mmap() to, say, wd.c ?
> Would it have other useful applications ?
> 
> 	Thanks
>         Luigi
> ====================================================================
> Luigi Rizzo                     Dip. di Ingegneria dell'Informazione
> email: luigi@iet.unipi.it       Universita' di Pisa
> tel: +39-50-568533              via Diotisalvi 2, 56126 PISA (Italy)
> fax: +39-50-568522              http://www.iet.unipi.it/~luigi/
> ====================================================================
> 
> 


-- 
_____________________________________________________________________________

        Boyd Faulkner            "The fates lead him who will;
   faulkner@asgard.bga.com       Him who won't, they drag."
http://asgard.bga.com/~faulkner  Old Roman Saying -- Source:  Joseph Campbell
_____________________________________________________________________________



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199602041854.MAA07227>