====== sfslite ====== sfslite is a stripped-down version of the [[http://www.fs.net|SFS]] asynchronous development libraries, maintained as part of the OKWS port. It's very portable and doesn't assume the existing of any thread packages. It also comes bundled witht the [[sfslite:tame2|Tame]] programming tool and libraries, which simplifies event programming. This is the main documentation center for the sfslite librares. Feel free to contribute to it. ====== The SFS Programming Libraries ====== The SFS programming libraries were originally written by David Mazières for the **S**elf-Certifying **F**ile**S**ystem (see [[http://www.fs.net|www.fs.net]]). [[:okws|OKWS]] does not require the whole SFS system (though it is compatible with it); rather, it just requires the SFS programming libraries (made available via [[sfslite]]). SFS has libraries for: * [[sfslite:overview|asynchronous networking programming]], * [[sfslite:libarpc|asynchronous RPC programming]] (using [[http://www.faqs.org/rfcs/rfc1831.html|SUN RPC]]), * [[sfslite:libcrypt|cryptography]], * [[sfslite:nfs|user-level NFS file servers]] as described in the 2001 [[http://www.usenix.org/publications/library/proceedings/usenix01/mazieres.html|Usenix paper]]. (Not part of [[:sfslite]]). While there is not a lot of detailed API documentation, over the years, some information has accumulated, including: * A brief [[http://pdos.csail.mit.edu/6.824-2002/async/|tutorial]] on the very basics, * A short [[http://pdos.csail.mit.edu/6.824-2004/doc/libasync.ps|white paper]] on SFS/sfslite library programming, * assorted [[sfslite:tips]]. * [[sfslite:FreeBsdPortTips|Tips for maintaining the FreeBSD port]] ====== Table of Contents ====== - [[sfslite:install|Installing sfslite]] - [[sfslite:overview|Overview of the Source Tree]] - [[sfslite:tame2|Tame]]