"Check pointing" on BSD Unix (or Ultrix)

Piercarlo Grandi pcg at aber-cs.UUCP
Sat Nov 11 06:42:43 AEST 1989


In article <1326 at utkcs2.cs.utk.edu> battle at alphard.cs.utk.edu (David Battle) writes:
    Does anyone out there know of any way to "check point" a process
    under BSD unix?  In particular I am interested in a way to do it on
    a Ultrix VAX and possibly on a DECStation 3100.
    
    What I would like to be able to do would be to stop a running process,
    save it's core image to a file (similar to what gcore(1) does), kill
    the original process, and then later (like, say, after rebooting)
    restart the process from the saved core image.

You have two choices; one is the famous undump program, that comes with TeX,
that is used to produces restartable, loaded images for programs that take a
long time to initialize. What you get with undump is the ability to restart
a program with memory as it was when it was stopped. Every other resource
must be reinitialized by the program itself (e.g., files must be reopened and
repositioned, etc...).

A more complete approach is described in some EUUG Bulletin, has been done
by people at Olivetti (?), and is a virtually full checkpoint/restart
facility.

If you want more information, I can dig up the exact reference, but I am
pretty sure it is not a product, just a demonstration of concept, and you
will have some difficulty laying your hands on it.

A full checkpoint restart facility is difficult to do under Unix, because a
process has a lot of relationships to other entities, and checkpointing them
all is hard, not to speak of restarting them (from open files to pipes to
socket connections, child process, etc...).
-- 
Piercarlo "Peter" Grandi           | ARPA: pcg%cs.aber.ac.uk at nsfnet-relay.ac.uk
Dept of CS, UCW Aberystwyth        | UUCP: ...!mcvax!ukc!aber-cs!pcg
Penglais, Aberystwyth SY23 3BZ, UK | INET: pcg at cs.aber.ac.uk



More information about the Comp.unix.wizards mailing list