Memory Overcommitment: нужен или не нужен?

До недавнего времени, на рынке серверной виртуализации безраздельно правила компания VMware. Фактически, у нее не было конкурентов – ну, разве что Citrix, после покупки Xen. Теперь же на этот рынок вышла и Microsoft с их Hyper-V и совсем недавно подтянулась и Red Hat с RHEV. И теперь «война» между вендорами решений виртуализации грозит по накалу страстей и своей эпичности перерасти даже священную войну адептов Microsoft и Linux. Одним из главных козырей в войне виртуализаторов являются принципы работы с памятью, и в частности – наверняка известный многим термин – Memory Overcommitment. Это как раз то, что, по словам адептов VMware, уже давно есть у них, и нет у Microsoft. В ответ на это, Microsoft вышла с Windows Server 2008 Service Pack 1, содержащим технологию Dynamic Memory. При этом они утверждают, что Dynamic Memory – это не Memory Overcommitment. Давайте же посмотрим, что же на самом деле скрывается под этими английскими словосочетаниями.



Как известно, до определенного времени в сфере виртуализации серверов «правил бал» VMware со своим ESX. Теперь же, с выпуском Hyper-V Microsoft постепенно «наступает на пятки». Насколько успешно – вопрос, конечно, весьма спорный, учитывая, что VMware ESX существует на рынке намного дольше. Тем не менее, Hyper-V привлекает все большее и большее внимание по мере появления новых фич – таких, как Cluster Shared Volumes и Live Migration в Windows Server 2008 R2, или Dynamic Memory в готовящемся к выходу Service Pack 1.