Hypervisor

Ein Hypervisor erstellt und verwaltet virtuelle Maschinen.

Ein Hypervisor, auch bekannt als Virtual Machine Monitor (VMM), ist eine Software-, Firmware- oder Hardware-Schicht, die virtuelle Maschinen (VMs) erstellt und verwaltet. Er abstrahiert die zugrunde liegenden physischen Hardwareressourcen (CPU, Speicher, Speicherplatz, Netzwerk) und weist sie mehreren unabhängigen VMs zu. Hypervisoren ermöglichen die gleichzeitige Ausführung mehrerer Betriebssysteme und Anwendungen auf einer einzigen physischen Maschine, was die Ressourcenauslastung verbessert, Isolierung bietet und die Portabilität erleichtert. Es gibt zwei Haupttypen: Typ 1 (Bare-Metal-) Hypervisoren, die direkt auf der Hardware des Hosts laufen (z. B. VMware ESXi, Microsoft Hyper-V, KVM), und Typ 2 (Hosted-) Hypervisoren, die auf einem herkömmlichen Betriebssystem laufen (z. B. VMware Workstation, Oracle VirtualBox). Typ 1 Hypervisoren bieten im Allgemeinen eine bessere Leistung und Sicherheit aufgrund des direkten Hardwarezugriffs, während Typ 2 Hypervisoren einfacher zu installieren und zu verwalten sind für die Desktop-Virtualisierung. Zu den Hauptfunktionen gehören VM-Bereitstellung, -Planung, -Ressourcenzuweisung, -Snapshotting und -Migration. Kompromisse beinhalten Leistungs-Overhead, potenzielle Sicherheitslücken in der Hypervisor-Schicht selbst und die Komplexität der Verwaltung virtualisierter Umgebungen.

        graph LR
  Center["Hypervisor"]:::main
  Rel_virtualization["virtualization"]:::related -.-> Center
  click Rel_virtualization "/terms/virtualization"
  Rel_virtual_machine["virtual-machine"]:::related -.-> Center
  click Rel_virtual_machine "/terms/virtual-machine"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 Erkläre es wie einem 5-Jährigen

Es ist wie ein spezieller Manager für Computer, der es Ihnen erlaubt, viele verschiedene "vorgetäuschte" Computerversionen auf nur einem echten Computer laufen zu lassen, die jeweils getrennt voneinander arbeiten.

🤓 Expert Deep Dive

Hypervisoren arbeiten, indem sie privilegierte Anweisungen und Hardwarezugriffsanfragen von Gastbetriebssystemen abfangen und verwalten. Typ 1 Hypervisoren erreichen dies durch direkte Hardwarekontrolle, oft unter Nutzung von CPU-Virtualisierungserweiterungen (Intel VT-x, AMD-V) für hardwaregestützte Virtualisierung. Dies ermöglicht es Gast-Betriebssystemen, die meisten Anweisungen direkt auf der CPU auszuführen, wobei der Hypervisor nur bei sensiblen Operationen eingreift. Die Speicherverwaltung beinhaltet Techniken wie Shadow Page Tables oder Nested Page Tables, um Gast-physikalische Adressen Host-physikalischen Adressen zuzuordnen. Typ 2 Hypervisoren emulieren Hardware oder verlassen sich auf OS-[Kernel](/de/terms/os-kernel)-Module für den Hardwarezugriff, was mehr Overhead mit sich bringt. Architektonische Kompromisse konzentrieren sich auf Leistung gegenüber Flexibilität. Direkter Hardwarezugriff (Typ 1) minimiert den Overhead, erfordert jedoch spezifische Hardwareunterstützung und kann komplex sein. Emulation (Typ 2) ist portabler, aber langsamer. Die Sicherheit beruht stark auf der vom Hypervisor bereitgestellten Isolierung; Schwachstellen im Hypervisor können alle gehosteten VMs kompromittieren.

❓ Häufig gestellte Fragen

Was ist der Unterschied zwischen einem Typ 1 und einem Typ 2 Hypervisor?

Ein Typ 1 Hypervisor läuft direkt auf der Hardware des Hosts und fungiert als Betriebssystem selbst. Er wird typischerweise in Unternehmensserverumgebungen für bessere Leistung und Sicherheit eingesetzt. Ein Typ 2 Hypervisor läuft als Anwendung auf einem herkömmlichen Betriebssystem (wie Windows oder macOS), was seine Einrichtung und Nutzung für persönliche oder Entwicklungszwecke vereinfacht.

Was sind hardwaregestützte Virtualisierungstechnologien?

Hardwaregestützte Virtualisierungstechnologien wie Intel VT-x und AMD-V sind CPU-Funktionen, die direkte Unterstützung für die Ausführung virtueller Maschinen bieten. Sie ermöglichen es dem Hypervisor, privilegierte Anweisungen effizienter und sicherer auszuführen, wodurch der Overhead der softwarebasierten Emulation reduziert und die Gesamtleistung der VM verbessert wird.

📚 Quellen