Es gibt verschiedene Möglichkeiten, diese Frage zu interpretieren:
- Warum benötigt ein einzelnes Betriebssystem zwei Partitionen? Genauer gesagt: zwei Volumes?
- Warum erfordert diese zusätzliche Partition ein FAT32-Dateisystem im Gegensatz zu z. NTFS oder Ext4?
- (implizite Frage?): Welche Dateien befinden sich in diesem FAT32-Dateisystem.
1. Die Antwort auf die erste ist:
Es erfordert technisch keine zwei Partitionen, nur dass die Partition mit den Startdateien FAT32 ist.
Da FAT32 nicht gut zum Ausführen geeignet ist Bei einem gesamten Betriebssystem müssen die Entwickler zwei Dateisysteme verwenden, daher zwei Partitionen. Ich glaube, Ext4 ist für Linux-Betriebssystempartitionen üblich.
2. Warum FAT32 für die Startdateien? Wir spekulieren aus folgenden Gründen:
-
Einfache / kompakte Implementierung des Dateisystemtreibers in einem Bootloader. Die meisten anderen Dateisysteme sind komplexer. Das Schreiben eines Bootloaders ist nicht einfach, insbesondere wenn Sie so viel On-Chip-NAND wie möglich minimieren müssen.
-
Andere Dateisysteme können (höhere) Lizenzkosten enthalten oder sind nicht ordnungsgemäß dokumentiert.
-
Das FAT32-Dateisystem wird von gängigen Betriebssystemen wie Windows, MacOS und Linux unterstützt. Sie müssen also keine speziellen Treiber installieren, um auf die Dateien auf der SD-Karte / dem Image zuzugreifen.
3. Die Startdateien ähneln einer lobotomierten Version von GRUB, und ich glaube, sie sind Closed Source. Es sollte alle Dateien enthalten, die zum Laden des Kernels Ihrer Wahl erforderlich sind, einschließlich der Basistreiber (die sich von den später geladenen Kerneltreibern unterscheiden oder zu diesen hinzugefügt werden können).
Bezüglich Ihre Analogien:
Ich habe dasselbe auch für bootfähige USB-Sticks gesehen, [...] eine reguläre Festplatteninstallation von Linux muss dieses Spiel nicht spielen, oder? ?
Eigentlich haben sie es getan. Und in einigen Fällen auch. Z.B. Durch die Installation von Windows 7 auf einem BIOS-Computer werden zwei Partitionen erstellt, eine 100-MB-NTFS-Partition, die Startdateien enthält. Es ist üblich, dass Linux-Computer eine separate / boot
-Partition haben, die die Bootloader- (z. B. GRUB) und Kernel + -Treiberdateien enthält. Die Trennung ist nicht unbedingt erforderlich, da diese Bootloader den MBR verwenden. Die Verwendung des MBR ist jedoch "hackiger" als die Verwendung eines geeigneten Dateisystems. Aus diesem Grund bevorzugt die neuere UEFI-Boot-Firmware auch ein separates FAT-Dateisystem für Boot-Dateien (was Sie wahrscheinlich auf Ihrem USB-Stick gesehen haben).