Recently I have been tackling the other side of the bootloader picture
what should we pass to the kernel in an ELF image.  And how should
the kernel handle bios calls etc.

As it turns out firmware/BIOS's generally do not get clobbered by a
running kernel.   So after a kexec I can still to 16 bit BIOS
calls after resetting the idt & gdt.  LinuxBIOS vanishes but
as it never provided any callbacks that isn't a big deal.

So the plan, and some one scream if they think it is ludicrous
is to move the 16 bit bios calls inside the linux kernel
so that it can drop back from 32 bit mode and make them.

>From linuxBIOS we will pass a flag that says we have no BIOS,
so the kernel won't even try.

The basic idea is that making BIOS/firmware calls only once looks
fragile, especially if you still have firmware you can go back and
call.  Additionally I really like the idea of a kernel that
can boot either with linuxBIOS or under the normal BIOS.

The last test I need to do is to verify that this technique works with
under loadlin, from win9X, and I have a strong place to start arguing
for the changes needed to natively support ELF booting, in the linux
kernel.


Eric

Reply via email to