SimpleOS

SOSFaq

Navigation



  • Rechercher :

Site hébergé par : enix

Table des matières



Foire aux questions


A l'aide des messages envoyés sur la mailing-list, nous mettons à jour cette page de Foire Aux Questions.

Je suis sous Windows et j'aimerais compiler et utiliser SOS


SOS est conçu sous Linux. Cependant, il est possible de le compiler et de l'utiliser sous Windows, mais pas avec les outils Cygwin de base par exemple. En effet, Cygwin (et les compilateurs sous Windows) génèrent des fichiers objets et des exécutables au format PE (une variante de COFF). Or SOS ne supporte que le format ELF32, que ce soit au niveau des outils de compilation, qu'au niveau du format des programmes utilisateur chargés par le noyau SOS.

Sous Windows, on a le choix pour remédier à cela :

Ensuite, pour essayer SOS, on fera comme sous Linux. Soit on le testera sur machine réelle à l'aide d'une disquette, soit on utilisera un émulateur (qemu, bochs, vmware, ...).

Et sur autre chose que Linux/x86 ?...


SOS est développé en partie sur une machine Linux/x86, en partie via cross-compilation depuis Linux/x86_64 et Linux/ppc. Donc la compilation de SOS, c'est sûr, supporte très bien la (cross-)compilation depuis un Unix quelconque. Par exemple, l'environnement Cygwin permet la compilation de SOS puisqu'il cosntitue une couche Unix au-dessus de Windows. Sous Mac OS X, cela devrait poser encore moins de problème (pas testé à notre connaissance).

Sous un Unix quelconque (par exemple Linux/x86_64), on utilisera donc un cross-compilateur gcc vers ELF32/x86. Pour en fabriquer un, les indications pour Cygwin ci-dessus (1er item) conviennent parfaitement.

Quelques pistes pour debugger SOS



Configuration de bochs


Dans l'article 1, il est dit comment compiler bochs pour travailler avec sos dans de bonnes conditions. Voici une version réactualisée de ces indications :
./configure --prefix=/usr/local/stow/bochs-cvs --enable-plugins --enable-ne2000 --enable-pci \
  --enable-port-e9-hack --enable-all-optimizations --enable-readline \
  --enable-debugger --enable-disasm --with-x --disable-config-interface


Sortie de debuggage (port 0xe9) pour qemu


Par défaut, qemu ne permet pas d'afficher des infos de debuggage très simplement comme bochs. Les patches pour réaliser ceci sont disponibles sur cette page.