Alors que faire tourner Windows XP dans une machine virtuelle se déroule sans trop de soucis, il n'en va pas de même pour Windows 98, car VirtualBox a un peu du mal avec ce dinosaure. Heureusement, quelques utilitaires trouvés sur le web et un peu de configuration améliorent grandement l'expérience d'émulation…
Il n'existe pas d'Additions invité VirtualBox qui prennent en compte ce bon vieux OS du siècle dernier, pour la simple et bonne raison que ce système n'est pas officiellement supporté par l'application d'Oracle. (Si vous souhaiter toutefois pouvoir faire du copier/coller entre hôte et invité ou bien encore faire du partage de dossier comme normalement le permettent les Additions invité, veuillez consulter la deuxième partie de l'article).
Le principale problème causé par cet absence de prise en compte, c'est que par défaut la machine tournera en 640×480 ! Et en mode 16 couleurs (4 bits), ce qui a pour effet de ralentir l'émulation. Il faut donc arriver à faire tourner le bousin en 32 bits (True Color). Pour cela, il existe un logiciel commercial appelé Scitech Display Doctor (ne vous inquiétez pas je vous fourni ce vieux bidule accompagné de son numéro de licence plus bas dans un fichier Iso à télécharger).
Une fois installé, il faut trouver la fenêtre qui permet d'activer le driver :
Une fois un reboot effectué, il faut encore choisir le mode SVGA qui vous conviendra le mieux :
J'ai réussi à faire tourner la résolution max. (1600 x 1200), mais ce n'est pas forcément la panacée d'avoir des ascenseurs sur les côtés donc j'ai opté pour une résolution bien plus faible de 1152 x 864 (d'après certains forums on peut même régler les fichiers de config pour avoir la résolution personnalisée qui nous plaît). Encore un reboot, et voilà, ça y est !
PS : Si toutefois Scitech Display Doctor ne vous convenait pas, il existe aussi le Bearwindows Driver, considéré comme plus instable (je vous le fournit aussi plus bas dans le fichier Iso).
Mais la phase d'optimisation n'est pas encore terminée, il faut régler un problème de gestion du CPU cette fois-ci. Effectivement, Win9x utilise une boucle au lieu des instructions HLT : celle-ci oblige le CPU hôte à tourner 100% du temps. Ce problème ne concerne que les systèmes basés sur DOS : Win (3.x, 95/98/ME), contrairement à ceux basés sur NT.
Et là par contre, c'est un logiciel parfaitement gratuit du nom de Rain qui pourra vous y aider. Waterfall ou Cpuidle peuvent également faire l'affaire mais proposent plus d'options, inutiles pour notre problématique. En tout cas ces softs permettent de faire fonctionner notre bousin en mode d'exécution HLT. Et sans reboot. Voilà, encore un peu de vélocité grappillée ! (penser à mettre l'appli dans la section Démarrage du menu démarrer)
J'ai donc réuni l'ensemble des outils évoqués, plus encore quelques fondamentaux comme UnZipMe et le Direct X le plus plus récent pouvant tourner sous Win98 (utile pour le retro-gaming), dans un fichier ISO d'un peu plus de 67 Mo. Cette entourloupe vous permettra de rapidement accéder à son contenu en le montant dans la machine virtuelle (pour cela cliquer sur Périphériques dans le menu supérieur de la fenêtre qui contient la machine en fonctionnement, ensuite Lecteur CD / DVD et enfin sur Choisissez un fichier de CD ou de DVD virtuel).
Premièrement, il faut savoir que Windows 98 s'installait via une disquette de boot jusqu'à la version SE. Donc pour éviter de se prendre la grappe avec ça, essayer de trouver une image ISO bootable de Windows 98 SE. Ensuite, il est déconseillé d'allouer plus de 512 Go de RAM pour un ancien système comme celui-là. Quand à la mémoire vidéo, il est déconseillé de descendre en dessous de 28 Mo.
Au niveau ACPI (fonction permettant d'économiser la batterie des portables), le problème du BIOS émulé par VirtualBox est-qu'il ne propose pas ce que Win98 attend d'un vrai BIOS ACPI, donc par défaut Win98 n'installera pas le support de l'ACPI. La solution est de forcer sa prise en compte avec les paramètres /p j sur l'installateur de Win98 en ligne de commande (setup.exe). Dans ce cas impossible biensur d'utliser l'autorun du CD-Rom (pour ma part j'ai copié le contenu du répertoire d'installation dans mon disque dur avant de lancer cette commande, mais peut-être que depuis le CD cela aurait pu marcher aussi)…
En plus de l'avantage d'économiser de l'énergie et d'éteindre automatiquement le PC quand on a fermé Windows, l'ACPI propose surtout une gestion plus intelligente du CPU, du coup votre machine virtuelle ne consommera plus autant de ressources inutilement, comme les machines virtuelles Windows XP ou Linux. Le seul inconvénient est qu'il faut ré-installer Windows si vous n'aviez pas forcé l'ACPI lors de la première installation (mais les logiciels et préférences sont conservés lors d'une ré-installation).
Pour finir, puisque les Additions invité ne sont pas disponibles, pourquoi ne pas les remplacer par des applications qui donneront (à peu près) le même résultat ?
- Partage de dossier
Pour rappel cette fonction bien sympathique dans les Additions permet au système invité d'accéder à un répertoire de la machine hôte, en lecture et aussi en écriture.
Pour contourner l'absence de cette fonctionnalité, il est recommandé de recourir à la solution du SMB/Windows File Sharing pour les hôtes sous Windows, bien que l'émulation réseau ne soit pas des plus stables. Par contre pour les hôtes sous Unix, WinSCP est préférable.
Sinon, vous pouvez toujours créer une image de CDROM *.iso dans le système hôte puis l'insérer dans le système invité comme relaté un peu plus haut dans l'article.
- Copier/coller
Cette fonction permet normalement de pouvoir copier/coller depuis le système hôte vers le système invité et vice et versa . Il existe une technologie palliative : le Clipboard over TCP/IP, proposé par un logiciel comme CrossClip.
Télécharger le CD Win98 Guest Utilities & Tools [Iso]