tame is a generic tool for simplifying SFS/sfslite sfslite programming,
useful with OKWS, but also for any other sfslite-based
application. It is available under the sfslite distribution.
tame is a simple C++-level rewriter. Input files look a lot like
regular C++ files, with some small modifications. Output files are
standard C++ files that are then compiled and linked against the
libasync libraries to produce your library or application. Files
generated with tame can call legacy libasync applications, and
legacy libasync applications can call tamed functions,
without any glue.
Eddie Kohler has written a version of the tame abstractions in a clean, lightweight library, called tamer. It carries less ``baggage'' than the full sfslite implementation, and is also better documented. Tamer is not backwards-compatible with SFS or sfslite.
The following paper has been accepted to Usenix Annual Technical Conference, 2007. The Wiki pages for Tame v2 should now approximately match the paper. If not, please report any bugs.