[LinuxBIOS] comments about Linux BIOS

ron minnich rminnich at gmail.com
Tue Jan 9 20:27:08 CET 2007


On 1/8/07, Stefan Reinauer <stepan at coresystems.de> wrote:

> And how do you do the transition to native x86 execution? Your scenario
> would mean to emulate execution of the Windows bootloader, so that it
> can use bios callbacks. But I have no idea how to find out we're out of
> the bootloader and in Windows itself. ie. no bios callbacks will follow.

yes, you would need to know what the loader does to start windows, but
I don't think this is impossible.

> Nothing against the success of the emulator. It is great work, and it
> helped LinuxBIOS (and I suppose other projects) a lot. But emulating an
> x86 machine on an x86 seems to have a whiff of a broken design.

I don't really agree. We used to run x86 binaries directly from
expansion roms. There were far more problems than we have had with the
emulator. The broken design, really, is the PC. But we can't change
that. The emulation approach has proven to be the most reliable -- so
reliable, in fact, that someone is looking to replace direct execution
in Plan 9 with our emulator.

> > The best way, in my view, is to boot linux in flash and have linux
> > kexec the actual OS you want to boot.
>
> This is not exactly going to make things faster, in the Windows/MBR case.

I will only agree to that when I measure it being slower. We have
seen, here, that Linux, loaded from FLASH and operating as the boot
loader, on reasonably modern machines (e.g. 2+ Ghz opteron),is the
fastest way to boot, without exception.

>
> > But is it possible to boot Vista under Linux via kexec? That would be
> > interesting.
>
> Kexec is Linux specific. It can't do the job for any Windows or BSD,
> but will just load a Linux kernel.

no, kexec will load an arbitrary elf image. I can kexec a plan 9
image. kexec is very powerful.

ron




More information about the coreboot mailing list