汎用ブートローダー(GBL)は、標準化された更新可能なブートローダー ソリューションで、Android の起動プロセスを効率化するよう設計されています。GBL は、断片化率の高いベンダー固有のブートローダーを一貫性を持って維持される単一のコンポーネントに置き換えます。この変更により、冗長性の軽減、セキュリティの向上、Android エコシステム全体のアップデートの簡素化を実現します。
GBL は次のコンポーネントで構成されています。
- コア Android 起動ロジック
- メインのプログラムのループ、起動モード検出、カーネルの読み込みなどを含むロジック。
- Fastboot
- デバイスのフラッシュとデバッグに使用される通信プロトコルと診断ツール。
- ベンダー拡張
- ベンダー独自のプロトコルを作成する上記の GBL のコンポーネントの拡張機能。これらのプロトコルは事前の合意の後で、GBL によって依存関係リストに追加されます。ベンダー拡張は省略可能です。
- UEFI プロトコル ハンドラ
- ブロック I/O、メモリ割り当て、乱数生成などの必須および推奨の UEFI プロトコルの実装。リファレンス実装は、起動ファームウェア プロジェクト(EDK2、UBoot、LK)で確認できます。
- Android 固有の UEFI プロトコルの定義
- AVB、Fastboot、スロット選択、OS 構成などのカスタム UEFI プロトコル。実装は、Android シリコン ベンダーのファームウェア プロジェクトで確認できます。
Android 16 以降で ARM-64 チップセットをベースにしたデバイスを発送する場合、Google によって署名されている最新バージョンの GBL をデプロイし、起動チェーンに統合することを強く推奨します。
次のステップ
汎用ブートローダーをデプロイする方法については、gbl をデプロイするをご覧ください。