
Ich habe aus dem Buch gelerntInformatik: Ein Überblick
Dieser Bootloader befindet sich im Speicher
Bei einem Allzweckcomputer ist ein Programm namens Bootloader dauerhaft im ROM des Computers gespeichert. Dies ist also das Programm, das beim Einschalten des Computers zunächst ausgeführt wird. Die Anweisungen im Bootloader
In anderen Büchern heißt es jedoch, dass sich der Bootloader auf der Festplatte befindet.
Was das BIOS betrifft
Der Startvorgang beginnt mit dem BIOS. Wie in Kapitel 3 beschrieben, teilen Sie dem BIOS mit, welches Startgerät verwendet werden soll – eine Festplatte, ein USB-Stick, ein CD/DVD-Laufwerk oder etwas anderes. Vorausgesetzt, Sie wählen eine Festplatte als primäres Startgerät (oder Geräte mit höherer Priorität sind nicht startfähig), lädt das BIOS Code aus dem Master Boot Record (MBR), dem ersten Sektor auf der Festplatte.
für UEFI
Damit das EFI funktioniert, muss es die auf dem ESP der Festplatte installierten Bootloader kennen.
Formulieren Sie meine Frage anders
me@host:~$ df -h | grep 'boot'
/dev/sda1 511M 7.3M 504M 2% /boot/efi
Wird es /boot/efi
als ROM im Speicher lokalisiert?
Antwort1
Nein, es /boot/efi
handelt sich um ein Dateisystem auf der Systemfestplatte, normalerweise ein FAT32-Dateisystem.
Die Terminologie ist hier alles andere als einheitlich: In Ihrem ersten Buch vertreten Sie die Ansicht, dass der Teil des BIOS, der für die Auswahl der zu bootenden Festplatte und das Laden der ersten Inhalte von der Festplatte zuständig ist, der Bootloader ist … oder zumindest der primäre.
In der BIOS-Firmware verfügt der in die Firmware eingebettete primäre Bootloader über sehr eingeschränkte Fähigkeiten: Er liest im Wesentlichen nur einen Block vom Anfang einer Festplatte und führt ihn dann aus.
In der UEFI-Firmware ist der primäre Bootloader weitaus leistungsfähiger: Er versteht FAT32-Dateisysteme (und optional möglicherweise auch andere Dateisystemtypen) und kann daher eine angegebene Datei aus einem angegebenen Dateisystem oder aus einer Standard-Fallback-Datei aus jedem unterstützten Dateisystem laden; für 64-Bit-x86-Systeme ist der Standard-Fallback-Dateipfadname \EFI\BOOT\BOOTx64.efi
.
Ihr anderes Buch geht über die BIOS-Komponente des Bootvorgangs hinweg und konzentriert sich mehr auf den zweiten Teil des Bootvorgangs: den On-Disk-Bootloader, der spezifisch für das zu bootende Betriebssystem sein kann (aber nicht muss). Dies könnte man alssekundärBootloader, wenn Sie sowohl darüber als auch über den in der Firmware enthaltenen primären Bootloader sprechen müssen. Wenn Sie jedoch nicht über die internen Komponenten der Systemfirmware sprechen, wird der sekundäre Bootloader auf der Festplatte häufig auch einfach als „Bootloader“ bezeichnet.
Um eine alternative Terminologie zu verwenden, möchte ich beschreiben, wie HP-UX es auf PA-RISC-Hardware gemacht hat:
- Die Firmware war als PDC bekannt.
- Die PDC-Firmware enthielt eine In-ROM-Bootloaderroutine namens
IPL
Initial Program Loader. Wie der Name schon sagt, bestand ihre Aufgabe lediglich darin, ein einzelnes Programm zu laden und auszuführen. - Das erste Programm, das von der IPL-Routine von der Festplatte geladen wurde
ISL
, hieß Initial System Loader. Seine Aufgabe war es, den eigentlichen Betriebssystemkernel zu laden. Tatsächlich lud es zuerst noch ein weiteres Modul,HPUX
das sich mit dem Laden des eigentlichen HP-UX-Kernels befasste.
Da Firmware schwer zu aktualisieren sein kann, erleichtert eine derartige Aufteilung des Bootloaders in mehrere Komponenten die Änderung der Struktur des Betriebssystemkernels, wenn dies aufgrund von Entwicklungsinnovationen erforderlich wird: Nur der relativ kleine (sekundäre) Bootloader (ISL) muss unbedingt den API-Anforderungen der Firmware entsprechen. Alle nachfolgenden Komponenten können bei Bedarf neu programmiert werden, um Dinge völlig anders zu machen.