Fév 082010
 

Dans le monde de la virtualisation, il y a 2 grandes familles :

  • L’émulation
  • La paravirtualisation

L’émulation consiste a emuler logiciellement le matériel sur lequel le systeme d’exploitation est censé fonctionner.
Dans le cas d’une emulation totale,on émule jusqu’au fonctionnement du processeur. C’est le cas dans les emulateurs d’autres architectures comme par exemple un emulateur de console nintendo NES ou Sega MegaDrive sur PC.
Les ressources CPU necessaires pour réaliser ce type d’emulation sont enormes par rapport à la puissance des machines émulées.

Dans le cas ou on émule une architecture identique à l’architecture hote, il est possible de prendre pas mal de racourcis en faisant executer directement la majorité du code par le CPU. seules les instructions privilégiées comme pour l’accès au matériel devront être émulées. Cette technique consiste essentiellement à intercepter tous les appels bas niveau et à y répondre comme le ferait les matériel « émulé »
Cette technique est par exemple utilisée dans le logiciel VMware.
Les microprocesseurs récents intègrent des optimisations spécifiques permettant de réaliser ces opérations d’émulation avec un niveau de performances nettement supérieur à ce qui était possible auparavent.

Enfin Il existe une technique dite de paravirtualisation qui est à mon avis la meilleure car elle permet des performances proches de celles obtennues avec une machine physique. Cette technique consiste à employer un « hyperviseur » qui implémente toutes les routines d’accès bas niveau et auquel les systemes d’exploitation hébergés feront directement référence. Le problème de cette technique est que les systemes d’exploitation en question doivent être modifiés pour tenir compte qu’ils fonctionnent dans un environnement virtuel.

Actuellement, une des meilleurs solutions de paravirtualisation est Xen.
malheureusement, Windows n’est pas conçu pour fonctionner avec Xen. Il n’est possible de paravirtualiser windows qu’en employant l’hyperviseur microsoft HyperV.

Sorry, the comment form is closed at this time.