That part shouldn't be too hard: most of the parameters passed from
setup.S to the main kernel are passed in a parameter block; one option
is to enter the new kernel at the 32-bit entry point and simply skip
setup.
However, this doesn't guarantee that the new kernel isn't going to choke
on the hardware configuration, which is going to be radically different
than a machine that has been booted from reset.
> Adapting 2) is really where the bulk of the work is.
>
> > I have considered that as well. Unfortunately, it seems like just as
> > big a project.
>
> A few years ago, a friend implemented something like this on Amiga-SVR4
> within a few days, so it doesn't seem to be all that bad, even if you
> take into account that Linux probably has a much wider interface to the
> BIOS than SVR4 had to whatever low-level environment the Amiga had.
Right, but I don't think it solves any real problem, however. What I
was trying to do was to see if you could run a Linux kernel on top of
the BIOS; it certainly is doable (Ross Biro did such an implementation
back in 1994), but I ended up believing that it was more trouble than
it's worth... in no small part because the things you have to break in
order to keep the BIOS alive pretty much breaks the native device
drivers in more-or-less subtle ways, because Linux likes to reconfigure
the hardware to act sanely.
Hence, it is not so much the BIOS interface that's the problem, but the
fact that Linux really likes to break the BIOS, and break it pretty
hard.
-hpa
-- <hpa@transmeta.com> at work, <hpa@zytor.com> in private!- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/