自 2025 年 3 月 27 日起,我们建议您使用 android-latest-release
而非 aosp-main
构建 AOSP 并为其做出贡献。如需了解详情,请参阅 AOSP 的变更。
通用引导加载程序 (GBL) 概览
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
通用引导加载程序 (GBL) 是一种可更新的标准化引导加载程序解决方案,旨在简化 Android 启动过程。GBL 将高度分散的供应商专用引导加载程序替换为单个一致维护的组件。这项变更可减少冗余、提高安全性,并简化整个 Android 生态中的更新。
GBL 由以下组件组成:
- 核心 Android 启动逻辑
- 该逻辑包含主程序循环、启动模式检测和加载内核。
- Fastboot
- 用于设备刷写和调试的通信协议和诊断工具。
- 供应商扩展
- 通过创建自己的协议来扩展 GBL 的上述组件。这些协议是在 GBL 将其添加到依赖项列表之前事先商定的。供应商扩展是可选的。
- UEFI 协议处理程序
- 必需的和推荐的 UEFI 协议的实现,包括块 I/O、内存分配和随机数生成。您可以在引导固件项目 (EDK2、UBoot、LK) 中找到参考实现。
- Android 专用 UEFI 协议定义
- 适用于 AVB、快速启动、槽位选择、操作系统配置等的自定义 UEFI 协议。实现可在 Android 硅片供应商固件项目中找到。
从 Android 16 开始,如果您发布基于 ARM-64 芯片组的设备,我们强烈建议您部署最新的 Google 签名版 GBL,并将其集成到启动链中。
后续操作
如需了解如何部署通用引导加载程序,请参阅部署 gbl。
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-27。
[null,null,["最后更新时间 (UTC):2025-07-27。"],[],[],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)."]]