概览

通过虚拟化,Android Automotive OS (AAOS) 的单个或多个实例可以作为客户机虚拟机与其他汽车操作系统(如仪表板或在汽车系统芯片 (SoC) 上运行高级驾驶辅助系统 (ADAS) 的操作系统实例)一起运行。这可通过利用基于开放标准的虚拟化框架(称为 VirtIO)来实现。VirtIO 提供了一个成熟可靠的接口,可让 AAOS 针对通用虚拟化平台运行,进而使 AAOS 客户机虚拟机能够在不同的 Hypervisor 系统和/或硬件平台之间移植。

AAOS 虚拟化架构
图 1. AAOS 虚拟化架构

为了支持汽车用例,VirtIO 规范已经过扩展,现在包括适用于音频的 virtio-snd、适用于传感器的 virtio-scmi、电源状态管理、时钟管理和性能管理,以及适用于播放用例的 virtio-video 等设备。此外,还向 Linux 内核添加了与这些设备对应的 VirtIO 驱动程序(virtio-snd driverIIO SCMI 传感器驱动程序virtio-video driver 驱动程序)。

AAOS 提供了一个称为 trout 的参考设备,它支持一些虚拟化子系统,例如:

  • 音频
  • 转储状态
  • 增强型视觉系统 (EVS)
  • 车库模式
  • 图形
  • 传感器
  • 触摸屏输入
  • 车载 HAL
  • 蓝牙
  • 全球导航卫星系统 (GNSS)

如需详细了解 AAOS 上的虚拟化,请参阅以下文章: