Re: Core dumps & restarting

Bryn Paul Arnold Jones (bpaj@gytha.demon.co.uk)
Tue, 29 Oct 1996 01:18:11 +0000 (GMT)


On Mon, 28 Oct 1996 psychos@xeo.net wrote:

> On Mon, 28 Oct 1996, Eduardo Diaz Comellas wrote:
>
> > Hi!
> >
> > I was wandering how to stop a process, reboot the machine, and
> > restart that process. Is there a way to provoke a program to dump
> > itself, and restart it after the reboot?
> >
> > Maybe we can define a new executable format for it to work ;-)
> >
> > Cheers!
>
> This would be practically impossible as you'd have to load the program
> into the exact same memory space or all of its pointers would be bad...
> Memory fragmentation issues would make it very hard to get any program to
> occupy the exact same space it did before.
>

Hmm, why is memory fragmentation a problem ? We're restoring after a
reboot, the memory just got defraged, anyway is there any reason why we
can't do a position independant coredump (in it's simplest form, subtract
the lowest pointer/memory refrance from all the others, and just add any
number to all values when it's restored) ?

> The only way to really reload anything would be to dump the entire system
> memory to a file and reload that. This could be useful if you wanted to do
> something like boot into another operating system, or halt your computer
> for whatever reason.

Hmm, I'm suprised that other OS's can't do this (or can you keep a totally
swaped out process "running" over a reboot ?), I would have thought that
an OS that needs a 'shutdown -r now' in it's crontab to avoid running out
of memory due to leaks.

> (Of course, real Linux users never reboot or shut down, except for a
> hardware or kernel upgrade ;)
>
Don't forget power failure, and electrical storms ;)
Bryn

--
PGP key pass phrase forgotten,   \ Overload -- core meltdown sequence 
again :( and I don't care ;)      |            initiated.
                                 / This space is intentionally left   
                                |  blank, apart from this text ;-)
                                 \____________________________________