Publicité
Tout sur les Systèmes d'exploitation
 Derniers articles sur les Systèmes d'exploitation
Tous les articles Systèmes d'exploitation
 Comparatif Systèmes d'exploitation
Tous les comparatifs
 Dernières actualités Systèmes d'exploitation
Toutes les actualités Systèmes d'exploitation

Newsletters


Questions high-tech
  • Besoin d'aide ? Publiez votre question
  • Publier

Afin de simplifier tout cela, Intel a conçu VT et AMD, V. Ces deux technologies sont très similaire, au point que nous n’allons pas les différencier dans la description suivante. Intel VT et AMD V se composent toutes deux de trois volets, chacun visant à résoudre de façon les difficultés à la virtualisation du CPU, à la virtualisation de la mémoire, et à la virtualisation des périphériques.

La virtualisation du CPU : Intel VT-x et AMD-V

Afin de faciliter la virtualisation du CPU, Intel et AMD ont cherché à supprimer la nécessité de surveillance et de traduction des instructions. Pour ce faire, de nouvelles instructions ont été ajoutées. Une nouvelle structure de contrôle fait aussi son apparition, baptisée VMCS (Virtual Machine Control Structure) chez Intel.

Intel VT-xParmi les nouvelles instructions, l’une d’elles (VM entry chez Intel) permet de basculer le processeur dans un nouveau mode d’exécution, dédié aux systèmes invités. Ce mode possède aussi quatre niveaux de privilèges différents. Ainsi sont supprimés les problèmes liés à l’exécution de l’OS invité en anneau 3 : l’OS invité peut s’exécuter en anneau 3 du mode VM. Quand le contexte l’exige, le processeur bascule du mode invité au mode normal. Cette bascule est décidée par des conditions fixées par le VMM à l’aide des bits de contrôle stockées dans la VMCS.

Au moment de basculer, l’état du processeur dans le mode invité est stocké dans la VMCS et l’état du processeur en mode hôte est rechargé à partir de la VMCS. Les instructions nécessaires sont alors exécutées, puis le VMM fait ressortir le processeur du mode hôte pour repasser en mode invité, en stockant l’état du processeur hôte dans la VMCS et en rechargeant l’état invité précédemment stocké. Il n’y a donc plus aucune traduction d’instructions, les instructions critiques provoquant le passage du mode invité au mode hôte. Passage automatique grâce aux règles fixées dans la VMCS.

Intel VT-x CoreIntel et AMD prétendent ainsi augmenter considérablement la vitesse des hyperviseurs. Cependant, des essais réalisés par VMware tendent à démontrer que le gain n’est pas si flagrant. Le gain serait nettement plus net avec Parallels Workstation. Nous n’avons pas eu l’occasion de tester comparativement les deux situations. On peut néanmoins prédire que les optimisations matérielles l’emporteront au final sur les solutions purement logicielles. En effet, Intel VT et AMD-V sont des solutions encore très jeunes et non abouties. De gros progrès dans ces domaines sont à attendre. Pour vous donner une idée de ce qui est possible, sachez que le nombre de cycles de calcul utilisés par les instructions VM entry, VM exit, VMCS read, VMCS write a déjà pu être divisé par deux en moyenne entre le Pentium 4 et le Core 2 Duo.

D’autre part, Intel et AMD ont prévu d’étendre le champ des optimisations. Ainsi aujourd’hui, seuls les aspects internes aux processeurs ont été traités. 2007 devrait voir apparaître des optimisations hardware de la virtualisation de la mémoire et 2008 les premières technologies de virtualisation des entrées/sorties.

Liens commerciaux
Commentaires
lolotux 25/01/2007 13:16
Masquer
-0+

Manque Qemu...!

FRandon 25/01/2007 13:26
Masquer
-0+

je savais pas que popek était un informaticien renommé ^^

:lol:

chatainsim 25/01/2007 13:29
Masquer
-0+

Manque aussi VirtualBox !

dorfr 25/01/2007 14:13
Masquer
-0+

Existe-t-il un comparatif des performances obtenus avec ces logiciels de virtualisation ?

Virtual PC est réputé lent, Qemu aussi. Mais et les autres ?

GOSkywalker13 25/01/2007 14:26
Masquer
-0+

qemu avec l'accelerator est loin d'être lent. ça représente presque du 1:1 si l'arch hote est la même que "l'émulée".

Mictateur 25/01/2007 14:46
Masquer
-0+

Intéressant !

Mais quand même, Denis, on avait pas besoin du screen d'une convers' Messenger truquée pour savoir que David avait des soucis avec la grammaire... [:rire2]

cantabile 25/01/2007 16:31
Masquer
-0+

Manque aussi linux-vserver, qui représente un autre type de virtualisation par isolation de contexte, très pratique parce que très léger (et bien maintenu et stable maintenant). On partage les ressources du noyau mais les processus tournent dans un contexte isolé (et étanche : l'invité ne peut pas ouvrir une porte sur l'hôte). A essayer sur debian ou gentoo (de préférence).

freebzh 25/01/2007 20:04
Masquer
-0+

manque aussi linux 2.6.20 avec KVM :)

freebzh 25/01/2007 20:05
Masquer
-0+

r_lamisse2 a écrit :

Existe-t-il un comparatif des performances obtenus avec ces logiciels de virtualisation ?

