When an x86 PC boots, it starts executing a program called the BIOS, which is
stored in non-volatile memory on the motherboard. The BIOS’s job is to prepare the
hardware and then transfer control to the operating system. source Appendix B.
From a lab session here in the
section The PC's Physical Address Space following mapping is shown.
+------------------+ <- 0x00100000 (1MB)
| BIOS ROM |
+------------------+ <- 0x000F0000 (960KB)
Why do the BIOS need to use it, if not what is its use? How is it related to the BIOS program which is stored in non-volatile memory on the motherboard as I mentioned in the beginning? Although in the lab resource it is mentioned that the design is for qemu(x86 emulator) but osdev [http://wiki.osdev.org/Memory_Map_%28x86%29#ROM_Area] also says the same about the memory layout. I am just a little confused.