>Definitely yes in a perfect world, but reality is biting: think of PXE.
>But in the etherboot case, we can at least try to get there.
Well the problem of booting images without having to prepare them is an
old one. Frankly I don't see image preparation as a hassle, but then
people are lazy and also people prefer GRUB to LILO because you don't
have to remember to run LILO after changing the kernel, for the same
reason of laziness. PXE loads a first stage which then makes calls to
the core to load the kernel. It's one way of doing it, but I don't like
the specification and implementation.
I toyed with the idea of loading header only files which would not be
jumped to but be used to guide the loading of the rest of the image.
Maybe we could define an indirect segment type which would not contain
data to be placed in memory but a URL to where the data can be fetched.
Like a symlink in fact.
Another idea is maybe Etherboot could acquire the ability to load
dynamic modules, that would have powerful (and dangerous) uses. But it
might make the compressed code too big to fit in 32kB of ROM which I
think is a reasonable goal for the NICs on the market.
Anyway if you have any ideas, feel free to post.
|