Multiple threads running in a single, shared address space is a simple model for writing parallel programs for symmetric multiprocessor (SMP) machines and for overlapping I/O and computation in programs run on either SMP or single processor machines. For a long running program, it is desirable to periodically save the program's state in a checkpoint from which it can recover in case of a failure. Several researchers have written user-level checkpointing libraries to checkpoint Unix processes. However, these checkpointing libraries do not support multithreaded programs. This checkpointing library checkpoints multithreaded programs that use the POSIX threads library provided on Solaris 2.5 and Linux 2.2. The checkpointing library is implemented at user-level.
I am in the process of moving my source to SourceForge. I will add links for released code and the CVS tree once it is all setup. The CVS web page should appear here. You can find more information at the project summary page