Issac - I have given this a lot of thought and I think that I would like to do something like this for R2. But that is a GE thing. ;-) > >Is it possible to have a kernel that can reboot itself? I think I posted >this on the suggestions list, but I didn't get much of a response. > >1. The kernel suspends each thread, recording the priority of each thread >as they are taken down. > >2. The kernel takes the entire memory space and transfers it to a >known position on disk. > >3. The kernel records (whatever other critical information it needs). > >4. The kernel shuts down. (either shutting down the machine, also, or >rebooting the kernel). > >On bootup (if say, spacebar is pressed), then it boots up normally, >clearing out all of the previously recorded information. > >Otherwise, after the FS is loaded, it transfers the entire memory space >back up to the machine from disk, and whatever other information was >transferred. Then it one-by-one turns on each thread. > >I guess there are a few important things that need to be addressed (what >to do with semaphores floating about, thread_ids, port_ids, area_ids >needing to be conserved, et cetera)... > >Are there real problems with this idea? Because, it seems to me, that >implementing something like this would allow us to do reboot-less kernel >upgrades, and neato instant-on features. Perhaps this belongs in >glasselevator, but I don't see why something like this wouldn't be "R5 >compliant", binary or codewise. > >Isaac > > >