The condor project has had a userspace checkpointing capability available in Linux since 1995ish. It is limited in that it cannot checkpoint threads that have a kernel component to them, or Multiple processes (no fork() :( )
Condor currently decided they won't checkpoint dynamic libraries, but that may change in the future.