Os requisitos nesta página se aplicam ao sistema convidado.
Memória
O sistema tem os seguintes requisitos mínimos de memória:
- 1 GB de memória para um sistema com pacotes de serviços mínimos
- 2 GB de memória por VM (recomendado)
CPU
A CPU tem os seguintes requisitos:
- Suporte para x86_64 ou arm64-v8a ou versões mais recentes com extensões de virtualização
- Mínimo de 2,3 DMIPS/MHz, sendo recomendado 7 DMIPS/MHz
Kernel
O kernel tem os seguintes requisitos:
- O sistema PRECISA usar um kernel GKI.
- O SDV é compatível com as versões 6.6 e 6.12 do GKI.
Armazenamento
O sistema tem os seguintes requisitos de armazenamento:
- O sistema precisa oferecer pelo menos 3 GB de capacidade de armazenamento de arquivos.
- O dispositivo PRECISA criptografar os dados particulares do app:
- A criptografia de armazenamento de dados PRECISA estar ativada por padrão.
- O dispositivo PRECISA implementar esse requisito de criptografia de armazenamento de dados com
um dos seguintes métodos de criptografia:
- Criptografia baseada em arquivos (FBE) (documentos da FBE) e criptografia de metadados
- Criptografia no nível de bloco por usuário
- O dispositivo PRECISA ser compatível com pelo menos Compatibilidade com o modelo de segurança do Android 14: 9.12 Exclusão de dados.
Gerenciamento de energia
O sistema tem os seguintes requisitos de gerenciamento de energia:
- É ALTAMENTE RECOMENDADO que o sistema tenha suporte para suspensão para RAM e suspensão para disco.
- O sistema PRECISA reagir aos sinais de ativação do sistema host.
Segurança
O sistema tem os seguintes requisitos de segurança:
- Adote a Compatibilidade do modelo de segurança do Android 14: recursos de segurança 9.7.
- O sistema PRECISA oferecer suporte à cadeia OpenDICE usando o perfil SDV para DICE, uma extensão do perfil do Android para DICE.
- O sistema PRECISA ser compatível com o KeyMint v3 ou mais recente e a
IRemotelyProvisionedComponentHAL v3. - O uso do DICE Chain Design é ALTAMENTE RECOMENDADO.
Interface binária
O sistema tem os seguintes requisitos de interface binária:
- Ser compatível com uma ou mais ABIs do Android NDK definidas.
- Informe um subconjunto das seguintes ABIs e NÃO informe nenhuma ABI que não esteja na lista.
- Disponibilize as seguintes bibliotecas, que fornecem APIs nativas, para apps que incluem código integrado:
libc(biblioteca C)libdl(vinculador dinâmico)libicui18n.solibicuuc.soliblog(geração de registros do Android)libm(biblioteca de matemática)libstdc++(compatibilidade mínima com C++)libz(compactação zlib)
Rede
O sistema:
- PRECISA usar Ethernet para oferecer suporte a TCP e UDP.
- Precisa oferecer suporte à comunicação de
vsockdo visitante com o host. - DEVE oferecer suporte à comunicação entre hóspedes
vsock.
UID e isolamento de processos
As implementações de dispositivos PRECISAM oferecer suporte a:
- Modelo de sandbox de apps Android, em que cada app é executado como um UID exclusivo no estilo Unix e em um processo separado. Consulte o CDD do Android correspondente.
- Execução de vários apps como o mesmo ID de usuário do Linux, desde que os apps sejam assinados e construídos corretamente, conforme definido na referência de segurança e permissões. Consulte o respectivo CDD do Android.
- Modelo de permissões de acesso a arquivos do Android, conforme definido na referência de segurança e permissões. Consulte o CDD do Android correspondente.
Software atualizável
- Adote o software atualizável do Android 14.
Sistema host (hipervisor)
Os requisitos nas seções a seguir se aplicam ao sistema host e ao ambiente de hipervisor.
Conectividade
O sistema host tem os seguintes requisitos de conectividade:
- O dispositivo PRECISA ser compatível com pelo menos uma conexão Ethernet.
- O sistema PRECISA fornecer um dispositivo Ethernet virtual ao convidado ou mapear um dispositivo existente para ele.
Virtualização
O sistema host tem os seguintes requisitos de virtualização:
- É ALTAMENTE RECOMENDADO usar o VirtIO para implementar dispositivos virtuais. O
sistema PRECISA oferecer suporte a estes dispositivos VirtIO:
virtio-blk: para dispositivos de bloco virtual (armazenamento)virtio-console: para console serial virtualvirtio-net: para interfaces de rede virtuaisvirtio-pci: para descobrir dispositivos virtio em um barramento PCI virtualvirtio-rng: para um gerador de números aleatórios de hardware virtualvirtio-vsock: para comunicação entre host e convidado
- O convidado e o organizador PRECISAM se comunicar com
vsock. - O organizador PRECISA ativar a comunicação entre convidados usando
vsockou Ethernet.
Sincronização de tempo
O sistema host tem os seguintes requisitos de sincronização de tempo:
- O sistema host precisa fornecer uma fonte de tempo estável e consistente para todas as VMs convidadas, o que ajuda na depuração e rastreabilidade.
- Para mostrar o horário do organizador aos convidados, recomendamos usar
virtio-rtc.
Software atualizável
- O sistema host PRECISA ser atualizável over the air (OTA). O mecanismo de atualização PRECISA ser resistente a perda de energia.
Segurança
O sistema host tem os seguintes requisitos de segurança:
- O sistema host PRECISA oferecer suporte à cadeia OpenDICE usando o perfil SDV para DICE, que é uma extensão do perfil Android para DICE.
- O sistema host PRECISA fornecer isolamento seguro das chaves do KeyMint entre diferentes convidados.
Modos de energia
O sistema host tem os seguintes requisitos de modo de energia:
- O sistema precisa oferecer suporte à suspensão para RAM.
- O sistema host PRECISA iniciar a ativação após o modo de espera (RAM ou disco).
Inicialização e desligamento
O sistema host tem os seguintes requisitos de inicialização e desligamento:
- O sistema host precisa ser projetado para tempos de inicialização rápidos e atender aos requisitos de usabilidade automotiva (por exemplo, disponibilidade da câmera traseira). Isso significa 100 ms ou menos para a inicialização do sistema host.
- O host PRECISA ativar um encerramento simples das VMs convidadas em eventos de desligamento.
CPU
O dispositivo PRECISA declarar a ABI de 64 bits:
O dispositivo PRECISA ser compatível com extensões de virtualização.