Suivez-nous sur X
|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
En pratique : Présentation et configuration de Bochs
(Article écrit par Nicolas Gressard - février 2004)
|
|
Introduction
Bochs (prononcez "Box") est un émulateur de PC complet, à code source ouvert et multiplates-formes écrit en C++.
Il inclut l'émulation du processeur x86, des périphériques d'entrée/sortie courants ainsi qu'un BIOS maison.
Actuellement, il peut émuler un 386, 486 et Pentium. Les systèmes d'exploitations gérés sont DOS, Windows 95,
Windows NT4 et Linux. Presque toutes les plates-formes existantes disposent d'un portage de Bochs. Nous bénéficions
sous MorphOS de la version 2.02 (porté par Sigbjørn Skjæret), c'est-à-dire la dernière version stable jusqu'à il y a
peu puisqu'une version 2.1 stable vient de voir le jour il y a moins d'un mois sur le site officiel.
Présentation
Vous pouvez télécharger cette version sur le FTP Betatester-2 dans le répertoire "utils". L'archive est au
format tar.bz2, il vous faudra donc les outils adéquats pour la
décompacter. Le site officiel du projet est sur bochs.sourceforge.net/.
La grosse différence de Bochs par rapport à certains de
ses concurrents commerciaux comme VMWare réside dans le fait
qu'il émule entièrement chaque instruction du processeur
x86 et n'utilise pas les instructions du processeur existant
(contrairement à MacOnLinux par exemple). Ce type de
fonctionnement a donc deux conséquences directes :
- Bochs fonctionne sur les plates-formes dont le processeur n'est pas un x86.
- Bochs est beaucoup plus lent que les émulateurs qui n'émulent pas le processeur (lapalissade ?).
Dans la suite de cet article, nous allons voir pas à pas la
configuration de l'émulateur et l'installation du système
d'exploitation Windows 95.
Configuration de l'émulateur
Il existe des GUI (interfaces graphiques) pour la configuration et
l'utilisation de Bochs. Nous n'en utiliserons pas ici pour la simple et
bonne raison que cela nous éloignerait de la compréhension du
programme original, d'autant plus qu'il n'est absolument pas difficile
à utiliser. Rien ne vous empêche d'utiliser une GUI par la
suite...
L'installation de Bochs se résume au décompactage de
l'archive et à la copie de la police VGA dans le répertoire
système "Fonts" (fichier "vga.font" et répertoire "vga").
La première chose que nous allons faire est de créer un
disque virtuel sous forme de fichier qui servira à Bochs de
disque dur. Pour cela, il faut lancer, en ligne de commande,
l'utilitaire "bximage". La première question posée
concerne le type d'image que l'on souhaite créer : disquette ou
disque dur. Nous allons donc répondre "hd". Ensuite, nous devons
entrer la taille que devra faire le disque virtuel : 100 Mo suffiront
pour l'installation de Windows 95 mais vous pouvez mettre plus.
"bximage" affiche ensuite la géométrie du disque
virtuel ainsi créé. Il convient de la noter soigneusement
car il faudra par la suite en informer Bochs afin qu'il sache utiliser
le disque virtuel. Si vous avez créé un disque de 100 Mo,
la géométrie doit être : cyl : 203, heads : 16,
sectors : 63. La dernière question à laquelle nous ayons
à répondre est le nom de l'image. Entrez le nom que vous
voulez attribuer au fichier image : par exemple "c.img".
Toute la configuration de Bochs se trouve dans le fichier ".bochsrc".
C'est un fichier au format texte, entièrement commenté,
que vous pouvez ouvrir avec votre éditeur favori. Il est
également possible de configurer Bochs à partir d'une
arborescence de menus textuels accessibles lorsqu'on lance
l'émulateur, mais cette possibilité me semble moins
intuitive.
La plupart des périphériques et fonctionnalités
sont désactivés dans la configuration par défaut.
Voici donc le minimum de ce qu'il va falloir activer pour obtenir un PC
virtuel qui fonctionne :
- Décommenter la ligne (supprimer le "#") : floppya :
1_44="boot.img", status=inserted.
Cette ligne active l'émulation du lecteur de disquette en
utilisant "boot.img" comme image de disquette. Il n'est pas possible
sous MorphOS d'utiliser un vrai lecteur de disquette.
- Décommenter la ligne : ata0-master: type=disk, path="c.img",
cylinders=4161, heads=16, spt=63.
Cette ligne active l'émulation du disque dur en utilisant
"c.img" comme disque virtuel. Il faut la modifier de manière à
faire apparaître la bonne géométrie renvoyée
précédemment par la commande "bximage".
- Décommenter la ligne : ata0-slave: type=cdrom,
path="ide.device 1", status=inserted.
Cette ligne active le lecteur CD de votre Pegasos. Vous
aurez peut-être à ajuster le "ide.device 1" en fonction du
numéro de périphérique qu'occupe votre lecteur
CD sur les bus IDE (Lancez l'outil UnitControl de MorphOS pour savoir sur
quelle unité votre CD se trouve).
- Décommenter la ligne : boot: floppy.
Cette ligne permet de choisir le périphérique sur lequel
Bochs va démarrer. Dans un premier temps nous allons devoir démarrer sur la
disquette.
- Modifier la ligne "fullscreen: enabled=1" en "fullscreen: enabled=0".
Ceci permet de travailler en mode fenêtré. C'est plus
confortable, surtout lors de l'installation de Windows, car le mode
plein écran ne permet pas de gérer correctement le
changement intempestif de résolution et l'affichage du DOS ne
semble pas fonctionner correctement dans des résolutions
supérieures à 640x480.
Il est possible de jouer sur la vitesse d'affichage et
d'émulation avec les paramètres "vga_update_interval" et
"ips". Une émulation Sound Blaster existe dans Bochs, mais je ne pense
pas qu'elle soit gérée dans la version MorphOS.
Installation de Windows 95
Le CD de Windows 95 n'étant pas amorçable, la première
chose dont vous allez avoir besoin pour lancer l'installation est
l'image d'une disquette amorçable Windows 95. C'est en fait
essentiellement une disquette DOS contenant un pilote pour le lecteur CD
(ça vous rappelle l'installation d'AmigaOS 3.5 ou 3.9 ? ;)) Il
y a plusieurs solutions pour l'obtenir :
- Soudoyer un ami pour qu'il vous l'envoie par courriel, par exemple.
- Rechercher activement sur le Net...
- Aller voir votre PC favori et utiliser l'utilitaire "rawwrite" (par exemple) pour générer
l'image d'une disquette de démarrage Windows 95 bien réelle.
Une fois cette image de disquette obtenue, nommez-la "boot.img"
et placez-la dans le répertoire de Bochs. Mettez d'ores et
déjà le CD de Windows 95 dans le lecteur de CD, cela vous
évitera une longue attente ressemblant à un plantage lors
du lancement de Bochs. Lancer l'émulateur en tapant "Bochs" en
ligne de commande. Un menu se présente alors vous permettant
d'effectuer diverses actions. Choisissez "5 : Begin simulation". Si
toutes les étapes précédentes se sont bien
déroulées (et si je n'ai rien oublié), Bochs doit
démarrer sur la disquette Windows 95. Après quelques secondes,
vous retrouvez l'invite de commande "A:\>".
Il va maintenant falloir partitionner notre disque à l'aide de l'utilitaire DOS "fdisk".
Tapez donc "fdisk" puis sur Entrée.
- Un menu s'affiche dans lequel vous allez choisir "1 - Créer
une partition DOS ou un lecteur logique DOS" (le pavé
numérique ne fonctionne pas).
- Dans le menu suivant, choisissez "1 - Créer une partition DOS principale".
- A la question "Utiliser la taille maximale disponible ?", répondez O (oui).
Pour que les modifications soient prises en compte, il va maintenant
falloir redémarrer. Le plus simple pour cela est d'utiliser l'icône
de la barre d'outil de Bochs : "Reset". Comment ça vous n'avez
plus de souris ? Ah oui, c'est vrai il faut la débloquer,
parce que pour le moment elle est réservée à
Bochs, donc appuyez simultanément sur Left-Ctrl + Left-Shift + Left-MOS
(ou Amiga, ou Win). Il faut refaire la même manipulation pour
rendre la souris à Bochs. Une fois démarré à
nouveau, il reste à formater la partition créée.
Sous DOS, tapez "format c:". Cette opération ne devrait pas
prendre plus de deux secondes car nous sommes sur un disque virtuel. Si
votre disquette de démarrage contient bien un pilote de CD, vous devriez
à présent pourvoir y accéder. Tapez la commande
"d:", vous êtes sur le CD. Tapez ensuite "cd win95" pour entrer
dans le répertoire d'installation et enfin "install" pour lancer
l'installation.
A partir de cet instant-là, sur un Pegasos G3/600 il faut prévoir une bonne heure pour l'installation
complète de Windows 95. Suivez simplement les indications à l'écran, et ne vous inquiétez pas trop vite si
l'installation semble figée à certains moments.
Une fois l'installation terminée Windows va vous inviter à redémarrer. A ce moment-là, éteignez Bochs (avec la
barre d'outils par exemple : "Power"). Il faut maintenant modifier le fichier de configuration ".bochsrc" afin
de lui dire de désormais démarrer sur le disque dur. Pour cela, recommentez la ligne "boot: floppy"
(ajoutez un "#" devant) et décommentez la ligne "boot: disk". Relancez Bochs et admirez le travail. :)
La barre d'icônes de Bochs
Voici les icônes que vous retrouverez en haut de la fenêtre de Bochs. Les deux icônes représentant une disquette
permettent de savoir si les lecteurs "A" et "B" sont activés et si une image disque y est associée. La troisième
icône représentant un CD permet de savoir si le lecteur de CD est activé et si un CD y est présent. La
quatrième icône permet de connaître l'état de "capture" de la souris. Lorsque la souris n'est plus attribuée
à Bochs (Left-Ctrl + Left-Shift + Left-MOS), vous pouvez également la lui réattribuer en cliquant sur cette
icône.
Les icônes "copy" et "paste" sont visiblement sans effet dans la version MorphOS de Bochs. Elles sont censées permettre l'interaction
entre le presse papier du système émulé et celui du système hôte. L'icône "snapshot" permet de faire
une capture du texte de l'écran lorsque l'émulateur se trouve dans un mode texte (DOS par exemple) dans un fichier
nommé "snapshot.txt". L'icône "config" gèle l'émulation et affiche un menu sur la ligne de commande
permettant d'intervenir sur les périphériques un peu à la manière de UAE. Il vous est alors possible par
exemple de changer l'image disque d'un lecteur de disquette et encore de modifier la valeur de rafraîchissement de l'affichage.
Une des options du menu permet de revenir à l'émulation. L'icône "reset" porte bien son nom ;), et l'icône "power"
permet d'éteindre le PC virtuel.
Conclusion
Bochs, bien qu'assez lent, s'est montré extrêmement
stable au cours de ce test et aucun plantage n'a été
à déplorer. Ce genre d'émulateur peut être
très utile, non pas pour travailler car trop lent, mais pour
nous mettre à disposition un processeur x86 dans le cadre de
tests voire de portage d'applications. Il reste très
utilisable sous DOS ou sous Linux en ligne de commande sur un Pegasos
G3/600. Sur un Pegasos II G4/1 GHz, il devrait être à peu
près deux fois plus rapide et je vais m'empresser de
réquisitionner celui de Mahendra Tallur pour faire l'essai ;) (à
moins que le mien ne me soit livré un jour !?).
Soutenez le travail d'Obligement
|
|
|