Tout ce que vous devez savoir sur la technologie de virtualisation Intel

Plusieurs processeurs Intel sont livrés avec la technologie Intel Virtualization (VT).Anciennement connu sous le nom de Vanderpool, cette technologie permet à un processeur d'agir comme si vous aviez plusieurs ordinateurs indépendants, afin de permettre à plusieurs systèmes d'exploitation de s'exécuter en même temps sur la même machine.Dans ce tutoriel, nous expliquerons tout ce que vous devez savoir sur cette technologie.

La technologie de virtualisation d'Intel est disponible en deux versions: VT-X, pour les processeurs x86;et vt-i, pour itanium (i.e., IA-64) Processeurs.Dans ce tutoriel, nous couvrirons les détails de la technologie VT-X.

PreviewProduct
Intel Core i7-7820X X-Series Processor 8 Cores up to 4.3 GHz Turbo Unlocked LGA2066 X299 Series 140WBuy on Amazon
Virtualization technology is nothing new. There is some software on the market that enables virtualization; probably VMware is the most famous one. (Click here for a complete list of virtualization software available on the market.) With this technique, you can “partition" a single computer to act as if it were several independent computers, allowing the system to run several operating systems at the same time. These operating systems can even be different (e.g., you can run Windows in one virtual machine and Linux in another).

Vous pouvez confondre la virtualisation avec le multitâche, le multi-fond ou l'hyper-threading.Lorsque le multitâche, il existe un seul système d'exploitation et plusieurs programmes fonctionnant en même temps.Avec la virtualisation, vous pouvez avoir plusieurs systèmes d'exploitation en parallèle, chacun avec plusieurs programmes en cours d'exécution.Chaque système d'exploitation s'exécute sur une «machine virtuelle», je.e., chaque système d'exploitation pense qu'il s'exécute sur un ordinateur complètement indépendant.

La technologie multicœur permet à un seul processeur d'avoir plus d'un processeur physique à l'intérieur.Par exemple, un ordinateur avec un processeur double cœur agit comme s'il s'agissait d'un ordinateur avec deux processeurs installés, travaillant sous un mode appelé multiprocesse symétrique (SMP).Même si les processeurs multi-core ont plus d'un processeur à l'intérieur, ils ne peuvent pas être utilisés indépendamment.Le système d'exploitation est exécuté par le premier noyau de CPU, et les noyaux supplémentaires que le CPU peut avoir doit être utilisé par le même système d'exploitation.Ainsi, sur la base de toute explication, il n'y a pas de différence entre un processeur à noyau et un multi-fond.

La technologie Hyper-Threading simule un processeur supplémentaire par CPU Core.Par exemple, un processeur à double noyau avec une technologie d'hyper-threading est observé par le système d'exploitation comme s'il s'agissait d'un processeur quadricore.Ces processeurs supplémentaires ne peuvent pas exécuter des systèmes d'exploitation distincts, donc pour le système d'exploitation, la technologie hyper-threading a le même effet que la technologie multi-core.

Les diagrammes ci-dessous peuvent vous aider à comprendre les différences entre ces technologies.

Figure 1: Multitasking

Everything You Need to Know About the Intel Virtualization Technology

Figure 2: Multi-core or Hyper-Threading

Figure 3: Virtualization

Si vous portez une attention particulière, la technologie de virtualisation utilise la même idée que le mode virtuel 8086 (V86), qui est disponible depuis le processeur 386.Avec le mode V86, vous pouvez créer plusieurs machines virtuelles 8086 pour exécuter des programmes DOS en même temps, chacun «pensant» qu'il s'exécute dans un ordinateur complètement indépendant.Avec VT, vous pouvez créer plusieurs machines virtuelles «complètes» pour exécuter simultanément des systèmes d'exploitation complets.

S'il existe des logiciels tels que VMware qui permet la virtualisation, pourquoi implémenter la technologie de virtualisation à l'intérieur du CPU?L'avantage est que les CPU avec la technologie de virtualisation ont de nouvelles instructions pour contrôler la virtualisation.Avec eux, le logiciel de contrôle (appelé VMM, Virtual Machine Monitor) peut être plus simple, améliorant ainsi les performances par rapport aux solutions logicielles.Lorsque le CPU prend en charge la technologie de virtualisation, la virtualisation serait basée sur le matériel ou le matériel.

Les processeurs avec une technologie de virtualisation ont un ensemble d'instructions supplémentaire appelé extensions de machines virtuelles ou VMX.VMX apporte 10 nouvelles instructions spécifiques à la virtualisation au CPU: VMPTRLD, VMPTRST, VMCLEAR, VMREAD, VMWRITE, VMCALL, VMLAUNC, VMRESUME, VMXOFF et VMXON.

Il y a deux modes à exécuter sous virtualisation: opération root VMX et opération non racine VMX.Habituellement, seul le logiciel de contrôle de virtualisation, appelé Virtual Machine Monitor (VMM), s'exécute sous le fonctionnement root, tandis que les systèmes d'exploitation fonctionnant en haut des machines virtuelles s'exécutent sous un fonctionnement non root.Le logiciel exécuté au-dessus des machines virtuels est également appelé «logiciel invité."

Pour entrer le mode de virtualisation, le logiciel doit exécuter l'instruction VMXON, puis appeler le logiciel VMM.Le logiciel VMM peut saisir chaque machine virtuelle à l'aide de l'instruction VMLAUNCH et la sortir en utilisant l'instruction VMRESUME.Si le VMM veut arrêter et quitter le mode de virtualisation, il exécute l'instruction VMXOFF.

Figure 4: Operation of the Virtualization Technology

Chaque invité illustré à la figure 4 peut être un système d'exploitation différent, exécutant ses propres programmes (même plusieurs programmes en même temps que nous l'avons montré dans la figure 3).

Les processeurs plus récents ont une extension appelée EPT (Tables de page étendue), qui permet à chaque invité d'avoir son propre tableau de page pour garder une trace des adresses mémoire.Sans cette extension, le VMM doit quitter la machine virtuelle pour effectuer des traductions d'adresse.Cette tâche de sortie et de retour réduit les performances.Par conséquent, l'EPT augmente les performances de virtualisation.

Même si la technologie Intel Virtualization a été publiée en 2005, tous les processeurs actuels d'Intel ne soutiennent pas cette technologie.Le moyen le plus simple de vérifier si votre CPU prend en charge cette technologie est d'exécuter l'utilitaire d'identification du processeur Intel. After you download and install this program, run it and go to the “CPU Technologies" tab. There you will see, besides “Intel (R) Virtualization Technology," whether your CPU supports it or not.Vous pouvez également voir si votre CPU prend en charge les tables de page étendues (EPT), en plus de «Intel VT-X avec des tables de page étendues." See Figure 5.

Figure 5: Detecting support for the Intel Virtualization Technology

Dernière mise à jour le 2022-03-17 à 17:02 / liens / images d'affiliation de l'API publicitaire sur le produit Amazon

Articles populaires