Cos'č un emulatore
01-01-2010 - MarcoTecnologia - Emulando
Il concetto di emulazione è molto più complesso di quello che si possa pensare. Si parla di emulazione quando un software, scritto per una specifica architettura hardware e software, riproduce totalmente un'architettura differente permettendo così l'esecuzione di programmi scritti per ambienti diversi da quello sul quale viene eseguito
Tra
gli emulatori più famosi possiamo citare quello del Commodore
Amiga, Commodore 64, il MAME, ZX Spectrum, MSX e molti altri vecchi
computer del passato.
E' molto importante non confondere un "emulatore" con una "macchina virtuale" perchè quest'ultima permette l'esecuzione di un sistema dentro l'altro (una sorta di scatola cinese) ma, sempre mantenendo l'architettura hardware identica. A volte vengono emulate installazioni ideali di schede per permettere una maggiore compatibilità e stabilità dei software eseguiti ma, l'esecuzione dei processi virtuali e sempre e solo eseguita dal processore reale senza interpretazioni varie. Esistono parecchie macchine virtuali, alcune anche molto potenti, come VIRTUAL BOX della Sun, VM Ware, ecc. Occorre anche non confondere "emulazione" con "simulazione".
La simulazione è la ricostruzione totale di un processo per un nuovo sistema, originariamente scritto per un altra piattaforma, cercando di mantenere il più possibile la fedeltà dell'originale. In questo caso nulla viene emulato perchè in realtà il software viene ricostruito in modo più simile possibile all'originale. Altra confusione può venire fatta tra "emulatore" ed "interprete".
L'interprete è una sorta di piccolo programma che parla 2 lingue: quella del processore e quella del programmatore, permettendo così la stesura di programmi in modo molto più semplice. Nei PC moderni i famosi "drivers" sono, in realtà, dei piccoli interpreti tra "sistema operativo" e componenti hardware aggiuntivi come schede video, audio, lan, o periferiche esterne come scanner, stampanti, ecc.
Per le macchine attuali, molto potenti, sono stati realizzati i più svariati emulatori. E' così possibile, con un po' di pazienza, rivedere pressochè fedelmente tutte le consolle e game da Bar del passato e tutti i computer con il loro infinito software realizzato. Un oceano di bit e milioni di linee di codice in più di trent'anni di evoluzione informatica ed elettronica.
E' molto importante non confondere un "emulatore" con una "macchina virtuale" perchè quest'ultima permette l'esecuzione di un sistema dentro l'altro (una sorta di scatola cinese) ma, sempre mantenendo l'architettura hardware identica. A volte vengono emulate installazioni ideali di schede per permettere una maggiore compatibilità e stabilità dei software eseguiti ma, l'esecuzione dei processi virtuali e sempre e solo eseguita dal processore reale senza interpretazioni varie. Esistono parecchie macchine virtuali, alcune anche molto potenti, come VIRTUAL BOX della Sun, VM Ware, ecc. Occorre anche non confondere "emulazione" con "simulazione".
La simulazione è la ricostruzione totale di un processo per un nuovo sistema, originariamente scritto per un altra piattaforma, cercando di mantenere il più possibile la fedeltà dell'originale. In questo caso nulla viene emulato perchè in realtà il software viene ricostruito in modo più simile possibile all'originale. Altra confusione può venire fatta tra "emulatore" ed "interprete".
L'interprete è una sorta di piccolo programma che parla 2 lingue: quella del processore e quella del programmatore, permettendo così la stesura di programmi in modo molto più semplice. Nei PC moderni i famosi "drivers" sono, in realtà, dei piccoli interpreti tra "sistema operativo" e componenti hardware aggiuntivi come schede video, audio, lan, o periferiche esterne come scanner, stampanti, ecc.
Per le macchine attuali, molto potenti, sono stati realizzati i più svariati emulatori. E' così possibile, con un po' di pazienza, rivedere pressochè fedelmente tutte le consolle e game da Bar del passato e tutti i computer con il loro infinito software realizzato. Un oceano di bit e milioni di linee di codice in più di trent'anni di evoluzione informatica ed elettronica.

