Je ne pense pas que l'émulateur et le simulateur puissent être comparés. Les deux imitent quelque chose, mais ne font pas partie du même champ de raisonnement, ils ne sont pas utilisés dans le même contexte.
En bref, un émulateur est conçu pour copier certaines caractéristiques de l'original et peut même le remplacer dans l'environnement réel. Un simulateur n'est pas conçu pour copier les caractéristiques de l'original, mais seulement pour paraître similaire à l'original aux yeux des êtres humains. Sans les caractéristiques de l'original, le simulateur ne peut pas le remplacer dans l'environnement réel.
Un site émulateur est un dispositif qui imite quelque chose d'assez proche pour qu'il puisse peut être substitué à la vraie chose . Par exemple, vous voulez qu'un circuit fonctionne comme un circuit ROM (read only memory), mais vous voulez aussi ajuster le contenu jusqu'à ce qu'il corresponde à ce que vous voulez. Vous utiliserez un émulateur de ROM, une boîte noire (probablement basée sur un CPU) avec des interfaces physiques et électriques compatibles avec la ROM que vous voulez émuler. L'émulateur sera branché sur le périphérique à la place de la vraie ROM. La carte mère ne verra aucune différence lors du fonctionnement, mais vous pourrez facilement changer le contenu de la ROM émulée. Autrement dit, l'émulateur agira exactement comme la chose réelle dans le contexte de la carte mère (peut-être un peu plus lentement en raison du modèle interne actuel), mais il y aura des fonctions supplémentaires (comme la réécriture) visibles uniquement par le concepteur, en dehors du contexte de la carte mère. La définition d'un émulateur serait donc la suivante : quelque chose qui imite l'original, possède toutes ses caractéristiques fonctionnelles, peut le remplacer dans une certaine mesure dans le monde réel, et peut avoir des caractéristiques supplémentaires non visibles dans le contexte normal.
A simulateur est utilisé dans un autre contexte de réflexion, par exemple un simulateur d'avion, un simulateur de voiture, etc. La simulation ne s'occupera que de certains aspects de la chose réelle, généralement ceux liés à comment un être humain va la percevoir et la contrôler . Le simulateur ne remplit pas les fonctions de l'appareil réel et ne peut s'y substituer. Le simulateur d'avion ne pourra pas voler ou transporter quelqu'un, ce n'est pas du tout son but. Le simulateur n'est pas destiné à fonctionner, mais à apparaître au pilote d'une manière ou d'une autre comme l'objet réel à des fins autres que ses fonctions normales, par exemple pour permettre la formation au sol (y compris dans des situations inhabituelles comme la panne de tous les moteurs). La définition du simulateur serait donc la suivante : quelque chose qui peut apparaître à l'homme, dans une certaine mesure, comme l'original, mais qui ne peut pas le remplacer pour une utilisation réelle. En outre, le pilote saura que le simulateur est un simulateur.
Je ne pense pas que nous verrons un simulateur de ROM, parce que les ROM n'interagissent pas avec des êtres humains, ni un émulateur d'avion, parce que les avions ne peuvent pas avoir de remplaçant remplissant les mêmes fonctions dans le monde réel.
Selon moi, le modèle à l'intérieur d'un émulateur ou d'un simulateur peut être n'importe quoi, et ne doit pas nécessairement être similaire au modèle de l'original. Un modèle d'émulateur ROM sera probablement un logiciel plutôt qu'un matériel, MS Flight Simulator ne peut pas être plus logiciel qu'il ne l'est.
Cette comparaison des deux termes contredira la réponse actuellement choisie (de Toybuilder) qui met la différence sur le modèle interne, alors que ma suggestion est que la différence est de savoir si le faux peut ou ne peut pas être utilisé pour exécuter la fonction réelle dans le monde réel (dans une certaine mesure acceptée, en effet).
Notez que le simulateur d'avion devra également simuler la terre, le soleil, le vent, etc., qui ne font pas partie de l'avion. Un simulateur d'avion devra donc imiter certains aspects de l'avion, ainsi que l'environnement de l'avion car il n'est pas utilisé dans cet environnement réel, mais dans une salle d'entraînement.
C'est une grande différence avec l'émulateur qui émule seulement l'original, et son but est d'être utilisé dans l'environnement de l'original sans avoir besoin de l'émuler. Revenons au contexte de l'avion... que pourrait être un émulateur d'avion ? Peut-être un train qui reliera deux aéroports -- en fait deux étapes d'avion -- transportant des passagers, avec des hôtesses de l'air à bord, avec un intérieur de voiture ressemblant à une cabine d'avion réelle, et avec le capitaine disant "mesdames et messieurs notre altitude est actuellement de 10 kms et la température à notre destination est de 24°C". Son avantage est difficile à voir, hum...
En conclusion, l'émulateur est une chose réelle destinée à fonctionner, le simulateur est un faux destiné à tromper l'utilisateur.
3 votes
Dans le développement d'applications mobiles, l'iPhone dispose d'un simulateur tandis qu'Android dispose d'un émulateur. Plus ici - stackoverflow.com/questions/4544588/
1 votes
J'ai trouvé le point de vue de Wikipedia sur ce sujet instructif : fr.wikipedia.org/wiki/Emulator#Emulation_versus_simulation
0 votes
Cela pourrait également être utile pour expliquer cela : programmeurs.stackexchange.com/questions/134746/