Virtualization allows single or multiple instances of the Android Automotive OS (AAOS) to run as a guest virtual machine (VM) alongside other automotive operating such as an instrument cluster or an instance of OS running the advanced driver assistance systems (ADAS) on an automotive System-On-Chip (SoC). This is achieved by leveraging an open-standards based framework for virtualization called VirtIO. VirtIO provides a well-established interface that enables AAOS to run against a common virtualized platform that, in turn, allows an AAOS guest VM to be portable across different hypervisor systems and/or hardware platforms.
To enable automotive use cases, the VirtIO specification has been extended to include devices
virtio-snd for audio,
for sensors, power state management, clock management, and performance management,
for playback use cases. VirtIO drivers corresponding to these devices have also been added to the
IIO SCMI Sensor driver,
virtio-video driver driver).
AAOS provides a reference device called trout, which supports virtualized subsystems, such as:
- Extended View System (EVS)
- Garage Mode
- Touchscreen input
- Vehicle HAL
- Global navigation satellite system (GNSS)
See these articles to learn more about Virtualization on AAOS: