O carregador de inicialização genérico (GBL) é uma solução padronizada e atualizável projetada para simplificar o processo de inicialização do Android. O GBL substitui o cenário altamente fragmentado de carregadores de inicialização específicos do fornecedor por um único componente mantido de forma consistente. Essa mudança reduz a redundância, melhora a segurança e simplifica as atualizações em todo o ecossistema Android.
O GBL consiste nos seguintes componentes:
- lógica de inicialização principal do Android
- A lógica que inclui o loop principal do programa, a detecção do modo de inicialização e o carregamento do kernel.
- Fastboot
- Um protocolo de comunicação e uma ferramenta de diagnóstico usados para atualização e depuração de dispositivos.
- Extensões do fornecedor
- Extensão dos componentes mencionados do GBL com a criação dos seus próprios protocolos. Esses protocolos são acordados com antecedência antes de a GBL adicioná-los à lista de dependências. As extensões do fornecedor são opcionais.
- Gerenciadores de protocolo UEFI
- Implementações para protocolos UEFI obrigatórios e recomendados, incluindo E/S de bloco, alocação de memória e geração de números aleatórios. As implementações de referência são encontradas nos projetos de firmware de inicialização (EDK2, UBoot, LK).
- Definições de protocolo UEFI específicas do Android
- Protocolos UEFI personalizados para AVB, Fastboot, seleção de slot, configuração do SO e muito mais. As implementações são encontradas em projetos de firmware de fornecedores de silício do Android.
A partir do Android 16, se você enviar um dispositivo baseado no chipset ARM-64, recomendamos fortemente que implante a versão mais recente do GBL assinada pelo Google e a integre à sua cadeia de inicialização.
Quais são as próximas etapas?
Para saber como implantar o carregador de inicialização genérico, consulte Implantar gbl.