A virtualização permite que uma ou várias instâncias do Android Automotive OS (AAOS) sejam executadas como uma máquina virtual (VM) convidada junto com outras operações automotivas, como um painel de instrumentos ou uma instância do sistema operacional executando os sistemas avançados de assistência ao motorista (ADAS) em um carro. Sistema no chip (SoC). Isso é conseguido aproveitando uma estrutura de virtualização baseada em padrões abertos chamada VirtIO . VirtIO fornece uma interface bem estabelecida que permite que o AAOS seja executado em uma plataforma virtualizada comum que, por sua vez, permite que uma VM convidada do AAOS seja portátil em diferentes sistemas hipervisores e/ou plataformas de hardware.
Para permitir casos de uso automotivo, a especificação VirtIO foi estendida para incluir dispositivos como virtio-snd
para áudio, virtio-scmi
para sensores, gerenciamento de estado de energia, gerenciamento de relógio e gerenciamento de desempenho, e virtio-video
para casos de uso de reprodução. Os drivers VirtIO correspondentes a esses dispositivos também foram adicionados ao kernel Linux ( virtio-snd driver
, driver IIO SCMI Sensor e virtio-video driver
).
AAOS fornece um dispositivo de referência chamado trout , que oferece suporte a subsistemas virtualizados, como:
- Áudio
- Estado de despejo
- Sistema de Visão Estendida (EVS)
- Modo Garagem
- Gráficos
- Sensores
- Entrada de tela sensível ao toque
- Veículo HAL
- Bluetooth
- Sistema global de navegação por satélite (GNSS)
Consulte estes artigos para saber mais sobre virtualização em AAOS: