Freigeben über


architektur Hyper-V

Hyper-V ist eine Hypervisor-basierte Virtualisierungstechnologie für bestimmte x64-Versionen von Windows. Der Hypervisor ist der Kern der Virtualisierung. Es ist die prozessorspezifische Virtualisierungsplattform, mit der mehrere isolierte Betriebssysteme eine einzelne Hardwareplattform gemeinsam nutzen können.

Hyper-V unterstützt die Isolation in Bezug auf eine Partition. Eine Partition ist eine logische Isolationseinheit, die vom Hypervisor unterstützt wird, in dem Betriebssysteme ausgeführt werden. Der Microsoft-Hypervisor muss mindestens eine übergeordnete oder Root-Partition haben, auf der Windows direkt ausgeführt wird. Der Virtualisierungsverwaltungsstapel wird in der übergeordneten Partition ausgeführt und verfügt über direkten Zugriff auf Hardwaregeräte. Die Stammpartition erstellt dann die untergeordneten Partitionen, die die Gastbetriebssysteme hosten. Eine Stammpartition erstellt untergeordnete Partitionen mithilfe der Hypercall-Anwendungsprogrammierschnittstelle (API).

Partitionen haben keinen Zugriff auf den physischen Prozessor, noch verarbeiten sie die Prozessorunterbrechungen. Stattdessen verfügen sie über eine virtuelle Ansicht des Prozessors und werden in einem virtuellen Speicheradressenbereich ausgeführt, der für jede Gastpartition privat ist. Der Hypervisor verarbeitet die Unterbrechungen des Prozessors und leitet sie an die jeweilige Partition um. Hyper-V können auch die Adressübersetzung zwischen verschiedenen virtuellen Gastadressräumen durch eine IOMMU (Input Output Memory Management Unit) beschleunigen, die unabhängig von der von der CPU verwendeten Speicherverwaltungshardware arbeitet. Eine IOMMU wird verwendet, um physische Speicheradressen den Adressen zuzuordnen, die von den untergeordneten Partitionen verwendet werden.

Untergeordnete Partitionen haben auch keinen direkten Zugriff auf andere Hardwareressourcen und werden als virtuelle Geräte (VDevs) in einer virtuellen Darstellung der Ressourcen dargestellt. Anfragen an die virtuellen Geräte werden entweder über den VMBus oder den Hypervisor an die Geräte in der übergeordneten Partition umgeleitet, die diese Anfragen bearbeiten. Der VMBus ist ein logischer Interpartitionskommunikationskanal. Die übergeordnete Partition hostet Virtualisierungsdienstanbieter (Virtualization Service Providers, VSPs), die über den VMBus kommunizieren, um Gerätezugriffsanforderungen von untergeordneten Partitionen zu verarbeiten. Untergeordnete Partitionen hosten Virtualization Service Consumers (VSCs), die Geräteanforderungen über den VMBus an VSPs in der übergeordneten Partition umleiten. Dieser gesamte Prozess ist für das Gastbetriebssystem transparent.

Virtuelle Geräte können auch ein Windows Server-Virtualisierungsfeature mit dem Namen "Optimierte E/A" für Speicher, Netzwerk, Grafiken und Eingabesubsysteme nutzen. Enlightened I/O ist eine spezielle virtualisierungsfähige Implementierung hochgradiger Kommunikationsprotokolle (z. B. SCSI), die den VMBus direkt nutzen und die Geräteemulationsebene umgehen. Dadurch wird die Kommunikation effizienter, erfordert jedoch einen optimierten Gast, der Hypervisor und VMBus kennt. Hyper-V-optimierte E/A und ein hypervisorfähiger Kernel werden über die Installation von Hyper-V-Integrationsdiensten bereitgestellt. Integrationskomponenten, die VSC-Treiber (Virtual Server Client) enthalten, stehen auch für andere Clientbetriebssysteme zur Verfügung. Hyper-V erfordert einen Prozessor, der hardwaregestützte Virtualisierung umfasst, z. B. mit Intel VT- oder AMD Virtualization (AMD-V)-Technologie.

Das folgende Diagramm bietet eine allgemeine Übersicht über die Architektur einer Hyper-V Umgebung.

