<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" type="topic" style="task" id="supported-protocols" xml:lang="fr">
  <info>
    <revision pkgversion="3.8.0" version="0.1" date="2013-03-25" status="candidate"/>
    <link type="guide" xref="index#faq"/>

    <credit type="author copyright">
      <name>Michael Hill</name>
      <email>mdhillca@gmail.com</email>
      <years>2012</years>
    </credit>
    <credit type="author copyright">
      <name>Baptiste Mille-Mathias</name>
      <email>baptistem@gnome.org</email>
      <years>2012</years>
    </credit>

    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>

    <desc/>

  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Julien Hardelin</mal:name>
      <mal:email>jhardlin@orange.fr</mal:email>
      <mal:years>2014</mal:years>
    </mal:credit>
  </info>

  <title>Quelle est la technologie utilisée par Machines ?</title>


  <p>Machines utilise <app>qemu-kvm</app>, <app>libvirt-glib</app> et <app>spice-gtk</app> pour permettre aux utilisateurs de gérer les machines virtuelles et de se connecter à des machines distantes facilement.</p>

<section>

<title>QEMU avec KVM</title>

  <p><app>QEMU</app> est un émulateur et un virtualiseur de machines. En tant qu'émulateur, il peut exécuter des systèmes d'exploitation et des programmes faits 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.</p>

  <p><app>KVM</app> (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.</p>

</section>
<section>

<title>libvirt</title>

  <p><app>libvirt</app> est un jeu d'outils pour la manipulation (création, effacement, modification) et la surveillance de machines virtuelles sur des hôtes distants, en toute sécurité.</p>

  <p><app>libvirt-glib</app> englobe libvirt pour procurer une API orientée objet de haut niveau, convenant à des applications basées sur glib.</p>

</section>
<section>

<title>Spice</title>

  <p><app>SPICE</app> (Simple Protocol for Independent Computing Environments) est un système pour accéder à des bureaux distants et les contrôler à travers un réseau.</p>

  <p>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é.</p>

  <p><app>spice-gtk</app> est le client SPICE qui fournit l'affichage du système d'exploitation de l'invité.</p>

</section>
<section>

<title>VNC</title>

  <p><app>VNC</app> (Virtual Network Computing), utilisé seulement pour l'affichage distant, est un protocole bien connu, mais plutôt limité et lent.</p>

</section>
</page>
