Od 27 marca 2025 r. zalecamy używanie android-latest-release
zamiast aosp-main
do kompilowania i wspołtworzenia AOSP. Więcej informacji znajdziesz w artykule o zmianach w AOSP.
Omówienie ogólnego programu rozruchowego (GBL)
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Generyczny bootloader (GBL) to ujednolicony, aktualizowalny bootloader, który ma na celu usprawnienie procesu uruchamiania Androida. GBL zastępuje bardzo zróżnicowane środowisko bootloaderów konkretnych dostawców pojedynczym, konsekwentnie utrzymywanym komponentem. Ta zmiana zmniejsza redundancję, poprawia bezpieczeństwo i upraszcza aktualizacje w ekosystemie Androida.
GBL składa się z tych komponentów:
- podstawowa logika uruchamiania Androida,
- Logika obejmująca główną pętlę programu, wykrywanie trybu rozruchu i wczytywanie jądra.
- Fastboot
- Protokół komunikacyjny i narzędzie diagnostyczne służące do flashowania i debugowania urządzenia.
- Rozszerzenia dostawcy
- Rozszerzenie wspomnianych komponentów GBL przez utworzenie własnych protokołów. Protokoły są uzgadniane z wyprzedzeniem, zanim GBL doda je do listy zależności. Rozszerzenia dostawcy są opcjonalne.
- Moduły obsługi protokołów UEFI
- Implementacje wymaganych i zalecanych protokołów UEFI, w tym bloku operacji we/wy, alokacji pamięci i generowania liczb losowych. Implementacje referencyjne można znaleźć w projektach oprogramowania ładującego (EDK2, UBoot, LK).
- Definicje protokołu UEFI dotyczące Androida
- Niestandardowe protokoły UEFI dotyczące AVB, Fastboot, wyboru gniazda, konfiguracji systemu operacyjnego itp. Implementacje znajdują się w projektach oprogramowania układów scalonych Androida.
Jeśli od wersji 16 Androida wysyłasz urządzenie z procesorem ARM-64, zdecydowanie zalecamy wdrożenie najnowszej wersji GBL podpisanej przez Google i zintegrowanie jej z łańcuchem rozruchu.
Co dalej?
Aby dowiedzieć się, jak wdrożyć Generic Bootloader, zapoznaj się z artykułem Wdrażanie gbl.
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-07-27 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-07-27 UTC."],[],[],null,["# Generic Bootloader (GBL) overview\n\nThe *Generic Bootloader (GBL)* is a standardized, updatable bootloader solution\ndesigned to streamline the Android boot process. GBL replaces the highly\nfragmented landscape of vendor-specific bootloaders with a single, consistently\nmaintained component. This change reduces redundancy, improves security, and\nsimplifies updates across the Android ecosystem.\n\nGBL consists of the following components:\n\n*core Android boot logic*\n: The logic that includes the main program loop, boot mode detection, and\n loading the kernel.\n\n*Fastboot*\n: A communication protocol and diagnostic tool used for device flashing and\n debug.\n\n*Vendor extensions*\n: Extension of the aforementioned components of GBL by creating\n your own protocols. These protocols are agreed upon in advance before GBL adds\n them to their dependency list. Vendor extensions are optional.\n\n*UEFI protocol handlers*\n: Implementations for required and recommended UEFI protocols, including block\n I/O, memory allocation, and random number generation. Reference implementations\n are found in the boot firmware projects (EDK2, UBoot, LK).\n\n*Android Specific UEFI Protocol definitions*\n: Custom UEFI protocols for AVB, Fastboot, slot selection, OS configuration,\n and more. Implementations are found in Android Silicon Vendor firmware projects.\n\nBeginning with Android 16, if you ship a device based on ARM-64 chipset, we\nstrongly recommend that you deploy the latest Google-signed version of GBL and\nintegrate it into your boot chain.\n\nWhat's next?\n------------\n\nTo learn how to deploy the Generic Bootloader, refer to\n[Deploy gbl](/docs/core/architecture/bootloader/generic-bootloader/gbl-dev)."]]