Pirater le passé : comment FreeDOS survit sur les machines modernes
Une nouvelle génération de hackers ressuscite le DOS classique sur les ordinateurs portables récents équipés uniquement d’UEFI - voici comment ils s’y prennent.
Imaginez ceci : un ordinateur portable moderne, tout en aluminium et en verre, faisant tourner un système d’exploitation 16 bits issu de l’aube de l’informatique personnelle. Non, ce n’est pas un rêve rétro - c’est le dernier rebondissement dans la saga continue de FreeDOS, le descendant open source de MS-DOS. Mais alors que notre monde numérique avance à toute vitesse, faire vivre de vieux logiciels sur du matériel récent n’est pas une mince affaire. Que faut-il pour faire tourner FreeDOS sur une machine qui n’a jamais entendu parler du BIOS ?
L’été dernier, la série Daily Drivers a mis FreeDOS à l’épreuve sur un netbook vieux de dix ans. Le verdict ? FreeDOS était rapide, riche en fonctionnalités et étonnamment utilisable - sauf pour un défaut flagrant : aucun pilote réseau pour la carte de 2010. C’est là qu’intervient [Inkbox], un bidouilleur déterminé qui a refusé de laisser l’absence d’un pilote barrer la route au pur bonheur DOS.
Mais le défi allait bien au-delà d’un simple pilote. Les ordinateurs portables actuels ne prennent même plus en charge le BIOS à l’ancienne attendu par DOS ; ils utilisent à la place l’UEFI, une interface firmware moderne qui laisse les logiciels 16 bits comme FreeDOS sur le carreau. Les premières tentatives d’émulation UEFI-vers-BIOS ont échoué, menant à une solution créative : démarrer un environnement Linux minimal, juste assez robuste pour lancer QEMU, un puissant émulateur de système.
QEMU fait office de passerelle, simulant un environnement BIOS x86 classique dans lequel FreeDOS se sent chez lui. Les anciennes cartes réseau, le son et la vidéo peuvent tous être émulés, contournant ainsi les incompatibilités matérielles qui rendent les installations directes difficiles. Ce n’est pas tout à fait l’expérience « bare metal » recherchée par les puristes, mais c’est bien plus proche que de faire tourner un émulateur de bureau complet.
Pourquoi se donner tant de mal ? Pour certains, c’est la nostalgie - revivre les jours des lignes de commande et des jeux en mode texte. Pour d’autres, il s’agit de préservation : s’assurer que les logiciels et les compétences de l’ère DOS ne se perdent pas dans le temps ou l’oubli des entreprises. Et pour les hackers et développeurs, FreeDOS reste un terrain de jeu pour la programmation bas niveau, comme l’a démontré [Inkbox] en créant un clone de TRON en assembleur dans cet environnement rétro.
Alors que le paysage matériel continue d’évoluer, l’ingéniosité de la communauté rétro-informatique maintient ces fossiles numériques en vie. Grâce à des astuces ingénieuses et un peu de colle Linux, FreeDOS prouve que même dans un monde UEFI, il reste de la place pour un brin de rébellion à l’ancienne.
Conclusion
La survie de FreeDOS sur les plateformes modernes n’est pas seulement un exploit technique - c’est un témoignage de la persévérance et de la créativité de la communauté open source. Tant qu’il y aura des hackers prêts à bidouiller, l’esprit du DOS continuera de vivre, un émulateur à la fois.
WIKICROOK
- FreeDOS : FreeDOS est un système d’exploitation open source compatible MS-DOS, utilisé pour faire tourner des logiciels anciens, la récupération système et des tâches de cybersécurité.
- UEFI : L’UEFI est un firmware moderne qui gère le processus de démarrage de votre ordinateur et charge le système d’exploitation, remplaçant l’ancien BIOS.
- BIOS : Le BIOS est un logiciel intégré qui démarre votre ordinateur, vérifie le matériel et charge le système d’exploitation. Il est essentiel au démarrage et à la sécurité du système.
- QEMU : QEMU est un émulateur de machine open source permettant de faire tourner des machines virtuelles, souvent utilisé en cybersécurité pour tester des logiciels et firmwares en toute sécurité.
- Assembleur : Un assembleur traduit le langage assembleur en code machine, permettant aux programmeurs d’écrire des instructions directement exécutables par le processeur d’un ordinateur.