Technologie utilisée par Machines
Machines utilise qemu-kvm, libvirt-glib et spice-gtk pour permettre aux utilisateurs de gérer facilement leurs machines virtuelles.
QEMU avec KVM
QEMU est un émulateur et un virtualiseur de machines. En tant qu’émulateur, il peut exécuter des systèmes d’exploitation et des programmes conçus pour une certaine machine (p.ex. une carte ARM) sur une autre machine (p.ex. votre PC). En tant que virtualiseur, QEMU réalise une performance proche de l’originale en exécutant le code invité directement sur le CPU hôte grâce à KVM.
KVM (Kernel-based Virtual Machine) est un module du noyau Linux qui permet à un programme utilisateur de recourir aux fonctionnalités de virtualisation matérielles de différents processeurs.
libvirt
libvirt est un ensemble d’outils pour la manipulation (création, effacement, modification) et la surveillance de machines virtuelles.
libvirt-glib englobe libvirt pour procurer une API orientée objet de haut niveau, convenant à des applications basées sur glib.
SPICE
SPICE (Simple Protocol for Independent Computing Environments) est un système pour accéder à des bureaux distants et les contrôler à travers un réseau.
Le serveur SPICE est une bibliothèque qui s’exécute à l’intérieur du binaire QEMU. Il est avant tout responsable de l’authentification des connexions client, de la transmission des sorties graphiques du système d’exploitation invité vers le client et de la transmission des entrées de l’utilisateur (souris et clavier) du client vers l’invité.
spice-gtk est le client SPICE qui fournit l’affichage du système d’exploitation de l’invité.