Jede virtuelle Maschine verbraucht Arbeitsspeicher auf der Grundlage der für sie konfigurierten Größe, sowie einen zusätzlichen Overhead-Arbeitsspeicher für die Virtualisierung.
Die konfigurierte Größe ist die Größe des Arbeitsspeichers, der dem Gastbetriebssystem zur Verfügung gestellt wird. Dieser Wert unterscheidet sich von dem physischen Arbeitsspeicher, der der virtuellen Maschine zugeteilt ist. Der Letztere hängt von den Ressourceneinstellungen (Anteile, Reservierung, Grenzwert) und dem Grad der Arbeitsspeicherbelastung auf dem Host ab.
Nehmen Sie eine virtuelle Maschine mit einer konfigurierten Größe von 1 GB als Beispiel. Wenn das Gastbetriebssystem startet, erkennt es, dass es auf einer dedizierten Maschine mit 1 GB an physischem Arbeitsspeicher ausgeführt wird. In einigen Fällen kann dabei der virtuellen Maschine die gesamte Größe von 1 GB zugeteilt werden. In anderen Fällen wäre die Zuteilung kleiner. Unabhängig von der aktuellen Zuteilung verhält sich das Gastbetriebssystem weiterhin, als ob es auf einer dedizierten virtuellen Maschine mit 1 GB physischem Arbeitsspeicher ausgeführt werden würde.
- Anteile
- Anteile legen die relative Priorität einer virtuellen Maschine fest, falls ein über die Reservierung hinausgehender Speicher verfügbar ist.
- Reservierung
-
Die Reservierung ist eine garantierte Untergrenze für die Menge an physischem Arbeitsspeicher, die der Host für eine virtuelle Maschine reserviert, auch wenn der Arbeitsspeicher mehrfach vergeben wird. Die Reservierung sollte so festgelegt werden, dass die virtuelle Maschine über ausreichend Arbeitsspeicher verfügt, um eine effiziente Ausführung ohne übermäßiges Paging zu gewährleisten.
Nachdem eine virtuelle Maschine die zugehörige Reservierung voll ausgeschöpft hat, behält sie diese Menge an Arbeitsspeicher bei. Dieser Arbeitsspeicher wird auch dann nicht zurückgefordert, wenn sich die virtuelle Maschine im Leerlauf befindet. Einige Gastbetriebssysteme (z. B. Linux) greifen möglicherweise direkt nach dem Starten nicht auf den gesamten konfigurierten Arbeitsspeicher zu. Bis die virtuellen Maschinen die zugehörige Reservierung voll ausschöpfen, kann der VMkernel ungenutzte Anteile dieser Reservierung anderen virtuellen Maschinen zuweisen. Wenn jedoch die Arbeitslast des Gastbetriebssystems ansteigt und die virtuelle Maschine ihre Reservierung voll ausschöpft, behält sie danach diese Arbeitsspeichermenge.