Virtualisation - Microsoft vs VMware
Gestion de la mémoire
Optimisation de la mémoire du côté de VMware
Ci-dessous se trouve deux schémas qui présentent les deux principales technique

- Sur la gauche vous pouvez voir la technique appelée "Transparent page sharing"
- Cette technique permet de factoriser les fichiers communs. Par exemple, si vous possédez 10 installations du système d'exploitation Windows 2008, certains fichiers sont identiques, ils sont donc conservés une seule fois en mémoire.
- L'autre technique, sur la droite, est appelée "Memory Ballooning" car cette technique repose sur le principe du ballon de baudruche
- La mémoire est allouée à l'aide des trois mêmes réglages que le processeur : quantité minimale souhaitée, limite maximale et nombre d'unités de partage.
- ESX peut forcer le système d'exploitation invité à déplacer des pages mémoire vers le disque.
- Il réalise cela grâce à un mécanisme dit de « ballooning » consistant à gonfler et dégonfler un ballon qui représente la pression exercée sur une VM pour qu'elle libère de la mémoire.
- Cela permet à un hôte de swapper sur disque des pages de RAM non utilisées au-delà de la limte de réservation fixée dans ses paramètres.
- Si ce mécanisme n'est pas activé, ESX utilise un fichier d'échange dans lequel il place arbitrairement les pages les moins accédées par le système invité.
Optimisation de la mémoire du côté de Microsoft
Microsoft n'a pas fait les mêmes choix que VMware en terme d'optimisation de la mémoire. Voici le système qu'ils proposent:

Ils proposent un système de mémoire dynamique dont voici les trois points à retenir :
- Startup RAM : c'est la quantité de RAM à utiliser lors du démarrage de la machine et non la quantité de mémoire minimale !
- Memory Buffer: ce "buffer" permet d'anticiper les variations de RAM
- Il n'y a donc pas de perte de performance s'il y a une montée de charge
- Cela permet avant tout de prévenir le mécanisme de swap qui sont souvent synonyme de performances écroulées.
- Memory Weight: Ce "poids" gère les priorités entre VM : Si une VM à forte priorité a besoin de RAM elle en prend aux plus faibles