QNA > Q > Qual È La Differenza Tra Un Emulatore E Una Vm?

Qual è la differenza tra un emulatore e una VM?

Puramente in termini tecnici, una VM (Virtual Machine) è un emulatore. Emula l'input/output di un sistema hardware attraverso il software.

La percezione comune, però, è che le VM siano più adatte a "virtualizzare" interi sistemi operativi perché, beh, di solito vengono eseguite in un sistema che assomiglia "da vicino" a quello che stanno emulando, in termini di architettura.

Un emulatore - e presumo che qui stiamo parlando di emulatori di console - ha un approccio diverso. I programmatori devono fare reverse engineering e molte volte "indovinare" come funziona l'hardware originale della console. Devono prendere delle scorciatoie perché devono adattare/emulare l'hardware/codice originale a un sistema completamente diverso. Non solo, devono passare attraverso un sacco di livelli che la console originale non ha, come, per esempio, il sistema operativo della vostra macchina, e questo è destinato a renderla molto più lenta delle console originali, che di solito hanno sistemi operativi molto più semplici, se non addirittura nessuno.

(Le VM di solito aggirano questo problema eseguendo direttamente il processore, dato che sono fatte per eseguire software per computer su un computer)

Quindi, in termini profani...

Una VM esegue software per computer in un altro computer, e poiché sono simili, sono abbastanza ben ottimizzati.

Un emulatore è il miglior sforzo di un programmatore per far funzionare un gioco per console ad una qualità e velocità decenti, indovinando come funziona la console originale e prendendo scorciatoie dove possibile.

E solo per chiarire... La maggior parte degli emulatori Android sono VM semplificate. Usano anche la maggior parte delle stesse tecnologie che le VM più robuste (come, ad esempio, VirtualBox) usano per rendere le vostre applicazioni mobili più veloci. (Also, phones are closer cousins to PCs than consoles.)

Hope this helps… Have a great one!

Di Olds Mlakar

Posso navigare in internet su una TV usando Chromecast? :: Un ambiente virtuale è la stessa cosa di una macchina virtuale?
Link utili