A partir del 27 de marzo de 2025, te recomendamos que uses android-latest-release
en lugar de aosp-main
para compilar y contribuir a AOSP. Para obtener más información, consulta Cambios en AOSP.
Descripción general del bootloader genérico (GBL)
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
El Bootloader genérico (GBL) es una solución de bootloader estandarizada y actualizable diseñada para optimizar el proceso de inicio de Android. El GBL reemplaza el panorama altamente fragmentado de los bootloaders específicos del proveedor por un solo componente mantenido de forma coherente. Este cambio reduce la redundancia, mejora la seguridad y simplifica las actualizaciones en todo el ecosistema de Android.
La GBL consta de los siguientes componentes:
- lógica de inicio principal de Android
- La lógica que incluye el bucle de programa principal, la detección del modo de inicio y la carga del kernel.
- Fastboot
- Es un protocolo de comunicación y una herramienta de diagnóstico que se usa para la depuración y el parpadeo de dispositivos.
- Extensiones de proveedores
- Extensión de los componentes mencionados anteriormente de GBL mediante la creación de tus propios protocolos. Estos protocolos se acuerdan con anticipación antes de que GBL los agregue a su lista de dependencias. Las extensiones de proveedores son opcionales.
- Controladores de protocolo UEFI
- Implementaciones para protocolos UEFI obligatorios y recomendados, incluida la E/S de bloques, la asignación de memoria y la generación de números aleatorios. Las implementaciones de referencia se encuentran en los proyectos de firmware de arranque (EDK2, UBoot y LK).
- Definiciones de protocolos UEFI específicos de Android
- Protocolos UEFI personalizados para AVB, Fastboot, selección de ranuras, configuración del SO y mucho más. Las implementaciones se encuentran en los proyectos de firmware de los proveedores de silicio de Android.
A partir de Android 16, si envías un dispositivo basado en un chipset ARM64, te recomendamos que implementes la versión más reciente de GBL firmada por Google y la integres en tu cadena de arranque.
Próximos pasos
Para aprender a implementar el bootloader genérico, consulta Cómo implementar gbl.
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-07-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 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)."]]