Boot Windows Please!
Ronald G. Minnich
rminnich at lanl.gov
Thu Jan 27 05:26:00 CET 2005
On Thu, 27 Jan 2005, Peter Stuge wrote:
> That's how LinuxBIOS was initially designed.
>
> LinuxBIOS in itself is "only" minimal code for initializing a
> mainboard with peripherals just enough for a Linux kernel to take
> over and to the rest.
>
> LinuxBIOS does not contain a kernel per se.
>
> After the initialization, LinuxBIOS jumps to a payload and while
> there has been discussion about stacking payloads that's currently
> not in practice.
>
> The payload was originally intended to be a Linux kernel stored in
> flash. Flash ROM grow rate was anticipated optimistically however,
> today there are not many mainboards that actually have enough flash
> ROM room for a kernel. 512KB can be seen here-and-there and a few
> boards come with 1MB. Recent kernels really want that MB, and then
> you'll only have room for 3-400 KB of initial ramdisk, which could
> be too small too, depending on the application.
>
> So, other payloads are used; the two major ones are FILO and
> Etherboot. FILE loads a kernel from a filesystem on an IDE device and
> Etherboot loads a kernel from the network or from a filesystem on an
> IDE device.
>
> If you're using FILO there is no Linux kernel until FILO loads it,
> and the kernel loaded by FILO (or Etherboot) can absolutely be the
> one you want to run in your system. Just set it up with the correct
> root and init commandline so that it can start init.
>
> Another option is to chain two kernels after each other, this is
> useful for loading a system kernel from some place that FILO or
> Etherboot can not reach, but which a Linux kernel can. Imagine all
> sorts of "strange" storage ranging from local JFS to "unusual"
> network systems and beyond. This uses the kexec feature in 2.6,
> where a kernel can execute another kernel.
>
> Hope this helps.
looks like a great FAQ entry to me
ron
More information about the coreboot
mailing list