Requisitos del sistema invitado (imagen de VM)

Los requisitos de esta página se aplican al sistema invitado.

Memoria

El sistema tiene los siguientes requisitos mínimos de memoria:

  • 1 GB de memoria para un sistema con paquetes de servicios mínimos
  • 2 GB de memoria por VM (recomendado)

CPU

La CPU tiene los siguientes requisitos:

  • Compatibilidad con x86_64 o arm64-v8a o versiones posteriores con extensiones de virtualización
  • Un mínimo de 2.3 DMIPS/MHz, con 7 DMIPS/MHz recomendados

Kernel

El kernel tiene los siguientes requisitos:

  • El sistema DEBE usar un kernel de GKI.
  • SDV admite las versiones 6.6 y 6.12 de GKI.

Almacenamiento

El sistema tiene los siguientes requisitos de almacenamiento:

  • El sistema DEBE proporcionar al menos 3 GB de capacidad de almacenamiento de archivos.
  • El dispositivo DEBE encriptar los datos privados de la app:
    • La encriptación de almacenamiento de datos DEBE estar habilitada de forma predeterminada.
    • El dispositivo DEBE implementar este requisito de encriptación de almacenamiento de datos con uno de los siguientes métodos de encriptación:
      • Encriptación basada en archivos (FBE) (documentos de FBE) y encriptación de metadatos
      • Encriptación a nivel de bloque por usuario
  • El dispositivo DEBE admitir al menos la compatibilidad con el modelo de seguridad de Android 14: 9.12 Borrado de datos.

Administración de energía

El sistema tiene los siguientes requisitos de administración de energía:

  • Se RECOMIENDA ENCARECIDAMENTE la compatibilidad del sistema con la suspensión a RAM y la suspensión a disco.
  • El sistema DEBE reaccionar a las señales de activación del sistema host.

Seguridad

El sistema tiene los siguientes requisitos de seguridad:

Interfaz binaria

El sistema tiene los siguientes requisitos de interfaz binaria. El sistema DEBE hacer lo siguiente:

  • Ser compatible con una o más ABIs de NDK de Android definidas
  • Informar un subconjunto de las siguientes ABIs y NO DEBE informar ninguna ABI que no esté en la lista
  • Poner las siguientes bibliotecas, que proporcionan APIs nativas, a disposición de las apps que incluyen código integrado
    • libc (biblioteca de C)
    • libdl (vinculador dinámico)
    • libicui18n.so
    • libicuuc.so
    • liblog (registro de Android)
    • libm (biblioteca de matemáticas)
    • libstdc++ (compatibilidad mínima con C++)
    • libz (compresión Zlib)

Redes

El sistema:

  • DEBE usar Ethernet para admitir TCP y UDP.
  • DEBE admitir la comunicación de invitado a host vsock.
  • DEBE admitir la comunicación de invitado a invitado vsock.

Aislamiento de UID y procesos

Las implementaciones de dispositivos DEBEN admitir lo siguiente:

  • El modelo de sandbox de la app para Android, en el que cada app se ejecuta como un UID único de estilo Unix y en un proceso separado (consulta el CDD de Android correspondiente)
  • La ejecución de varias apps como el mismo ID de usuario de Linux, siempre que las apps estén firmadas y construidas correctamente, como se define en la referencia de Seguridad y permisos (consulta el CDD de Android correspondiente)
  • El modelo de permisos de acceso a archivos de Android, como se define en la referencia de Seguridad y permisos (consulta el CDD de Android correspondiente)

Software actualizable

  • Adopta el software actualizable de Android 14 .

Sistema host (hipervisor)

Los requisitos de las siguientes secciones se aplican al sistema host y al entorno del hipervisor.

Conectividad

El sistema host tiene los siguientes requisitos de conectividad:

  • El dispositivo DEBE admitir al menos una conexión Ethernet.
  • El sistema DEBE proporcionar un dispositivo Ethernet virtual al invitado o asignar un dispositivo existente.

Virtualización

El sistema host tiene los siguientes requisitos de virtualización:

  • Se RECOMIENDA ENCARECIDAMENTE usar VirtIO para implementar dispositivos virtuales. El sistema DEBE admitir estos dispositivos VirtIO:
    • virtio-blk: Para dispositivos de bloque virtuales (almacenamiento)
    • virtio-console: Para la consola serie virtual
    • virtio-net: Para interfaces de red virtuales
    • virtio-pci: Para descubrir dispositivos virtio a través de un bus PCI virtual
    • virtio-rng: Para un generador de números aleatorios de hardware virtual
    • virtio-vsock: Para la comunicación de host a invitado
  • El invitado y el host DEBEN comunicarse con vsock.
  • El host DEBE habilitar la comunicación de invitado a invitado con vsock o Ethernet.

Sincronización temporal

El sistema host tiene los siguientes requisitos de sincronización temporal:

  • El sistema host debe proporcionar una fuente de tiempo estable y coherente a todas las VMs invitadas para proporcionar coherencia entre las VMs, lo que ayuda a la depuración y la trazabilidad.
  • Para exponer el tiempo en el host a los invitados, te recomendamos que uses virtio-rtc.

Software actualizable

  • El sistema host DEBE poder actualizarse de forma inalámbrica (OTA). El mecanismo de actualización DEBE ser resistente a la pérdida de energía.

Seguridad

El sistema host tiene los siguientes requisitos de seguridad:

  • El sistema host DEBE admitir la cadena OpenDICE, con el perfil SDV para DICE, que es una extensión del perfil de Android para DICE.
  • El sistema host DEBE proporcionar un aislamiento seguro de las claves de KeyMint entre diferentes invitados.

Modos de alimentación

El sistema host tiene los siguientes requisitos de modo de alimentación:

  • El sistema debe admitir la suspensión a RAM.
  • El sistema host DEBE iniciar la activación desde el modo de suspensión (RAM o disco).

Arranque y apagado

El sistema host tiene los siguientes requisitos de arranque y apagado:

  • El sistema host debe diseñarse para tiempos de arranque rápidos para cumplir con los requisitos de usabilidad automotriz (por ejemplo, disponibilidad de la cámara de visión trasera); esto significa 100 ms o menos para que se inicie el sistema host.
  • El host DEBE habilitar un apagado ordenado de las VMs invitadas en eventos de apagado del encendido.

CPU

El dispositivo DEBE declarar la ABI de 64 bits:

El dispositivo DEBE admitir extensiones de virtualización.