Управление виртуальной памятью в виртуальных машинах работает следующим образом: 2
- VSC получает сведения о том, как используется память гостевой операционной системы, и передаёт их посредством виртуальной шины VMBus провайдеру Dynamic Memory VSP (DMVSP), работающему в окружении базовой операционной системы хоста. 2
- DMVSP передаёт данные балансировщику памяти Dynamic Memory Balancer. 2
- Балансировщик на основании полученных данных и настроек принимает решение о том, нужно ли виртуальной машине добавить памяти или, наоборот, у неё слишком много памяти и излишек можно «отобрать и поделить». 2
- Если нужно добавить память, диспетчер памяти стека виртуализации выделяет виртуальной машине дополнительную память. 2 Компонент DMVSC, используя технологию «горячего добавления памяти», расширяет адресное пространство виртуальной машины, и после этого соответствующие виртуальные адреса сопоставляются с выделенными физическими адресами. 2
Также в управлении виртуальной памятью в виртуальных машинах используется механизм увеличения объёма памяти (Memory Ballooning). 35 Он позволяет хост-системе искусственно расширять свой пул памяти за счёт использования или восстановления неиспользуемой памяти, ранее выделенной различным виртуальным машинам. 3