SC(7): Partitionierung und Paravirtualisierung
Episode von SystemCall von Fachgebiet System- und Rechnerarchitektur, Leibniz Universität Hannover · 15. Juli 2022 · 1 h 28 min
Der SystemCall Podcast beschäftigt sich mit mehr oder weniger aktueller Betriebssystemforschung. In dieser siebten Folge haben wir uns wieder einen Gast eingeladen - den Ralf Ramsauer, Wissenschaftlicher Mitarbeiter in Regensburg. Er beschäftigt sich mit dem partitionierendem Hypervisor Jailhouse. Außerdem in dieser Folge: Florian Rommel stellt die Kunst der Paravirtualisierung mit Xen dar.
Virtualisierung in eingebetteten, mixed criticality Systemen unterscheidet sich grundlegend von der Virtualisierung im Cloud-Bereich. Hier wie da findet zunehmend eine Konsolidierung statt, also es werden mehrere einzelne Systeme (bspw. Einkernsysteme oder Systeme mit nur einer Aufgabe) auf ein einziges System migriert, bspw. Mehrkernsysteme oder sie teilen sich die Resourcen in virtuellen Maschinen. In mixed criticality Systemen müssen wir dafür Sorge tragen, dass Anwendungen, die weniger wichtig sind, keine wichtigen Anwendungen beeinflussen.
Ralf beginnt damit mixed criticality Systeme vorzustellen und darauf aufbauend den Hypervisor Jailhouse. Jailhouse lässt erst ein Linux durchbooten um sich dann als Hypervisor drunter zu schieben. Dann kann er dem Linux-System Teile der Hardware entziehen, und auf andere Kerne neue Zellen aufsetzen mit Echtzeitsystemen wie FreeRTOS. Dadurch, dass Jailhouse die Zuweisung zwischen Zellen und Prozessorkernen statisch lässt und fast alle Hardware Peripherie direkt an die Gäste durchreicht, erspart der Hypervisor sich den Scheduler und kommt fast ohne VMExits aus, also ohne dass die Hardware aus der VM ausbrechen muss und der Hypervisor aktiv werden muss. Damit lassen sich bereits erzielte Zertifizierungen für Echtzeit-Zellen leichter erneuern und die Echtzeitgarantien bleiben bestehen.
Florian hat sich die Kunst der Paravirtualisierung vorgenommen - im Grunde das Paper zum Hypervisor Xen. Xen ist ein paravirtualisierender Hypervisor, d.h. er virtualisiert nicht die echte Hardware, sondern vereinfacht die virtuelle Hardware, damit die Performance maximiert werden kann. Die Gäste wissen dann zwar, dass die nur in einer virtuellen Maschine laufen, dafür genießen sie den Vorteil der schöneren Abstraktionen durch Xen. Mit dieser Art der Virtualisierung erreicht Xen im Cloud-Umfeld sehr gute Performance und erlaubt damit, dass viele VMs auf einem Host nebeneinander augeführt werden können.
Links
Look Mum, No VM Exists (Almost)
Ramsauer, R., Kiszka, J., Lohmann, D., & Mauerer, W. (2017). Look mum, no VM exits!(almost). Proceedings of the 13th Annual Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT '17).
arXiv
Xen: The Art of Virtualization
Pratt, I., Warfield, A., Barham, P., & Neugebauer, R. (2003). Xen and the Art of Virtualization. In Proceedings of the 19th ACM Symposium on Operating Systems Principles (pp. 113-1118). DOI: 10.1145/945445.945462
ACM
University of Cambridge
Intro-/Outrotheme
the_emergent
Weitere Episoden von „SystemCall“
- SC(13): Sichten auf Adressräume 24. Januar 2026
- SC(12): Was wir nie über Locking wissen wollten 2. Dezember 2023
- SC(11): CHERI-Capabilities als Speicherschutz 7. Oktober 2023
- SC(10): GPGPU Treiber für Intel iGPUs 30. Juni 2023
- SC(9): Riesenseiten und Page-Fault Latenz 28. Januar 2023
- Advent(2): Adventskalender der Systemrufe 2. Dezember 2022
- SC(8): MirageOS und Linux als Unikernel 28. Oktober 2022
- SC(6): Exokerniges Dateihandling und Threadpooling 7. Mai 2022
- SC(5): Schneller Gegenseitiger Ausschluss im Userspace 9. April 2022
- SC(4): SGX - Trusted und Untrusted Computing 16. März 2022
- SC(3): #ifdef-Totengräber und Bibliotheksschwärzen 17. Dezember 2021
- SC(2): Himmelsbrücken durch Tunnel und Replikate bei Vielkernern 24. Oktober 2021
- SC(1): Weggabelungen, Kontrollpunkte und Adressräume 8. Juli 2021