All News | Boards | Chips | Devices | Software | Archive | About | Contact | Subscribe
Follow LinuxGizmos:
Twitter Facebook Pinterest RSS feed
*   get email updates   *

Xen hypervisor targets automotive virtualization role

Aug 18, 2014 — by Eric Brown 2,983 views

The Xen Project’s Embedded and Automotive initiative will bring its hypervisor to a GlobalLogic IVI stack combining a fast-boot Android with Linux or QNX.

The Xen Project Collaborative Project has launched an Embedded and Automotive initiative to expand its virtualization technology beyond the datacenter and cloud realms. Initially, the subproject will center on a collaboration with GlobalLogic on the company’s Nautilus [PDF] in-vehicle infotainment (IVI) and telematics platform. An embedded version of the open source Xen Project type 1 hypervisor is integrated in Nautilus to enable sandboxed implementations of Android (for IVI) and either QNX or Linux for telematics and other back-end automotive services. The QNX/Android combination appears to be the main focus, however.

Nautilus architecture with Linux used as the RTOS. QNX is also available as a match with Android
(click image to enlarge)

The idea of using multicore processors to house separate, sandboxed containers in automotive computers has been tossed around for a half decade or more, but is only now beginning to approach reality. For example, last October, Mentor Graphics announced a Mentor Embedded Hypervisor that can field a mix of OSes including Linux, Android, and the company’s Nucleus real-time operating system (RTOS). Bringing a hypervisor to automotive systems reduces the number of processors and complexity needed in the system while retaining a secure firewall between consumer-facing Android or Linux IVI software and back end Linux or RTOS telematics systems.

The Linux Foundation hosted Xen Project is contributing an embedded version of the Xen type 1 hypervisor to the Nautilus stack. The hypervisor enables GlobalLogic’s fast-booting version of Android 4.2 for IVI to run in one secure container, while the other is devoted to telematics and other back-end services running an RTOS. The initial implementation is for Android and QNX, but Linux is available as an alternative on either the Android or RTOS side.


Like the Mentor Graphics hypervisor, the Nautilus design targets systems based on a Texas Instruments Jacinto 6 system-on-chip. Derived from TI’s OMAP5 design, the Jacinto 6 is specifically focused on automotive computers. The SoC combines two Cortex-A15 cores with four Cortex-M4 cores, and dual Imagination Technologies SGX544 GPUs. Other automotive-focused ARM SoCs that offer support for virtualization include the Renesas R-Car.

Nautilus Android stack forms basis for Automotive Grade Android

The Embedded and Automotive initiative is associated with the Linux Foundation’s Automotive Grade Linux (AGL) project. While the current AGL spec uses Tizen, the Nautilus platform’s modified, fast booting Android stack is being contributed to the AGL as the foundation for a new Automotive Grade Android (AGA) version. GlobalLogic is also working to add the Xen-based technology to the general AGL spec, and will soon add Tizen Linux to the list of supported OSes for Nautilus. The project is also associated with the GENIVI project, which recently designated Tizen as being compliant with the GENIVI 5.0 open source automotive spec.

The Xen Project’s Embedded and Automotive initiative plans to support other embedded applications in the future. These include BYOD mobile devices with secured consumer and corporate containers, as well as avionics, drones, and smart TVs.

The Embedded and Automotive initiative will further integrate contributions from ARM, Citrix, DornerWorks, Galois, and Washington University. GlobalLogic plans to contribute automotive-focused driver support for QNX and Android OSes, as well as Linux kernel drivers for paravirtualization. Other contributions include virtualization technology for GPUs, USB, and audio devices in an IVI system.

The Nautilus Android stack that provides the basis for the AGA spec is claimed to turn Android into an IVI-ready platform that helps fix Android’s shortcomings in reliability, security, and boot-time. The security issues are largely handled via the Xen hypervisor, while GlobalLogic’s AGA stack has greatly improved boot-time. The current Android 4.2 build has achieved about 5-6 seconds boot-time, as well as a reduction of the time to display a rear-view camera image to 1.5 seconds, claims the company.

Conceptual UI screens for an Android head unit
(click image to enlarge)

The Nautilus/AGA spec supports wireless technologies including Bluetooth, Miracast, MirrorLink, and WiFi, and enables control of automotive features from a mobile device. You can also cast data from mobile devices to the IVI screen. The Nautilus platform includes a conceptual UI for a potential, Android-based “head unit” IVI display (see image above).

The Embedded and Automotive initiative stems from last year’s successful ARM port of the Xen hypervisor. Several other recent developments helped lay the groundwork for the initiative, including:

  • Experimental PV (paravirtualization) ARM support on Nvidia by Samsung (2013)
  • Interrupts and IOMEM mapping to DomU to support driver domains by GlobalLogic (2014)
  • Development of rich PV drivers for HID, Audio, GPU, framebuffer, etc. by GlobalLogic (2013-14)
  • Ongoing improvements to real-time scheduling by DornerWorks and the University of Washington
  • Ongoing developments of a QNX baseport by GlobalLogic and a FreeRTOS baseport by Galois

Further information

More information the Xen Project Collaborative Project’s Embedded and Automotive initiative may be found here, and more on Nautilus and AGA can be found at GlobalLogic’s Infotainment web-page. GlobalLogic and the Linux Foundation will present a free webinar at 9am PDT, Wednesday, Aug. 27, on “Virtualization in the Automotive Industry.”

(advertise here)

Print Friendly, PDF & Email

One response to “Xen hypervisor targets automotive virtualization role”

  1. rchuprina says:

    This is a very interesting article, thank you for posting it. I am trying to get into software development in , and I am learning as much as I can. That’s very deep explanation of the topic, it definitely helped me to understand this!

Please comment here...