Diagramm der Hyper V High Level-Architektur mit den vier Partitionen und Hypervisorabschnitten.

Glossar

  • APIC – Erweiterter programmierbarer Interruptcontroller – Ein Gerät, das es ermöglicht, den Unterbrechungsausgaben Prioritätsstufen zuzuweisen.
  • Untergeordnete Partition – Partition, die ein Gastbetriebssystem hostet. Der gesamte Zugriff auf physischen Speicher und Geräte durch eine untergeordnete Partition wird über den Virtuellen Maschinenbus (VMBus) oder den Hypervisor bereitgestellt.
  • Hypercall – Schnittstelle für die Kommunikation mit dem Hypervisor – Die Hypercall-Schnittstelle bietet Zugriff auf die vom Hypervisor bereitgestellten Optimierungen.
  • Hypervisor – Eine Softwareebene, die sich zwischen der Hardware und einem oder mehreren Betriebssystemen befindet. Der primäre Auftrag besteht darin, isolierte Ausführungsumgebungen bereitzustellen, die als Partitionen bezeichnet werden. Der Hypervisor steuert und vermittelt den Zugriff auf die zugrunde liegende Hardware.
  • IC – Integrationskomponente – Komponente, mit der untergeordnete Partitionen mit anderen Partitionen und dem Hypervisor kommunizieren können.
  • E/A-Stapel – Eingabe-/Ausgabestapel
  • MSR – Memory Service Routine
  • Stammpartition – Manchmal auch als übergeordnete Partition bezeichnet. ** Verwaltung von Funktionen auf Maschinenebene, wie z. B. Gerätetreiber, Energieverwaltung und das dynamische Hinzufügen/Entfernen von Geräten. Die Stammpartition (oder die übergeordnete Partition) ist die einzige Partition, die direkten Zugriff auf physischen Speicher und Geräte hat.
  • VID – Virtualisierungsinfrastrukturtreiber – Stellt Partitionsverwaltungsdienste, virtuelle Prozessorverwaltungsdienste und Speicherverwaltungsdienste für Partitionen bereit.
  • VMBus – Kanalbasierter Kommunikationsmechanismus, der für die interpartitionsübergreifende Kommunikation und Geräteaufzählung auf Systemen mit mehreren aktiven virtualisierten Partitionen verwendet wird. Der VMBus wird mit Hyper-V Integration Services installiert.
  • VMMS – Virtual Machine Management Service – Verantwortlich für die Verwaltung des Zustands aller virtuellen Maschinen in untergeordneten Partitionen.
  • VMWP – Arbeitsprozess für virtuelle Computer – Eine Benutzermoduskomponente des Virtualisierungsstapels. Der Arbeitsprozess stellt virtuelle Computerverwaltungsdienste aus der Windows Server 2008-Instanz in der übergeordneten Partition für die Gastbetriebssysteme in den untergeordneten Partitionen bereit. Der Virtuelle Computerverwaltungsdienst erstellt einen separaten Arbeitsprozess für jeden ausgeführten virtuellen Computer.
  • VSC – Virtualization Service Client – Eine Instanz synthetischer Geräte, die sich in einer untergeordneten Partition befindet. VSCs verwenden Hardwareressourcen, die von Virtualisierungsdienstanbietern (VSPs) in der übergeordneten Partition bereitgestellt werden. Sie kommunizieren mit den entsprechenden VSPs in der übergeordneten Partition über den VMBus, um die E/A-Anforderungen einer untergeordneten Partition zu erfüllen.
  • VSP – Virtualisierungsdienstanbieter – Befindet sich in der Stammpartition und stellt synthetische Geräteunterstützung für untergeordnete Partitionen über den Virtuellen Computerbus (VMBus) bereit.
  • WinHv – Windows Hypervisor Interface Library – WinHv ist im Wesentlichen eine Brücke zwischen den Treibern eines partitionierten Betriebssystems und dem Hypervisor, mit der Treiber den Hypervisor mit standardkonventionen für Windows-Aufrufe aufrufen können.
  • WMI – Der Virtuelle Computerverwaltungsdienst macht eine Reihe von Windows-Verwaltungsinstrumentation (WMI)-basierten APIs zum Verwalten und Steuern virtueller Computer verfügbar.