Хост Hyper-V (2019, CLI), который бесплатный.
На сервере работает 6 виртуальных машин. Запрашиваю текущий конфиг виртуальных машин
Get-VM -Name VM_name | fl *
Пять машин показывают значение MemoryDemand несколько (в среднем на 30%) меньше, чем MemoryAssigned. То есть с ними всё нормально, никаких непоняток нет.
Но вот для одной из виртуальных машин показывается:
MemoryMinimum = 1 Gb
MemoryMaximum = 1024 Gb
MemoryStartup = 16 Gb
MemoryBuffer = 20%
MemoryAssigned = 16 Gb
MemoryDemand = 0 Gb
И этого я не понимаю от слова "совсем". Как это? Причём внутри самой виртуальной машины Windows Server 2016 сообщает, что у него всего 16 Гб оперативной памяти, из которых она использует 9,7. Как так-то?
Версия виртуальной машины - 5.0. Максимальная версия, поддерживаемая гипервизором - 9.0. Можно было бы попробовать сказать, что, мол, старая, и нет в ней такого счётчика - но из остальных 5 машин две тоже той же версии (более того - все три созданы в один день, одним человеком, и версия ОС в виртуалках одна и та же), и у них такой проблемы нет даже близко.
Собственно вопросов два. Основной - почему, и можно ли исправить? Дополнительный - имеет ли это какой-то побочный неположительный эффект? Впрочем, виртуалка работает не первый год, проблем с ней нет, так что актуальность дополнительного вопроса низкая.