Maintenant que nous avons mis en place l'environnement nécessaire, nous allons enfin pouvoir démarrer QEmu, et profiter de notre « PC dans le PC ».
Mais, au point où nous sommes arrivés, nous n'avons encore qu'un PC vierge, sans système d'exploitation (SE). Tout le matériel est installé, mais de logiciel, point encore...
Deux options s'offrent à nous :
Télécharger une image disque déjà préparée. Plusieurs sites proposent des images disques pour QEmu. Il faut noter, cependant, que seuls les SE libres peuvent être téléchargés de la sorte. Les SE commerciaux (Windows, MacOS, etc...) sont soumis à licence et ne peuvent être mis à disposition gratuitement.
Installer soi-même un SE, comme on le ferait sur un PC réel. Il faut, dans ce cas, outre les CD d'installation, posséder également la licence du logiciel, cela va de soi.
Nous allons bientôt lancer notre première machine virtuelle, mais avant, il faut encore éliminer une dernière source potentielle d'ennuis.
Les processeurs à coeurs multiples (Pentium HT, Pentium D, AMD X2) rendent QEmu instable et provoquent soient le blocage complet du système hôte, soit son redémarrage pur et simple.
La
parade consiste à forcer l'exécution de qemu.exe sur un
seul coeur. Ceci peut être fait de deux manières.
Le choix de l'affinité d'un processus peut être fait avec le Gestionnaire de tâches de Windows, en cliquant avec le bouton droit de la souris sur la ligne du processus qemu.exe (onglet Processus), puis en prenant l'option Définir l'affinité. Il suffit alors de ne cocher qu'un seul processeur.
Si QEmu plante avant que ne puissiez faire cette manipulation, utilisez l'option -S de la ligne de commande (Chapitre Autres options de la ligne de commande, paragraphe 5.2.6, page 28).
Remarque : Cette opération doit être répétée à chaque lancement de QEmu.
L'utilitaire imagecfg permet d'inscrire l'affinité directement dans le fichier qemu.exe. Cette opération devra être faite après chaque nouvelle compilation. Cet outil Microsoft peut-être trouvé sur le CD de Windows NT 4.0. Mais une petite recherche avec Google vous permettra de le télécharger très rapidement aussi. Voyez la section Utilitaires divers pour le mode d'emploi (paragraphe 6, page 33).
Remarque : depuis la version 0.8.2 CVS 14-07-2005, l'affinité est définie automatiquement pour un seul processeur lors de la compilation.
Un site très proche de QEmu propose bon nombre d'images de différents SE libres. Il s'agit du Free OS Zoo (http://www.oszoo.org/wiki/index.php/Main_Page). Pour vous rendre directement à la page de téléchargement des images : http://www.oszoo.org/wiki/index.php/Category:OS_images. Encore une fois, ce site ne propose que des SE libres.
Mais en cherchant sur le Web, vous pourrez probablement trouver d'autres sites proposant des images pour QEmu.
Une fois l'image téléchargée, il suffit de la placer dans le répertoire IMAGES créé précédemment et de taper ensuite la ligne de commande :
C:\QEMU>qemu -hda IMAGES\<NomDeLImage> -m 192 -localtime -L BIOS
Cette ligne de commande (minimaliste, il y a beaucoup d'autres options) va démarrer une machine virtuelle avec comme premier disque dur l'image <NomDeLImage> et pourvue de 192 Mo de RAM. Le paramètre -localtime permet simplement de caler l'horloge de la machine virtuelle sur celle de la machine hôte. Le paramètre -L indique à QEmu dans quel dossier il doit chercher le BIOS.
Voici, par exemple, le démarrage QEmu sous MS-DOS 6.22.
Illustration
3: Démarrage de la machine virtuelle
Pour terminer la machine virtuelle (éteindre le PC virtuel, en quelque sorte) :
Si le SE sait arrêter automatiquement le PC, quittez simplement le SE. La fenêtre QEmu disparaîtra d'elle-même.
Sinon, fermez la fenêtre QEmu avec la croix rouge.
Cette procédure s'apparente en tous points à l'installation d'un SE sur un PC réel. Il vous faut :
les disquettes et/ou CD d'installation. A défaut des supports physiques, des images ISO feront parfaitement l'affaire ;
les clés de licences, si nécessaire ;
le mode d'emploi de l'installation du SE (si vous ne savez pas par où commencer, ce n'est pas QEmu qui vous l'apprendra). Il faut savoir sur quel support le PC doit démarrer pour lancer l'installation (disquette ou CD)
du temps et de la patience : installer un SE dans un émulateur est souvent plus long que sur un matériel réel. QEmu n'est pas encore totalement stable, et la phase d'installation est généralement plus délicate que la phase d'utilisation (la détection du matériel par les programmes d'installation est souvent agressive, et peut générer des problèmes). Il est parfois nécessaire de désactiver le module accélérateur pendant l'installation.
Quoi qu'il en soit, la liste des SE s'installant et tournant correctement dans QEmu est déjà très impressionnante (voyez sur Free OS Zoo).
Nous allons faire une installation à partir des supports réels, nous évitant ainsi l'étape de création d'images ISO à partir de ces supports (ce qui peut être assez long pour un DVD).
Insérez maintenant les supports nécessaires à l'installation dans les lecteurs appropriés.
La ligne de commande de QEmu va dépendre du support de démarrage. Prenons l'exemple pour un CD bootable :
C:\QEMU>qemu -hda IMAGES\<NomDeLImage> -m 192 -localtime -L BIOS -cdrom \\.\D: -boot d
<NomDeLImage> est une image de disque dur vierge, créée avec qemu-img.
-m 192 permet d'ajuster la quantité de mémoire vive (RAM) installée dans la machine virtuelle. A adapter en fonction des besoins du SE cible.
-cdrom \\.\D: indique à QEmu de prendre le lecteur hôte D: comme lecteur de CD. Si le lecteur de CD hôte porte un autre nom, modifiez en conséquence.
-boot d fait démarrer le PC virtuel sur le lecteur de CD. Pour démarrer sur la disquette, spécifiez -boot a et ajoutez -fda \\.\A:.
Remarque : en général, à la fin de l'installation, le PC doit redémarrer. Ici, QEmu posera un petit problème dans la mesure où il ne permet pas de changer de périphérique de démarrage. Le -boot indiqué lors du lancement pour l'installation ne peut être changé sans arrêter QEmu.
Windows 2000 et XP s'en tireront correctement car ils affichent le message : Appuyez sur n'importe quelle touche pour démarrer à partir du CD. Il suffit d'attendre quelques secondes pour que QEmu continue à partir du disque dur. Pour les autres SE, il faudra tuer QEmu, puis le relancer sans l'option -boot, sinon il vont redémarrer à partir du CD et relancer leur procédure d'installation.
Le plus simple est alors de retirer le CD du lecteur de l'hôte lorsque le message demandant le redémarrage est affiché, puis de laisser redémarrer la machine virtuelle. QEmu se plaindra alors de ne pas pouvoir démarrer à partir du CD. Il suffit de le tuer à ce moment là.
Entrez à nouveau la ligne de commande, sans les options de CD ni de boot :
C:\QEMU>qemu -hda IMAGES\<NomDeLImage> -m 192 -localtime -L BIOS
C'est cette même ligne de commande qui permettra par la suite de démarrer la machine virtuelle lorsque vous voudrez l'utiliser.
Si le SE cible demande une combinaison de touches du style Ctrl-Alt-Suppr pour ouvrir une session, passez en mode moniteur (Ctrl-Alt-2 - voir le chapitre Installer des applications dans le SE – paragraphe 4.3, page 16 - pour une présentation rapide du mode moniteur), puis tapez :
QEMU 0.8.1 monitor – type 'help' for
more information
(qemu) sendkey
ctrl-alt-delete
Tapez Ctrl-Alt-1 pour revenir à l'écran principal.
Au niveau de sa ligne de commandes, QEmu identifie les périphériques virtuels à la manière de Linux : fda, fdb pour les lecteurs de disquettes (floppy disk) ; hda, hdb, hdc, hdd pour les lecteurs de disques durs (hard disk).
Le lecteur de CD est le périphérique maître sur le second contrôleur IDE. Il prend la place de hdc. Les paramètres -hdc et -cdrom s'excluent donc mutuellement.
Attention : si vous ajoutez l'option -cdrom \\.\X: à la ligne de commande, mais que le lecteur hôte ne contient pas de support, QEmu refusera de démarrer. Même si vous ne précisez pas cette option, le lecteur de CD sera disponible sur la machine virtuelle (sauf si vous avez utilisé -hdc). Voyez plus loin les commandes du moniteur (paragraphe 5.3, page 29) pour savoir comment insérer ou changer un CD dans le lecteur de la machine virtuelle.
Utilisez autant que possible le module accélérateur (Kqemu). Il est toutefois possible que les SE 16 bits (MS-DOS, Windows 9x) soient moins rapides lorsque Kqemu est activé. Dans ce cas, ou si celui-ci provoque des erreurs, ajoutez le paramètre -no-kqemu à la ligne de commande de QEmu avant de le relancer. L'accélérateur sera désactivé, mais l'émulation sera moins rapide.
Remarque : Depuis la version 1.3.0pre9 de Kqemu, l'option -kernel-kqemu est utilisable sur un hôte Windows XP, pour la plupart des systèmes cibles (DOS, Windows 2000, Linux (Ubuntu, Mandriva) démarrent. Windows 9x plante). Utilisez la si possible, car elle améliore encore les performances de l'émulateur.
Pour que les mouvements de la souris soient transmis au SE cible, il faut d'abord cliquer dans la fenêtre de QEmu. A partir de ce moment, la souris reste prisonnière de la fenêtre QEmu. Si le SE cible ne reconnaît pas la souris, vous aurez l'impression que celle-ci a disparu. Pour la libérer, il faut appuyer simultanément sur les touches Ctrl et Alt du clavier (c'est indiqué dans la barre de titre de QEmu).
Une option très intéressante, si le SE cible possède le pilote adéquat (sinon, il faudra en installer un), est -usbdevice tablet. Cette option ajoute une tablette USB à la machine virtuelle QEmu, ce qui, en soi, ne présente pas forcément un intérêt majeur, mais permet surtout à la souris de ne plus être bloquée à la frontière de la fenêtre QEmu. Ctrl-Alt n'est plus nécessaire.
Certains SE un peu anciens (MS-DOS, Windows 9x, etc...) souffrent d'un petit défaut de conception qui se traduit par une utilisation intense du processeur hôte, même lorsque le SE cible ne fait rien. Ce problème n'est pas dû à l'émulateur, mais est inhérent au système d'exploitation cible lui-même (lorsque ce SE tourne sur une machine réelle, il provoque les mêmes effets). Si vous démarrez le Gestionnaire de tâches de Windows (Ctrl-Maj-Echap), vous verrez alors que le processeur est occupé à 100%, la plus grande partie étant consommée par QEmu lui-même.
Sous MS-DOS (ou équivalent), il est maintenant possible d'installer le pilote POWER.EXE. Si celui-ci provoque le blocage de la machine virtuelle, essayez d'installer DOSIDLE (http://www.vmware.com/software/dosidle210.zip)
Sous Windows 9x, un utilitaire équivalent peut-être trouvé ici : http://www.user.cityline.ru/~maxamm/amnhltm.zip.
Windows NT et ses suivants, Linux et la plupart des autres SE récents n'ont pas ce défaut.
Lorsqu'on expérimente beaucoup avec QEmu, il devient vite pénible de taper et retaper des lignes de commandes. QEmu ne possède pas pour le moment d'interface graphique intégrée, mais il existe plusieurs utilitaires permettant de mémoriser tous les paramètres nécessaires à une machine virtuelle, pour la démarrer ensuite en quelques clics.
Dans l'absolu, ces outils ne font que créer une ligne de commande à partir des informations choisies par l'utilisateur.
JQEMU : http://www.exprofesso.com/jqemu/, une interface en Java.
QGUI : http://perso.wanadoo.es/comike/, ne fonctionne plus avec les dernières versions de QEmu, car la ligne de commande a changé.