		       GENERAL INFORMATION ON FISTGEN

FiST (File System Translator) is a language for describing stackable file
systems.  Fistgen is the FiST language code translator.   This package
includes sources for fistgen, stackable templates for several operating
systems,

FiST Home Page:

	http://www.filesystems.org/

The home page contains the latest sources, papers, and other information.

Note that this release of fistgen is provided AS-IS and represents work in
progress.  Do not use these stackable file systems on your production
systems.  Furthermore, this release includes only the core subset of FiST
language functionality described in my papers on my Web page (but more than
enough to get you writing stackable file systems of your own :-)

The "INSTALL" file included with this package contains building and
installation instructions.

The file systems distributed with this package are:

cryptfs/cryptfs.fist:	encrypts file names and data pages using Blowfish
			(Open Source, exportable)

gzipfs/gzipfs.fist:	compresses files based on the Deflate algorithm
uuencodefs/uuencodefs.fist: uuencodes files
copyfs/copyfs.fist:	turns on size-changing algorithm support (SCA) used
			in gzipfs and uuencodes, but then only copies data
			without changing its size; useful to measure the
			overhead of the SCA code.  SCA file systems are
			currently available only for Linux 2.3.

tests/base0fs.fist:	null layer ala lofs
tests/base1fs.fist:	null layer, but copies data pages between layers
tests/base2fs.fist	null layer, but copies file names between layers
tests/base3fs.fist:	null layer, but copies both file names and data
			pages between layers.
tests/wrapfs.fist:	same as base3fs

tests/rot13fs.fist:	cheap encryption file system using rot13
tests/rot1fs.fist:	same as rot13fs, but using an asymmetric algorithm.
tests/snoopfs.fist:	tells when users snoop your files
tests/aclfs.fist:	adds simple ACLs per directory

Note that to understand more what these file systems do, you should read
some of the papers in the FiST home page listed above.


Please contact me with any questions you might have.

Erez Zadok.
---
Assistant Professor, Computer Science Department, Stony Brook University
EMail: ezk@cs.sunysb.edu           Web: http://www.cs.sunysb.edu/~ezk
