Was ist Virtualisierung: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 16: | Zeile 16: | ||
== Simulation == | == Simulation == | ||
* Vollständige Nachbildung eines Systems mittels Software. | * Vollständige Nachbildung eines Systems mittels Software. | ||
| + | * Auch die CPU wird nachgebildet. | ||
* Alle Systemkomponenten und deren innere Logik werden nachgestellt. | * Alle Systemkomponenten und deren innere Logik werden nachgestellt. | ||
* Einsatz von Crosscompilern. | * Einsatz von Crosscompilern. | ||
Version vom 8. Mai 2025, 18:31 Uhr
Was ist Virtualisierung?
- Abstraktion physischer IT-Ressourcen (z.B. Hardware, Software-Komponenten).
- Erstellung virtueller oder logischer Komponenten.
- Zentraler Vorteil ist die Abstraktionsschicht zwischen physischer Ressource und virtuellem Abbild.
- Grundlage diverser Cloud-Services.
- Die Abgrenzung zwischen Virtualisierung und Emulation betrifft nur die CPU – bei der Virtualisierung wird die CPU direkt ausgeführt, bei der Emulation wird auch die CPU nachgebildet.
Definition Virtualisierung
- Abstraktion physischer IT-Ressourcen wie Hardware, Software, Speicher und Netzwerkkomponenten.
- Bereitstellung dieser Ressourcen auf virtueller Ebene.
- Vorteil ist Flexibilität.
- Hardwareunabhängigkeit.
- Virtualisierung bedeutet die effiziente Nutzung der CPU, während Geräte entweder emuliert oder para-virtuell bereitgestellt werden.
Abgrenzung zu Simulation und Emulation
Simulation
- Vollständige Nachbildung eines Systems mittels Software.
- Auch die CPU wird nachgebildet.
- Alle Systemkomponenten und deren innere Logik werden nachgestellt.
- Einsatz von Crosscompilern.
- Ermöglicht Ausführen von Software für veraltete Großrechner auf modernen Plattformen.
- Praktisch kein produktiver Einsatz.
- Beispiel: iPhone-Simulator in Xcode zum Testen von Webseiten.
Emulation
- Stellt die Funktionen von Hardware- oder Software-Komponenten bereit.
- Abbildung der äußeren Funktionsweise, keine Nachbildung der inneren Logik.
- Ziel ist es, dieselben Ergebnisse wie mit realem Pendant zu erzielen.
- Fokus liegt auf Ergebnisgenauigkeit.
- Bei der Emulation werden sowohl CPU als auch Geräte nachgebildet, was zu einer geringeren Geschwindigkeit führt.
Virtualisierung
- Virtualisierung ist eine Hybridlösung, die die direkte Ausführung der CPU ermöglicht, während Geräte emuliert oder para-virtuell bereitgestellt werden.
- CPU-Ausführung: Direkter Zugriff auf die physische CPU (z. B. VT-x/AMD-V), keine Emulation der CPU-Instruktionen.
- Emulierte Komponenten:
- BIOS/UEFI-Firmware (SeaBIOS, OVMF).
- Basis-Hardware (PIIX3/SATA-Controller, RTL8139-NIC).
- Grafikkarten (Standard-VGA, virtio-GPU).
- Legacy-Geräte (i8042-Controller, PS/2-Maus).
- Para-virtuelle Geräte:
- Hochleistungs-Netzwerk (virtio-net).
- Blockgeräte (virtio-blk).
- Balloon-Treiber (Speichermanagement).
- Virtualisierung bietet den Vorteil, dass sie mit der echten CPU arbeitet, während die emulierten/virtuellen Komponenten für das komplette System zur Verfügung gestellt werden.
- Während Emulation die vollständige Nachbildung von Systemen (einschließlich der CPU) erfordert, werden in der Virtualisierung nur die Geräte nachgebildet oder optimiert.
- Beispiel: KVM/QEMU, VMware, Hyper-V, Proxmox — hier wird die CPU virtualisiert, aber die Geräte sind emuliert oder para-virtuell bereitgestellt.
Beispiele
- Wine: Emulation einer Microsoft-Umgebung unter Linux.
- Cygwin: Bereitstellung einer Linux-Umgebung unter Windows.
- In Virtualisierungslösungen wie VMware, KVM/QEMU, Hyper-V werden emulierte oder para-virtuelle Geräte für die virtuelle Maschine bereitgestellt, die ansonsten auf physische Hardware angewiesen wären.
Wie funktioniert Virtualisierung?
- Ähnelt Konzepten der Simulation und Emulation.
- Ziel ist, möglichst wenig zu simulieren oder zu emulieren.
- Fokus liegt auf Etablierung einer Abstraktionsschicht.
- Der Kernaspekt der Virtualisierung ist die direkte Nutzung der CPU, während Geräte durch Emulation oder Para-Virtualisierung bereitgestellt werden.
- Virtuelle Maschinen laufen effizient, da die CPU direkt verwendet wird, aber die Peripherie (z.B. Netzwerkkarten, Festplatten) emuliert oder optimiert wird.
Formen der Virtualisierung
Hardware-Virtualisierung
- Bereitstellung von Hardware-Komponenten mittels Software, unabhängig von physischer Grundlage.
- Beispiel: Virtuelle Maschine (VM).
- VM verhält sich wie ein physischer Rechner inklusive Hardware und Betriebssystem.
- Hypervisor erzeugt Abstraktionsschicht zwischen physischer Hardware und virtuellem System.
Vollvirtualisierung
- Hypervisor stellt jeder VM eine komplette virtuelle Hardware-Umgebung bereit.
- Gastbetriebssystem muss nicht modifiziert werden.
Paravirtualisierung
- Gastbetriebssystem wird modifiziert.
- Beispielsweise Anpassung des Kernels.
- Vorteil: Häufig höhere Effizienz.