30.2. Der Boot-Prozess im Detail
Der Beginn des Boot-Prozesses variiert in Abhängigkeit der verwendeten Hardware-Plattform. Sobald jedoch der Kernel vom System gefunden und geladen wurde, ist der standardmäßige Boot-Prozess auf allen Architekturen identisch. Dieses Kapitel konzentriert sich vorwiegend auf die x86-Architektur.
30.2.1. Das BIOS
Wenn ein x86-Computer gestartet wird, sucht der Prozessor am Ende des Systemspeichers nach dem Basic Input/Output System oder BIOS-Programm und führt es aus. Das BIOS steuert nicht nur den ersten Schritt des Boot-Prozesses, sondern stellt auch die Schnittstelle der untersten Ebene zu den Peripheriegeräten zur Verfügung. Daher ist es im schreibgeschützten permanenten Speicher abgelegt und ständig einsatzbereit.
Andere Plattformen verwenden verschiedene Programme, um Aufgaben der niedrigen Ebene durchzuführen, die denen des BIOS auf einem x86-System stark ähneln. Itanium-basierte Computer zum Beispiel verwenden die Extensible Firmware Interface (EFI)-Shell.
Once loaded, the BIOS tests the system, looks for and checks peripherals, and then locates a valid device with which to boot the system. Usually, it checks any diskette drives and CD-ROM drives present for bootable media, then, failing that, looks to the system's hard drives. In most cases, the order of the drives searched while booting is controlled with a setting in the BIOS, and it looks on the master IDE device on the primary IDE bus. The BIOS then loads into memory whatever program is residing in the first sector of this device, called the Master Boot Record or MBR. The MBR is only 512 bytes in size and contains machine code instructions for booting the machine, called a boot loader, along with the partition table. Once the BIOS finds and loads the boot loader program into memory, it yields control of the boot process to it.