There was/is a research project at Columbia University called FiST, which is
a language for describing new kinds of filesystem functionality portably.
If I recall correctly, you can describe a filesystem and then compile it
down to a loadable module portably across a number of unices, etc. This was
being done by Erez Zadok, who is the current maintainer of AMD:
File System development is very difficult and time consuming. Even small changes to existing file systems require deep understanding of kernel internals, making the barrier to entry for new developers high. Moreover, porting file system code from one operating system to another is almost as difficult as the first port. Past proposals to provide extensible (stackable) file system interfaces would have simplified the development of new file systems. These proposals, however, advocated massive changes to existing operating system interfaces and existing file systems; operating system vendors and maintainers resist making any large changes to their kernels because of stability and performance concerns. As a result, file system development is still a difficult, long, and non-portable process.
The FiST (File System Translator) system combines two methods to solve the above problems in a novel way: a set of stackable file system templates for each operating system, and a high-level language that can describe stackable file systems in a cross-platform portable fashion. Using FiST, stackable file systems need only be described once. FiST's code generation tool, fistgen, compiles a single file system description into loadable kernel modules for several operating systems (currently Solaris, Linux, and FreeBSD). In the papers pointed below I (Erez Zadok) show how code size and development time are reduced significantly, while imposing a small performance overhead of only 1-2%. I achieved these benefits, as well as portability, without changing existing operating systems or file system.
> -----Original Message----- > From: firstname.lastname@example.org [mailto:email@example.com]On Behalf Of > Justin Mason > Sent: Monday, February 26, 2001 10:05 AM > To: gbolcer@endTECH.com > Cc: Justin Mason; FoRK > Subject: Re: DAV on the palm and AVFS >
> > This kind of virtual filesystem is one of the really cool things that > other OSes have done for a while -- the Acorn Archimedes did it, if I > recall correctly, and it's a real Plan 9 concept, so I wouldn't be > surprised if it cropped up there too. ;) > > I also remember a SunOS vfs-over-nfs called "the Waku-Waku filesystem", > which allowed browsing of FTP archives, written as a research project > about 8 years ago. It was quite limited though, as it could only browse a > pre-set list of sites; and it was never ported to Solaris. > > Anyway, I'm not quite sure why the concept of accessing network resources > as a filesystem hasn't really taken off since then... perhaps because they > don't map to local FS semantics cleanly and portably enough?
This archive was generated by hypermail 2b29 : Fri Apr 27 2001 - 23:18:43 PDT