Porting and Integration of MPStuBS with the Jailhouse partitioning hypervisor

Jailhouse is a partioning hypervisor, which allows us to split off indivdual processors from a Linux system as cells. Core idea of Jailhouse is to use Linux for the heavy lifiting of device initialization and booting of the system, before the fully-initialized devices are handed in to the inmate via shared memory regions. Within cells, which are physically separated from the rest of your system to reduce jitter and interference, you can run another operating system, like FreeRTOS, as a cell inmate.

For example, you could run your own .

The goal of this thesis is to port and integrate MPStuBS as an inmate in a Jailhouse cell For this, the build system of MPStuBS has to be adapted to use the intialized devices and proper language-level abstractions for the shared areas should be created. Furthermore, we are already working on an integration of io_uring with Jailhouse, which would be great to integrate with MPStuBS

Tasks

  • Boot the MPStuBS operating system in a Jailhouse cell
  • Create abstractions for shared-memory areas
  • Integrate Jailhouse-io_uring with MPStuBS

Further Reading

  • 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]