I would like to know: Is there a system call, library, kernel module or command line tool I can use to store the complete state of a running program on the disk?
Something like this? You can also check out the checkpointing page on wikipedia.