If you are using a unix OS, I would suggest using daemontools from Bernstein. It has a set of tools for supervising a process. I use it all of the time for these sorts of problems. http://cr.yp.to/daemontools.html -- Greg Green Advanced Design Systems Math & Computing Technology Boeing