Ce paquetage permet de lancer des programmes MSDOS sous Linux. Une machine virtuelle (la boîte DOS) met à disposition les fonctions de BIOS nécessaires à DOS et émule la plupart des circuits intégrés, (par exemple timer, interruption et contrôleur clavier).
Les sources se trouvent dans la série ZQ.
Vous trouverez la documentation sous /usr/doc/packages/dosemu, dans la page de manuel ainsi que dans les sources.
Si vous souhaitez autoriser des utilisateurs autres que root à se servir de l'émulateur, vous devez inscrire les noms de ces utilisateurs dans le fichier /etc/dosemu.users. Il convient toutefois de noter que certains programmes DOS ne fonctionnent que si DOSEMU est démarré sous le compte root. Veillez aussi à n'autoriser que des 'utilisateurs de confiance' car l'émulateur DOS donne des possibilités d'accès normalement refusées à des utilisateurs courants. DOSEMU peut toutefois fonctionner aussi en mode 'non-suid-root' avec une fonctionnalité restreinte et il est alors aussi inoffensif que n'importe quelle autre application Linux.
Le paramètre $_hogthreshold dans le fichier /etc/dosemu.conf indique combien de fois DOSEMU, en période d'inactivité, doit restituer le CPU à Linux. La configuration par défaut est '(1)' qui est la valeur CPU la plus basse. Plus la valeur est élevée, plus il sera attribué de ressources CPU à DOSEMU. '(0)' désactive complètement cette fonction, ce qui signifie: totalité des ressources pour DOSEMU. Si ce n'est pas encore suffisant, vous pouvez (du moins sous UID root) obtenir une performance maximale avec
nice -19 dos -D-a 2>/dev/null
Mais ne vous étonnez pas si les autres processus Linux tournent très lentement.
Avec des systèmes sensibles, vous ne devriez _jamais_ utiliser suid-root pour DOSEMU car même en positionnant l'option '$_secure' dans le fichier /etc/dosemu.conf, il n'est pas possible d'exclure que des clients DPMI (principalement ceux basés sur Dos4gw) parvenus à accéder à l'ensemble de l'espace utilisateur (y compris au code Dosemu) obtiennent éventuellement des droits root. Une solution élégante à ce problème consiste à prévoir deux copies du binaire DOSEMU. L'une de ces copies sera librement utilisable (non-suid-root). L'autre copie (suid-root) ne sera disponible que pour des utilisateurs de confiance et sera protégée par des droits de fichiers.
Pour pouvoir mettre en oeuvre DOSEMU, il vous faut une hdimage amorçable. Lisez le fichier QuickStart, passez dans le répertoire /var/lib/dosemu et démarrez ./setup-hdimage. Sous X vous pouvez ensuite (sans changer de répertoire) utiliser, avec ./setup-dosemu, un outil basé sur Tcl/Tk pour configurer les paramètres déterminant le temps d'exécution (option du menu 'Runtime configuration'); ./setup-dosemu vous propose aussi une aide en ligne en anglais. ATTENTION utilisateurs chevronnés de DOSEMU: la configuration a été fondamentalement modifiée à partir de la version 0.97.x. Lisez la documentation (/usr/doc/packages/dosemu/*) même si vous pensez ne pas en avoir besoin. Vous pouvez cependant (ceci doit être explicitement configuré) continuer à utiliser vos anciens fichiers de configuration. Vous verrez dans QuickStart ce que vous devez faire pour cela.