web-dev-qa-db-fra.com

Quelles sont les différences entre Xen, QEMU et KVM?

Je sais que QEMU est utilisé par Xen, et KVM est un fork de QEMU.

Donc, KVM inclut que Xen ajoute à QEMU? Quel est le nom?

Merci

51
Xorax

QEMU est un émulateur puissant, ce qui signifie qu'il peut émuler une variété de types de processeurs.

Xen utilise QEMU pour HVM invités, plus spécifiquement pour le modèle de périphérique de l'invité HVM. La QEMU spécifique à Xen est appelée qemu-dm (abréviation de modèle de périphérique QEMU)

QEMU utilise l'émulation; KVM utilise des extensions de processeur (HVM) pour la virtualisation.

Xen et KVM fusion leurs diverses fonctionnalités vers QEMU en amont, de cette façon QEMU en amont peut être utilisé directement pour accomplir l'émulation du modèle de périphérique Xen, etc.

Xen est unique en ce qu'il a paravirtualisé invités qui ne nécessitent pas de virtualisation matérielle.

Xen et KVM ont des pilotes de périphérique paravirtualisés qui peuvent s'exécuter sur les invités HVM.

54
Todd Deshane

Les réponses ci-dessus sont approfondies et techniques. J'essaie de le dire en termes simples profanes.

Qemu est un émulateur qui peut fonctionner avec ou sans KVM qui est un accélérateur (module de noyau linux qui permet à l'instruction invité de s'exécuter directement sur le CPU hôte), ce qui fait de Qemu + KVM une solution plus rapide, contrairement à l'alternative plus lente de Qemu + TCG.

Xen est un hyperviseur bare metal qui a différents modes (types de virtualisation). Par ailleurs, le bare metal est un terme trompeur. Tous les hyperviseurs Type II/hébergés ou Type I/bare-metal nécessitent un système d'exploitation sous-jacent. Ainsi, le métal nu possède également une couche très mince de système d'exploitation minimal nu comme une couche que l'hyperviseur utilise.

PV Xen ou paravirtualisé - Aucune émulation matérielle requise, le noyau invité est modifié afin que l'invité puisse détecter/s'exécuter sur l'hyperviseur Xen sous-jacent.

HVM Xen ou entièrement virtualisé - Une émulation matérielle est requise, uniquement disponible sur les processeurs prenant en charge la virtualisation Intel-VT, etc., Qemu modifié est utilisé pour l'émulation matérielle (disque, réseau, contrôleurs USB, etc.), le noyau invité n'est pas modifié.

Généralement, la virtualisation émulée (complète) est plus lente que la virtualisation de noyau modifiée (para). En installant des pilotes spécialisés (pilotes PV) dans le noyau invité, les performances des invités entièrement virtualisés peuvent être améliorées.

40
pumpkin_cat