Der Generic Bootloader (GBL) ist eine standardisierte, aktualisierbare Bootloader-Lösung, die den Android-Bootprozess optimieren soll. GBL ersetzt die stark fragmentierte Landschaft anbieterspezifischer Bootloader durch eine einzelne, konsistent verwaltete Komponente. Diese Änderung reduziert Redundanz, verbessert die Sicherheit und vereinfacht Updates im gesamten Android-Ökosystem.
GBL besteht aus den folgenden Komponenten:
- Kern-Boot-Logik von Android
- Die Logik, die die Hauptprogrammschleife, die Erkennung des Bootmodus und das Laden des Kernels umfasst.
- Fastboot
- Ein Kommunikationsprotokoll und Diagnosetool, das zum Flashen und Debuggen von Geräten verwendet wird.
- Anbietererweiterungen
- Erweiterung der oben genannten Komponenten von GBL durch Erstellen eigener Protokolle. Diese Protokolle werden im Voraus vereinbart, bevor GBL sie der Abhängigkeitsliste hinzufügt. Anbietererweiterungen sind optional.
- UEFI-Protokoll-Handler
- Implementierungen für erforderliche und empfohlene UEFI-Protokolle, einschließlich Block-E/A, Speicherzuweisung und Generierung von Zufallszahlen. Referenzimplementierungen finden Sie in den Boot-Firmware-Projekten (EDK2, UBoot, LK).
- Android-spezifische UEFI-Protokolldefinitionen
- Benutzerdefinierte UEFI-Protokolle für AVB, Fastboot, Slot-Auswahl, Betriebssystemkonfiguration und mehr. Implementierungen finden sich in Firmware-Projekten von Android-Siliziumanbietern.
Wenn Sie ein Gerät mit einem ARM-64-Chipsatz auf den Markt bringen, empfehlen wir Ihnen dringend, ab Android 16 die neueste von Google signierte Version von GBL bereitzustellen und in Ihre Boot-Chain zu integrieren.
Und jetzt?
Informationen zum Bereitstellen des generischen Bootloaders finden Sie unter gbl bereitstellen.