Exigences relatives au système invité (image de VM)

Les exigences de cette page s'appliquent au système invité.

Mémoire

La configuration minimale requise pour la mémoire du système est la suivante :

  • 1 Go de mémoire pour un système avec des bundles de services minimaux
  • 2 Go de mémoire par VM (recommandé)

Processeur

Le processeur doit répondre aux exigences suivantes :

  • Prise en charge de x86_64 ou arm64-v8a ou version ultérieure avec extensions de virtualisation
  • Au moins 2,3 DMIPS/MHz, avec 7 DMIPS/MHz recommandé

Noyau

Le noyau doit répondre aux exigences suivantes :

  • Le système DOIT utiliser un noyau GKI.
  • SDV est compatible avec les versions 6.6 et 6.12 de GKI.

Stockage

Le système présente les exigences de stockage suivantes :

  • Le système DOIT fournir au moins 3 Go de capacité de stockage de fichiers.
  • L'appareil DOIT chiffrer les données privées de l'application :
    • Le chiffrement du stockage des données DOIT être activé par défaut.
    • L'appareil DOIT implémenter cette exigence de chiffrement du stockage des données avec l'une des méthodes de chiffrement suivantes :
      • Chiffrement basé sur les fichiers (FBE) (Documentation FBE) et chiffrement des métadonnées
      • Chiffrement au niveau du bloc par utilisateur
  • L'appareil DOIT être compatible au moins avec la section Compatibilité avec le modèle de sécurité Android 14 – 9.12 Suppression des données.

Gestion de l'alimentation

Le système doit répondre aux exigences de gestion de l'alimentation suivantes :

  • La prise en charge du système pour la suspension sur RAM et la suspension sur disque est FORTEMENT RECOMMANDÉE.
  • Le système DOIT réagir aux signaux de sortie de veille du système hôte.

Sécurité

Le système doit répondre aux exigences de sécurité suivantes :

Interface binaire

Le système doit répondre aux exigences suivantes concernant l'interface binaire :

  • être compatible avec un ou plusieurs ABI NDK Android définis ;
  • Signalez un sous-ensemble des ABI suivantes et NE DOIT PAS signaler d'ABI ne figurant pas dans la liste.
  • Rendez les bibliothèques suivantes, qui fournissent des API natives, disponibles pour les applications qui incluent du code intégré :
    • libc (bibliothèque C)
    • libdl (éditeur de liens dynamiques)
    • libicui18n.so
    • libicuuc.so
    • liblog (journalisation Android)
    • libm (bibliothèque mathématique)
    • libstdc++ (compatibilité minimale avec C++)
    • libz (compression Zlib)

Mise en réseau

Le système :

  • DOIT utiliser Ethernet pour prendre en charge TCP et UDP.
  • DOIT permettre la communication entre l'invité et l'hôte vsock.
  • DOIT permettre la communication entre les invités vsock.

UID et isolation des processus

Les implémentations d'appareils DOIVENT être compatibles avec les éléments suivants :

  • Modèle de bac à sable des applications Android, dans lequel chaque application s'exécute en tant qu'UID unique de type Unix et dans un processus distinct. Consultez le CDD Android correspondant.
  • Exécution de plusieurs applications avec le même ID utilisateur Linux, à condition que les applications soient correctement signées et construites, comme défini dans la référence sur la sécurité et les autorisations. Consultez le CDD Android correspondant.
  • Modèle d'autorisations d'accès aux fichiers Android, tel que défini dans la référence Sécurité et autorisations. Consultez le CDD Android correspondant.

Logiciel pouvant être mis à jour

Système hôte (hyperviseur)

Les exigences des sections suivantes s'appliquent au système hôte et à l'environnement de l'hyperviseur.

Connectivité

Le système hôte doit répondre aux exigences de connectivité suivantes :

  • L'appareil DOIT être compatible avec au moins une connexion Ethernet.
  • Le système DOIT fournir un périphérique Ethernet virtuel à l'invité ou mapper un périphérique existant sur celui-ci.

Virtualisation

Le système hôte doit répondre aux exigences de virtualisation suivantes :

  • L'utilisation de VirtIO pour implémenter des périphériques virtuels est FORTEMENT RECOMMANDÉE. Le système DOIT être compatible avec les appareils VirtIO suivants :
    • virtio-blk : pour les périphériques de bloc virtuel (stockage)
    • virtio-console : pour la console série virtuelle
    • virtio-net : pour les interfaces réseau virtuelles
    • virtio-pci : pour découvrir les appareils virtio sur un bus PCI virtuel
    • virtio-rng : pour un générateur de nombres aléatoires matériels virtuels
    • virtio-vsock : pour la communication entre l'hôte et l'invité
  • L'invité et l'organisateur DOIVENT communiquer avec vsock.
  • L'organisateur DOIT activer la communication entre les invités à l'aide de vsock ou d'Ethernet.

Synchronisation horaire

Le système hôte doit répondre aux exigences de synchronisation de l'heure suivantes :

  • Le système hôte doit fournir une source de temps stable et cohérente à toutes les VM invitées pour assurer la cohérence entre les VM, ce qui facilite le débogage et la traçabilité.
  • Pour exposer l'heure de l'hôte aux invités, nous vous recommandons d'utiliser virtio-rtc.

Logiciel pouvant être mis à jour

  • Le système hôte DOIT pouvoir être mis à jour en mode Over The Air (OTA). Le mécanisme de mise à jour DOIT être résistant aux pertes d'alimentation.

Sécurité

Le système hôte doit répondre aux exigences de sécurité suivantes :

  • Le système hôte DOIT être compatible avec la chaîne OpenDICE, en utilisant le profil SDV pour DICE, qui est une extension du profil Android pour DICE.
  • Le système hôte DOIT fournir une isolation sécurisée des clés KeyMint entre les différents invités.

Modes d'alimentation

Le système hôte doit répondre aux exigences suivantes concernant le mode d'alimentation :

  • Le système doit être compatible avec la suspension sur RAM.
  • Le système hôte DOIT initier la sortie du mode veille (RAM ou disque).

Démarrage et arrêt

Le système hôte doit répondre aux exigences de démarrage et d'arrêt suivantes :

  • Le système hôte doit être conçu pour des temps de démarrage rapides afin de répondre aux exigences d'utilisation automobile (par exemple, la disponibilité de la caméra de recul). Cela signifie que le système hôte doit démarrer en 100 ms ou moins.
  • L'hôte DOIT permettre un arrêt normal des VM invitées lors des événements d'arrêt du moteur.

Processeur

L'appareil DOIT déclarer l'ABI 64 bits :

L'appareil DOIT être compatible avec les extensions de virtualisation.