A common VFS and a Common conf-system (Was: namespacing)

Avery Pennarun apenwarr at nit.ca
Tue Mar 1 18:25:50 EET 2005


On Mon, Feb 28, 2005 at 11:45:59PM -0500, Sean Middleditch wrote:

> On Tue, 2005-03-01 at 01:05 +0000, Jamie McCracken wrote:
> 
> >If you want something thats fast, easy to use and KISS that could take 
> >advantage of this then look at FUSE (http://fuse.sourceforge.net/) - it 
> >rocks!.
> 
> Unfortunately, it's Linux only, and has an incredibly brain-dead design
> where you have to utilize "round-trips" through the kernel for something
> that essentially happens entirely in user-space,

This is not entirely true: thanks to some contributions by my company, FUSE
has extensions that allow the kernel to *cache* your stuff in the normal
page cache, so after the first access, files can be retrieved as quickly as
from a normal filesystem, even across processes, and with a high level of
reliability.  That's a very big advantage that you will simply never achieve
in a 100% userspace solution.

This allowed us to make a network file sharing client (FunFS) using FUSE
that runs faster than the NFS client even though 99% of the client is in
userspace.

> and forces a superbly poor API (POSIX) onto all its file systems,
> including those where POSIX makes absolutely no sense whatsoever.

This, however, is true.  Once you've made a good VFS layer, connect it to
FUSE and get the advantages of FUSE.  Don't do it the other way around, or
you get the *disadvantages* of FUSE.

Have fun,

Avery



More information about the xdg mailing list