Sind nämlich alle Bootloader gleich, sodass jedes BIOS sie immer lesen und die Kontrolle an das Laufwerk übergeben kann, sodass FAT32, NTFS, ext4, btrfs usw. nicht vom BIOS verstanden werden müssen?
Antwort1
Ja.
Vor GPT lautete die Antwort, dass das BIOS überprüfte, ob die Festplatte bootfähig war (indem es nach einer bestimmten „magischen Signatur“ im 511. und 512. Byte der Festplatte suchte) und dass diese Bytes auf den erwarteten Wert eingestellt waren. Das BIOS konnte den Code beginnend bei Byte Nummer Null auf der Festplatte ausführen.
Das BIOS versteht normalerweise keine Dateisystemformate wie FAT32, NTFS oder ext4. Das BIOS versteht nicht einmal Partitionen. Die Fähigkeit, Partitionen zu erkennen, ist ein Konzept, das in die Codebytes gequetscht wird, die am Anfang der Festplatte gespeichert werden.
Dieser Bootcode findet dann normalerweise weiteren Code, beispielsweise einen anderen Bootloader oder einen „Second Stage Bootloader“ (OpenBSD macht das), der das Dateisystem oft etwas besser versteht (genug, um mit der Lokalisierung des Kernels beginnen und diesen starten zu können).
Bei GPT („GUID Partition Table“) ist das Verfahren etwas aufwändiger. (U)EFI schaut sich einige andere Details an. Es gibt jedoch Ähnlichkeiten: Die spezifischen Details, nach denen (U)EFI sucht, sind nicht vom Dateisystem abhängig, und GPT führt Code (wie etwa einen „Bootloader“) an diesem Ort aus.