<style>
/* Logo-Positionierung */
.reveal .slides {
background: url(https://hedgedoc.xinux.net/uploads/xinux-weiss.png) no-repeat;
background-position: right 10px bottom 10px;
background-size: 80px;
}
/* Listen-Anpassungen */
.reveal ul li {
font-size: 28px !important;
line-height: 1.3 !important;
margin-bottom: 10px !important;
}
/* Verbesserte Lesbarkeit */
.reveal .slides section {
text-align: left;
padding: 20px 40px !important;
}
</style>
## x86 Virtualisierung
### Architektur, Ablauf und Privilegienmodell
---
## Was ist x86-Virtualisierung?
- Parallele Ausführung mehrerer Betriebssysteme auf x86-Prozessoren.
- Ein Hypervisor ermöglicht effiziente und isolierte Ressourcennutzung.
- Ziel: Gastbetriebssysteme bemerken keinen Unterschied zur physischen Hardware.
---
## Historisches Modell (Protected Mode)
- 4 Ringe (0–3).
- OS in Ring 0, Apps in Ring 3.
- Ringe 1 und 2 selten genutzt.
---
## Modernes Privilegienmodell
- **VMX Root Mode ("Ring -1")**: Hypervisor mit absoluter Kontrolle.
- **VMX Non-Root Mode ("virtueller Ring 0")**: Gastbetriebssystem eingeschränkt.
- Anwendungen weiterhin in Ring 3.
- Höhere Effizienz durch weniger Emulation.
---
## VT-x Ausführungs- und Privilegienmodell
### Übersicht
- Intel VT-x definiert zwei Betriebsmodi:
- **VMX Root Mode**: Hypervisor (VMM) mit voller Hardwarekontrolle.
- **VMX Non-Root Mode**: Virtuelle Maschinen mit Gastbetriebssystemen.
- Gastbetriebssysteme laufen fast unverändert, während der Hypervisor die Kontrolle behält.
---
## Architekturübersicht
<img src="https://hedgedoc.xinux.net/uploads/f7be636b-cbfe-4c46-881d-092bd9d1d91f.png" width="600">
---
## Ablauf zwischen Hypervisor und VMs
- Unten: CPU mit VT-x Unterstützung.
- Hypervisor läuft im **VMX Root Mode** mit vollständigem Zugriff.
- VMs laufen im **VMX Non-Root Mode**:
- Gastbetriebssystem in Ring 0 (virtuell).
- Anwendungen in Ring 3.
- Übergänge:
- **VM Entry**: Wechsel von Hypervisor zu VM.
- **VM Exit**: Wechsel von VM zurück zum Hypervisor.
---
## Komponenten im VMX Root Mode (Details zur Architektur)
### VMCS (Virtual Machine Control Structure)
- Datenstruktur für VM-Status (Gast, Host, Steuerinfos).
- Aktiv bei jedem VM Entry und Exit.
### H/W VM Control Structure (VMCS)
- Physischer Bereich der CPU für schnelle VMCS-Verwaltung.
- Minimiert Umschaltzeiten.
### Memory and I/O Virtualization
- Speicherisolation und Adressübersetzung (z.B. EPT).
- I/O-Emulation oder -Weiterleitung.
- Schutz vor unerlaubtem Zugriff.
---
## Schutzringe innerhalb der Modi

### VMX Root Mode
- Vom Hypervisor genutzt, praktisch in Ring 0.
### VMX Non-Root Mode
- Von VMs genutzt:
- Gastbetriebssystem in Ring 0 (virtuell).
- Anwendungen in Ring 3.
- Kritische Befehle lösen **VM Exit** aus.
---
## Funktionsweise
### Hypervisor
- Zentrale Steuerung der Ressourcen.
- Weist CPU, Speicher und I/O zu.
### Virtuelle Maschinen
- Isoliert wie echte Rechner.
- Gastbetriebssysteme und Anwendungen laufen kontrolliert.
- Kritische Operationen werden vom Hypervisor geprüft.
---
## Softwarebasierte Virtualisierung (klassische Methode)
- Keine Prozessorunterstützung → hoher Overhead.
- Gastbetriebssystem deprivilegiert.
- Hypervisor fängt privilegierte Befehle ab.
---
## Hardwareerweiterungen
### Intel VT-x
- Codename „Vanderpool“.
- Trap-and-Emulate Verfahren.
- Unterstützung für Root/Non-Root Modes.
### AMD-V
- Codename „Pacifica“.
- Vergleichbare Technik zu VT-x.
---
## Praxis-Beispiele
- KVM (Kernel-based Virtual Machine, Linux)
- VMware vSphere (ESXi)
- Microsoft Hyper-V
- Citrix XenServer
---
## Weiterführende Informationen
- [Einführung in KVM (tuxthink)](https://tuxthink.blogspot.com/2011/12/kvm-introduction.html)
- [Arch Linux KVM Wiki](https://wiki.archlinux.org/title/KVM)
{"title":"x86 Virtualisierung — Architektur und Privilegienmodell","author":"Thomas Will","date":"2025-04-25T00:00:00.000Z"}