L'histoire de l'émulation
Le mot émulation n'est pas si récent que cela, l'histoire est plutôt complexe et nous tenterons de retranscrire dans les grandes lignes le sens de ce terme.
Dans les années 60, des entreprises s'équipent d'ordinateurs énormes pour pouvoir réaliser leurs calculs. L'électronique étant en pleine évolution, les composants de ces calculateurs massifs sont totalement différents d'un modèle à l'autre. Cette magnifique progression technologique pose malgré tout un problème de taille pour les clients des constructeurs de l'époque. À chaque remplacement d'une configuration pour une nouvelle plus avancée, c'est un coût de développement qui s'ajoute à la facture. En effet, les machines étant si différentes, la programmation l'est tout autant et entraine, en plus de la création de nouveaux produits, une refonte totale des anciens pour supporter la nouvelle architecture.
A cette époque les ordinateurs se démocratisent un peu mais leur coût reste encore quelque peu élevé et peu sont les particuliers ayant un ordinateur chez eux. La difficulté de prise en main, qui plus est, réserve ce genre d'achat aux passionnés.
C'est alors qu'en 1962, l'entreprise IBM apprend qu'un utilisateur a réussi la petite prouesse de modifier le matériel de son IBM 705 pour qu'il puisse être compatible avec d'anciens logiciels. IBM comprend tout l'intérêt de ce besoin qui se fait ressentir et du poids marketing que cela peut avoir lors d'un achat. La compagnie décide donc de créer leur prochain ordinateur de telle façon que celui-ci puisse faire fonctionner les logiciels déjà compilés sur les anciens.
Fin Septembre 1963, IBM commence à réaliser à La Gaude, en France, la mise au point d'un ou plusieurs logiciels simulant le comportement de ses 7 ordinateurs phares. Malheureusement, et comme on peut le prévoir désormais avec le recul, les tests sont peu concluants, la simulation peine à dépasser les 50% de la vitesse normale.
Une mauvaise nouvelle n'arrivant jamais seule pour BigBlue (surnom d'IBM), le concurrent Honeywell sort le H-200, un ordinateur capable de faire fonctionner des programmes IBM. Il n'y a donc plus de temps à perdre, l'argent investi dans la recherche et développement risque de ne pas avoir le retour escompté si le projet sort trop tard.
Heureusement pour la firme, un jeune talent très prometteur, Larry Moss expose sa théorie comme quoi la solution doit être un mixage entre le hardware et le software. Les deux doivent se rapprocher aux plus près des anciennes machines à simuler. Théorie qui donnera raison par la pratique.
Cela donnera vie au System/360. Cette fois ci lors d'un changement d'ordinateur, les programmes fonctionnent parfaitement et sans perte de performance. Considérant que le projet est encore mieux réussi qu'une simulation, le terme utilisé sera alors émulation.
Considérant que le projet est encore mieux réussi qu'une simulation, le terme utilisé sera alors émulation.
L'émulation de nos jours
Comme expliqué ci-dessus, l'émulation a tout d'abord été une solution matérielle. Ce sont les composants de la machine qui permettaient de comprendre et transcrire les anciennes instructions vers les nouvelles. Cette technique est encore utilisée et est très connue du monde des consoles de jeux, par exemple l'adaptateur de jeux Master System pour la Megadrive.
Les temps ont changés ainsi que le matériel qui a évolué de façon fulgurante. Les machines sont devenues plus puissantes, parfois au dépend de la rétro-compatibilité. La surenchère technologique est impitoyable et l'informatique et autres produits numériques sont devenus grand public pour notre plus grand bonheur (?).
Des consoles et autres ordinateurs ont fait plus ou moins les frais de cette guerre. Certains sont passés en coup de vent alors que le produit ne semblait pas si mauvais (le marketing prenant désormais le pas sur la technique), d'autres sont devenus des légendes, des derniers sont apparus et se sont affirmés.
Beaucoup d'entre nous ont désormais un micro-ordinateur plus ou moins puissant et ont connu dans leur vie une période (pas si éloignée que cela) où ils ont pu jouer sur une console ou utiliser un ordinateur qui ne font malheureusement plus partie de la vie actuelle. On a parfois un peu de nostalgie et on aimerait y retoucher mais le matériel ayant évolué très vite l'émulation telle que le pratiquait IBM n'est plus très viable notamment d'un point de vue pécunier.
Par contre, la puissance étant toujours augmentée il est désormais possible de se mettre à l'émulation logicielle sans avoir une énorme perte de vitesse concernant les "vieilles" machines (ou alors avec un peu de triche comme le fait de ne pas afficher toutes les images). C'est comme cela que des développeurs nostalgiques se sont mis à réaliser des émulateurs pour différentes plate-formes (Window, Linux, MacOS etc.).
Aujourd'hui lorsque nous parlons d'émulation, nous pensons presque toujours émulation logicielle et cette dernière, à la vue de notre rubrique "émulateurs", n'est pas en reste sur nos machines frappées de la pomme.
PS: Pour en savoir plus sur l'histoire de l'émulation, je vous conseille l'article en anglais de Zophar ou en français de Grospixels.