Aufgrund der mit der Virtualisierung einhergehenden zusätzlichen Ebene der Arbeitsspeicherzuordnung kann mit ESXi eine effektive Arbeitsspeicherverwaltung für alle virtuellen Maschinen umgesetzt werden.

Ein Teil des physischen Arbeitsspeichers einer virtuellen Maschine könnte dabei gemeinsam genutzten Seiten, nicht zugeordneten Seiten oder ausgelagerten Seiten zugeordnet werden.

Ein Host führt die virtuelle Arbeitsspeicherverwaltung aus, ohne dass das Gastbetriebssystem darüber informiert ist und ohne Einfluss auf das eigene Subsystem der Arbeitsspeicherverwaltung im Gastbetriebssystem.

Der VMM der einzelnen virtuellen Maschinen übernimmt die Zuordnung der physischen Arbeitsspeicherseiten des Gastbetriebssystems zu den physischen Arbeitsspeicherseiten der zugrunde liegenden Maschine. (VMware bezeichnet die physischen Seiten des zugrunde liegenden Hosts als Maschinenseiten und die physischen Seiten des Gastbetriebssystems als physische Seiten.)

Jede virtuelle Maschine verfügt über einen zusammenhängenden, nullbasierten, adressierbaren physischen Arbeitsspeicher. Der zugrunde liegende Maschinenarbeitsspeicher des von den virtuellen Maschinen verwendeten Servers ist nicht unbedingt zusammenhängend.

Die virtuellen und physischen Gastadressen werden vom Gastbetriebssystem verwaltet. Der Hypervisor ist nur für das Übersetzen der physischen Gastadressen in Maschinenadressen zuständig. Die hardwaregestützte Arbeitsspeichervirtualisierung generiert mithilfe der Hardwarekomponente die kombinierten Zuordnungen mit den Seitentabellen des Gasts und den vom Hypervisor verwalteten verschachtelten Seitentabellen.

Das Diagramm veranschaulicht die Implementierung der Arbeitsspeichervirtualisierung bei ESXi.

Abbildung 1. Arbeitsspeicherzuordnung bei ESXi

Diese Abbildung veranschaulicht die Implementierung der Speichervirtualisierung.
  • Durch die Kästchen werden Seiten dargestellt; die Pfeile veranschaulichen die verschiedenen Arbeitsspeicherzuordnungen.
  • Die Pfeile vom virtuellen Arbeitsspeicher des Gasts zum physischen Arbeitsspeicher des Gasts zeigen die durch die Seitentabellen des Gastbetriebssystems gepflegte Zuordnung. (Die Zuordnung vom virtuellen Arbeitsspeicher zum linearen Arbeitsspeicher für Prozessoren mit x86-Architektur ist nicht dargestellt).
  • Die Pfeile vom physischen Arbeitsspeicher des Gasts zum Maschinenarbeitsspeicher stellen die durch den VMM gepflegte Zuordnung dar.
  • Die gestrichelten Pfeile zeigen die Zuordnung vom virtuellen Arbeitsspeicher des Gasts zum Maschinenarbeitsspeicher in den Schattenseitentabellen, die ebenfalls durch den VMM gepflegt werden. Der zugrunde liegende Prozessor, der die virtuelle Maschine ausführt, verwendet die Zuordnungen in der Schattenseitentabelle.