Aperçu

La virtualisation permet à une ou plusieurs instances d'Android Automotive OS (AAOS) de s'exécuter en tant que machine virtuelle (VM) invitée, en parallèle d'autres systèmes d'exploitation automobiles, tels qu'un combiné d'instruments ou une instance de système d'exploitation exécutant les systèmes avancés d'aide à la conduite (ADAS) sur un système sur puce (SoC) automobile. Pour ce faire, elle s'appuie sur un framework basé sur des normes ouvertes pour la virtualisation, appelé VirtIO. VirtIO fournit une interface bien établie qui permet à AAOS de s'exécuter sur une plate-forme virtualisée commune, ce qui permet à une VM invitée AAOS d'être portable sur différents systèmes d'hyperviseur et/ou plates-formes matérielles.

Architecture de virtualisation AAOS
Figure 1. Architecture de virtualisation AAOS

Pour activer les cas d'utilisation automobile, la spécification VirtIO a été étendue pour inclure des appareils tels que virtio-snd pour l'audio, virtio-scmi pour les capteurs, la gestion de l'état de l'alimentation, la gestion de l'horloge et la gestion des performances, et virtio-video pour les cas d'utilisation de la lecture. Les pilotes VirtIO correspondant à ces appareils ont également été ajoutés au noyau Linux (virtio-snd driver, IIO SCMI pilote de capteur, et virtio-video driver).

AAOS fournit un appareil de référence appelé trout, qui est compatible avec les sous-systèmes virtualisés, tels que :

  • Audio
  • Dumpstate
  • Système de vision étendue (EVS)
  • Mode Garage
  • Graphiques
  • Capteurs
  • Entrée de l'écran tactile
  • HAL véhicule
  • Bluetooth
  • Système mondial de navigation par satellite (GNSS)

Consultez ces articles pour en savoir plus sur la virtualisation sur AAOS :