<div class='slidealt'>Projets de recherche de virtualisation <a title='kvm en logiciel libre pour ARM multicoeur' href='/fr/innovation/'>pour les systèmes embarqués et le cloud</a></div> <div class='slidealt'>Solutions de virtualisation pour systèmes <a title='solutions en logiciels libres de virtualisation pour ARMv7-ARMv8' href='/fr/solutions/'>hétérogènes multicoeur ARM</a></div> <div class='slidealt'>Faites appelle à des <a title='services de full virtualisation pour kvm sur coeur ARM' href='/fr/services/'>services de virtualisation sur mesure</a></div> <div class='slidealt'>Expérimentez des extensions de <a title='virtualisation pour plateformes hétérogènes à base de processeurs ARM' href='/fr/produits/'>virtualisation KVM</a></div> <div class='slidealt'>Virtualisation KVM des E/S's pour coeurs ARMv7, ARMv8 <a title='extensions de virtualisation de plateforme VFIO des E/S par kvm sur arm en logiciel libre' href='/fr/solutions/guides/vfio-sur-arm/'>par extensions VFIO/IOMMU</a></div>

Virtualisation KVM sur un PC ARM Chromebook

Un guide sur l'utilisation de KVM pour la virtualisation du PC Chromebook ARM Exynos5250

Ce guide détaillé est mis à disposition par Virtual Open Systems pour déployer l'hyperviseur KVM et expérimenter la virtualisation complète de KVM sur un vrai ordinateur portable, à base des processeurs multi-coeurs ARM Cortex-A15. Ce guide présente la façon d'activer KVM sur le Chromebook ARM de Samsung, permettant ainsi l'utilisation des systèmes d'exploitation les plus connus et ouverts (ChromeOS, Ubuntu, Android).

Introduction à la virtualisation KVM du Chromebook

Jusqu'au milieu de l'année 2012, la plus part des travaux sur le portage de la virtualisation Linux KVM sur l'architecture ARM a été développée grâce aux Fast Models. En raison d'un manque de matériel Cortex-A15, les Fast Models se sont révélés être des outils essentiels pour lancer le développement d'un projet. Bien qu'ils fournissent une alternative directe et facile à utiliser, les Fast models présentent quelques insuffisances en ce qui concerne les performances en fonction de la charge de travail.

Dans une étape ultérieure, la plateforme Versatile Express d'ARM a été ajoutée comme matérielle cible. Alors que précédemment elle a été un outil précieux, sa faible disponibilité, mais surtout son coût prohibitif, la rendent irréaliste pour un usage massif.

Actuellement, les Cortex-A15/A7 sont suffisamment matures, et plusieurs entreprises ont mis en oeuvre leurs propres platesformes/solutions basées sur ARMv7 avec les extensions de la virtualisation. Samsung a sorti la plate-forme Exynos5250 qui intègre un double coeur Cortex-A15 à 1,7 GHz et un GPU Mali-T604 sur un circuit intégré de 32nm. La version suivante du Exynos met la barre plus haute, en utilisant une architecture big.LITTLE avec un quad-core Cortex-A15 à 1.8 GHz et un quad-core Cortex-A7 à 1,2 GHz.

Exynos5250 est déjà présent dans le Chromebook ARM de Samsung, le Nexus 10 de Google et sur une carte de développement d'Insignal, le Arndale. Dans ce guide, nous allons décrire en détail, comment mettre en place un système complet de virtualisation sur l'ARM Chromebook, couvrant des sujets de bas niveau, comme la façon de compiler un bootloader compatible avec KVM, jusqu'à la création des binaires de l'espace utilisateur d'Ubuntu et l'utilisation des invités dans une telle configuration.

Composants Requis

Les composants de base nécessaires pour ce guide sont:

bullet Ordinateur portable ARM Chromebook de Samsung

bullet Disque flash USB, SD ou microSD (avec adaptateur) carte (4 Go ou plus recommandé)

bullet Ordinateur personnel avec Ubuntu 13.04 ou distribution similaire

/static/vosapp/images/guides/kvm_on_chromebook/images/chromebook.jpg

Le Chromebook ARM

La Préparation de Chromebook

Attention!

Virtual Open Systems se décharge de toute responsabilité en cas de dommages sur votre appareil en suivant les instructions ci-dessous. Bien que les contenus de ce guide ont été vérifiés soigneusement, Virtual Open Systems ne peut garantir qu'une erreur possible d'utilisateur ne puisse endommager votre Chromebook.

En activant Le Mode Développeur toutes vos données personnelles et les paramètres de l'appareil seront perdus, essentiellement en paramétrant l'installation de Chrome OS aux paramètres d'usine. Cet effet ne peut malheureusement pas être évité, compte tenu du fait qu'il s'applique à chaque fois que vous changez de mode.

Pour des raisons de sécurité, le Chromebook de Samsung est livré avec un BIOS vérifié qui interdit l'exécution des binaires non-vérifiés sur le système. Pour ce guide, nous allons démarrer notre propre noyau et l'espace utilisateur, nous devons donc désactiver ces fonctionnalités. Pour ce faire, nous aurons besoin d'invoquer Le Mode de Récupération et activer Le Mode Développeur.

Pour activer le mode développeur:

bullet Avec le portable éteint, maintenez les touches d'échappe et rafraîchir, puis appuyez sur la touche d'alimentation.

bullet L'appareil est maintenant en Mode de Récupération, appuyez sur Ctrl-D activera Le Mode Développeur.

bullet Confirmez l'opération en appuyant sur Entrée.

bullet Au prochain démarrage de l'ordinateur, appuyez sur Ctrl-D encore une fois dans l'écran de vérification OS verification is OFF.

bullet Ensuite, l'ordinateur portable va commencer à se préparer pour Le Mode Développeur. Chaque fois que vous allumez l'appareil, appuyez sur Ctrl-D pour démarrer l'installation par défaut de Chrome OS.

Démarrage à partir de USB ou SD

Par défaut, même en Mode Développeur, le démarrage à partir d'un support externe est désactivé. Nous devrons tout d'abord démarrer en Chrome OS pour activer le démarrage par USB ou carte SD / microSD.

Depuis l'état éteint:

bullet Appuyez sur la touche d'alimentation, puis Ctrl-D dans l'écran de vérification OS verification is OFF.

bullet Lorsque le système est en écran de connexion, appuyez sur Ctrl-Alt + ->, qui est Contrôle + Alt + flèche Droit (la touche Droit est située juste à côté de la touche de rafraîchissement).

bullet Dans le terminal de la console, connectez le avec le compte root (aucun mot de passe ne doit être demandé)

bullet Tapez crossystem dev_boot_usb = 1

Maintenant, chaque fois que nous redémarrons, nous pouvons démarrer à partir d'une source externe (USB ou SD), en appuyant sur Ctrl-U.

Création d'un système démarrable

Afin de créer un système de démarrage de base sur l'ordinateur portable Chromebook, nous avons besoin de:

bullet Compilateur croisé et les paquets nécessaires

bullet Noyau Linux hôte

bullet Bootloader

bullet Système de fichiers

Compilateur croisé et les paquets nécessaires

Pour compléter les étapes suivantes, il sera indispensable d'installer un compilateur croisé, et quelques paquets nécessaires sur la distribution de notre poste de travail (Ubuntu 13.04):

$ sudo apt-get install build-essential git u-boot-tools qemu-user-static gdisk cgpt \
                       libncurses5-dev flex bison vboot-kernel-utils debootstrap

et pour le compilateur croisé:

$ sudo apt-get install gcc-arm-linux-gnueabihf

Identifiant ou inscription pour visualiser l'information complète