Messages in this thread |  | | Date | Thu, 26 Dec 2002 16:51:18 -0800 (PST) | | From | Anomalous Force <> | | | Subject | holy grail |
a hot swap kernel would be something like the holy grail of kernel
hacking. it would logically go something like this:
void kexec_hot_swap()
{
void *kern = load_kernel_into_mem();
syscall_queue(ENABLE); /* queue all sys calls */
irq_queue(ENABLE); /* queue all irqs */
/* bring new kernel's state inline with current one's.
this includes all data structures, module hooks, etc.
this needs to be very fast as irqs will be pending... */
synch_kernel(kern);
kernel_start(kern); /* fire in the hole... */
}
at this point the new kernel would know it is being started as a
hot swap throught a flag or something, and dequeue the irq's
that are pending, followed by the sys calls that are waiting.
if this goes how i think it should, a user running on the system
wont even know the kernel was swapped.
what do you think? is it do-able?
=====
Main Entry: anom |  |