Resuming from a crashdump

Matthew Dillon dillon at apollo.backplane.com
Tue Jan 25 11:48:59 PST 2005


    Well, I don't want do disuade you from trying, but I think you are
    seriously underestimating the effort required to restore device state.

    You basically would either have to make all device drivers support a new 
    hibernation/restore API (because it is not really possible to restore
    a device driver based on a dump), or you would need to implement some
    higher level utility code (e.g. scripts and such) to try to record and
    restore the state at a higher level, such as for network interfaces,
    and not allow any restored processes to run until that's done.  Either
    way it would get messy very quickly.

    Also, if the machine has a lot of memory it could take longer to save
    and restore then to reboot from scratch.  A typical laptop HD is 
    ~30 MB/sec.  If your laptop has 512MB then it would take 16 seconds
    to go into hibernation mode, and 16 seconds to come out of, plus BIOS
    and loader overhead.

    I think it would probably be more realistic to persue a process 
    save/restore rather then a kernel save/restore.  The overhead is going
    to be the disk I/O anyway and that seems to be about the same either
    way (maybe less for a process restore), plus you can at least demand-load
    the process restore.

						-Matt



More information about the freebsd-hackers mailing list