Virtualization is a key part of real-time and safety-critical systems, including industrial and automotive. The Xen Project hypervisor is actively used in these environments. Linaro and the wider Open Source community are improving Xen to enhance these use-cases further.
This presentation will provide an update on the Xen activities relevant to Linaro, especially to the automotive vertical. It will introduce cache coloring, a new Xen feature to achieve deterministic latency on Cortex-A systems with a shared L2 cache across the CPU cores. Cache coloring enables memory allocations with entirely dedicated cache line entries to avoid any cache interference. The presentation will demonstrate the benefits of cache coloring with detailed latency measurements based on the Xilinx Ultrascale+ MPSoC.
The talk will also discuss activities related to the usage of Xen in safety-critical environments, including the documentation of static hypervisor interfaces, which is required by ISO 26262 and other safety standards. The documents need to be detailed enough so that the interfaces can be implemented without looking at the code. This activity will provide us with the starting point to establish a common standard for embedded hypervisor interfaces.
Finally, the presentation will introduce groundbreaking ideas that will take Xen in unexpected new directions. With the addition of the recent Dom0-less feature, we have already started to look at Dom0 differently, from the pillar of every Xen deployment to an optional accessory. We want to take it one step further by moving Dom0 management functionalities entirely out of the Cortex-A CPUs cluster, into the safety island, which is typically implemented by Cortex-R or Cortex-M processors. The talk will explain the benefits of this approach, and the development required to make it a reality.
Xen Maintainer, Principal Engineer at Xilinx
Stefano Stabellini serves as system software architect and virtualization lead at Xilinx, the world's largest supplier of FPGA solutions. Previously, at Aporeto, he created a virtualization-based security solution for containers and authored several security articles. As Senior Principal Software Engineer in Citrix, he led a small group of passionate engineers working on Open Source projects. Stefano has been involved in Xen development since 2007. He created libxenlight in November 2009 and started the Xen port to ARM with virtualization extensions in 2011. Today he is a Xen Project committer, and he maintains Xen on ARM and Xen support in Linux and QEMU.