Messages in this thread | | | Date | Mon, 26 Apr 2004 11:56:58 -0400 (EDT) | From | "Richard B. Johnson" <> | Subject | Re: BIOS vs Kernel |
| |
On Mon, 26 Apr 2004, [iso-8859-1] Lucas Silva wrote:
> Before I start working on this I would like to find > out > if it is possible or at least useful. > > Is it feasible? > To create a BIOS that would help the kernel (working > together). > > What if the BIOS booted the PC in protected mode , > enabling the A20 (taking away all that backwards > support, so on), > And then implement a realible interface. > > Wouldn't that be faster? > Would the kernel be able to communicate to it? > > Thanks Profetas
The reason why the BIOS boots in 'real' mode is because there are 'real' mode drivers provided by vendors that are added during the POST routine. For instance a SCSI boot disk, or a LAN card used to boot. If I were not for this, you could just boot in protected-mode.
However, the BIOS does much, much, more than boot the machine! Modern motherboards are very dumb as soon as the power is applied. They are literly built by the BIOS. The final construction (like how pins of electronic blobs are connected and the internal guts of gate-arrays) is all done by the BIOS. It's not just a matter of turning on chips like the old IBM manuals show.
So you need the BIOS to build the board. It starts the boot-sequence in 'real' mode so that's what you have. FYI, the BIOS code has already transitioned to and from 32-bit linear address space, probably several times, during the POST routine. It's really quite trivial. Whether or not the boot-code gets to 32-bit mode right away or later on in the boot sequence is simply dependent upon being able to complete the loading of the operating system from the IPL device.
Cheers, Dick Johnson Penguin : Linux version 2.4.26 on an i686 machine (5557.45 BogoMips). Note 96.31% of all statistics are fiction.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |