AUTOSAR on Xen: Virtualized Real-Time Operating Systems with ARA

Xen mascot

Context

Within the AHA project, we focus on optimizing embedded systems by specialization of the OS itself. Using the Automatic Real-time Analyzer (ARA), we perform static analysis to find interactions between different tasks1. With the latest addition, the MultiSSE, ARA can analyze interactions on systems like multicore AUTOSAR to allow for static optimization.

However, modern complex embedded systems may not only distribute tasks over multicore systems, but instead statically partition the hardware into multiple hypervised domains2 for safety reasons. Each domain can run its own isolated Real-Time OS or General-Purpose OS instance, making powerful central computing hardware with time-critical software from various suppliers feasible.

Problem

Our current implementation of an multicore AUTOSAR-compatible RTOS on ARM is running in 32-bit mode on the Raspberry Pi 4B. In order to deploy other 64-bit Xen guests on the same system, the architecture-specific implementation must be ported to ARMv8. Additionally, paravirtualization drivers for the console and hypercalls are missing in order to run the RTOS as Xen guest.

Goal

In this thesis, the current 32-bit architecture-specific codebase shall be ported to 64-bit. This includes:

To test the implementation, the ARA project contains many test applications that check for various edge cases. Additionally, the student should add following features:

Then, the timing measurements for cross-core system calls can be repeated and compared to the current implementation. Finally, the overhead of hypervisor execution can be quantified.

Topics: ARM assembly, C++, LLVM, Real-Time Operating System, Hypervisor

References

RTSJ Journal
Applied static analysis and specialization of cross-core syscalls for multi-core AUTOSAR OS
Gerion Entrup, Andreas Kässens, Björn Fiedler, Daniel LohmannReal-Time SystemsSpringer2024.
PDF 10.1007/s11241-024-09429-1 [BibTex]
RTAS Conference A Best Paper Award
dOSEK: The Design and Implementation of a Dependability-Oriented Static Embedded Kernel
Martin Hoffmann, Florian Lukas, Christian Dietrich, Daniel LohmannProceedings of the 21st IEEE International Symposium on Real-Time and Embedded Technology and Applications (RTAS '15)IEEE Computer Society Press2015Best Paper Award.
PDF 10.1109/RTAS.2015.7108449 [BibTex]
OSPERT Workshop B
Look Mum, no VM Exits! (Almost)
Ralf Ramsauer, Jan Kiszka, Daniel Lohmann, Wolfgang MauererProceedings of the 13th Annual Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT '17)2017.
PDF Slides [BibTex]