Re: [RFC] x86 ELF bootable kernels/Linux booting Linux/LinuxBIOS

Eric W. Biederman
2002-02-03T18:47:24Z

"H. Peter Anvin" <hpa@zytor.com> writes:

> Eric W. Biederman wrote:
>
> > It can be argued that general purpose systems have enough ram that
> > putting drivers for all mass produced devices in ram is possible, and
> > practical. But that is a cop out.
> >
>
>
> Indeed. Worse, it may not be possible for the *boot medium* to hold all those
> devices...

O.k. I have been thinking about this some more, and I have come up with a couple
alternate of solutions.

The simplest is the observation that right now 10MB is about what it
takes to hold every Linux driver out there. So all you really need is
a 16MB system, to avoid a device probing loader. And probably
noticeably less than that. The only systems I see having real
problems are old systems where device enumeration is not reliable, and
require human intervention anyway.

A second is to just make certain there is some kind of fallback path
so if the image is too large have a way to load a smaller one. When
you consider that older systems had less memory it has a reasonable
chance of working properly.

My final and favorite is to take an ELF image, define a couple of ELF
note types, and add a bunch those notes saying which pieces are
hardware dependent. So a smart ELF loader can prune the image as it
is loaded, and a stupid one will just attempt to load everything. And
with the setup for this not being bootloader specific it will probably
encourage device pruning loaders.

Am I being optimistic or are there any pressing cases for callbacks to
the firmware?

Eric