Virtual PC est réputé lent, Qemu aussi. Mais et les autres ?




kqemu n'est pas lent... la paravirtualistion est rapide en générale...

avec KVM on s'approche de la vitesse d'un systeme natif...

dyox 25/01/2007 20:51
Masquer
-0+

r_lamisse2 a écrit :

Existe-t-il un comparatif des performances obtenus avec ces logiciels de virtualisation ?

Virtual PC est réputé lent, Qemu aussi. Mais et les autres ?




En voici une liste http://en.wikipedia.org/wiki/Compa [...] l_machines

drouvre 25/01/2007 21:01
Masquer
-0+

a écrit :

Intéressant !

Mais quand même, Denis, on avait pas besoin du screen d'une convers' Messenger truquée pour savoir que David avait des soucis avec la grammaire... [:rire2]



:whistle:

LoneStar 26/01/2007 01:18
Masquer
-0+

les logiciels de virtualisation ne trompent rien du tout votre definition est fausse ^^
Le plus simple c'est de faire une analogie:
Un simulateur de vol créer un monde virtuel dans lequel on pilote un avion
le logiciel de virtualisation créé un environement materiel virtuel dans lequel on va implanter un système d'exploitation, c'est un simulateur de pc quoi!

sauvegarder le fichier mwai mwai mwai :heink: mais y a t il des solutions qui ne gèrent pas le snapshot ? c'est quand même plus simple :D

SteffffDotCom 26/01/2007 09:10
Masquer
-0+

Qu'il manque tel ou tel émulateur celà ne semble pas très important, l'article ne voulant seulement expliquer le principe.

Aujourd'hui le virtualisation se limite à héberger un OS traditionnel "monolithique" dans un autre à son insu.

Mais on peut aussi imaginer le morcellement futur des OS actuels.

Les couches différentes de l'OS pourront tourner chacunes dans une machine virtuelle distincte.

On obtient un gain de stabilité, car si une brique plante, il suffit de la redémarrer et les autres parties fonctionnent toujours... Ou si de la mémoire est perdue il suffit donc de redémarrer cette partie sans toucher aux autres...

L'avantage sera surtout pour les concepteurs de l'OS : au lieu de sortir des nouvelles versions complètes, on pourra mettre à jour seulement une des briques. Le développement s'en trouvera grandement simplifié...

dorfr 26/01/2007 10:29
Masquer
-0+

Merci pour le lien vers wikipedia, excellent.

Merci pour les commentaires sur Qemu, je n'avais des retours que dans le cadre d'une émulation de processeur, d'où la lenteur constatée.

dyox 26/01/2007 15:10
Masquer
-0+

r_lamisse2 a écrit :

Merci pour le lien vers wikipedia, excellent.

Merci pour les commentaires sur Qemu, je n'avais des retours que dans le cadre d'une émulation de processeur, d'où la lenteur constatée.




De rien.

matthieu lamelot 26/01/2007 16:06
Masquer
-0+

Tout d'abord merci à tous pour vos commentaires.
A ceux qui regrettent quelques oublis, je précise que ce dossier n'avait pas l'intention d'être exhaustif. il s'agit plus d'une présentation de la technologie destinée aux non-spécialistes ;)

almar 07/02/2007 13:57
Masquer
-0+

dadax3 a écrit :

Qu'il manque tel ou tel émulateur celà ne semble pas très important, l'article ne voulant seulement expliquer le principe.

Aujourd'hui le virtualisation se limite à héberger un OS traditionnel "monolithique" dans un autre à son insu.

Mais on peut aussi imaginer le morcellement futur des OS actuels.

Les couches différentes de l'OS pourront tourner chacunes dans une machine virtuelle distincte.

On obtient un gain de stabilité, car si une brique plante, il suffit de la redémarrer et les autres parties fonctionnent toujours... Ou si de la mémoire est perdue il suffit donc de redémarrer cette partie sans toucher aux autres...

L'avantage sera surtout pour les concepteurs de l'OS : au lieu de sortir des nouvelles versions complètes, on pourra mettre à jour seulement une des briques. Le développement s'en trouvera grandement simplifié...





je donne 5 ans et pas plus au développeur pour mettre en place ce genre de système partout, sinon je pourrais considérer la virtualistion comme morte. De plus, le coup 'redémarrer la brique sans rien faire planter' je demande à voir

subly 15/05/2007 15:51
Masquer
-0+

Virtual PC 2007 est sorti depuis mi-février.

http://www.microsoft.com/downloads [...] c0b40a73b6

laudares 28/09/2007 15:41
Masquer
-0+

Matthieu, j'ai beaucoup apprécié ton article, je lui trouvé très clair et objectif. Pourtant, il contienne un petit erreur :

"Le VMM peut soit être installé comme une application d’un système d’exploitation hôte (type 1), soit comme une couche logicielle plus profonde que le système d’exploitation (type 2)."

En effet, c'est le contraire - le Type 1 est exécuté directement sous la couche matérielle, jouant aussi le rôle de système d'exploitation, pendant que le Type 2 est installé tel q'une application sous le système d'exploitation (voir http://www.cs.nps.navy.mil/people/ [...] 0-0611.pdf comme source)

Ce sujet ne peut plus être commenté.
Liens commerciaux