Emulação vs Virtualização
Na virtualização temos que tomar cuidado com o uso de 5 palavras:
Virtualização.
Emulação.
Simulação.
Tradução.
Interpretação.
"Emular" não é virtualizar. Mas a virtualização pode andar junto com a emulação.
Principalmente quando o hypervisor precisa disponibilizar recursos de hardware que não estão disponíveis no host físico. Como por exemplo a disponibilização de barramentos, chipsets e periféricos não existentes no host físico. Ou até a disponibilização de uma arquitetura de processador diferente da real.
Na maioria das vezes, as VMs possuem acesso direto ao processador mas todo o restante dos dispositivos são emulados (técnica chamada de device emulation).
A diferença entre um emulador e um virtualizador está em seu objetivo: o emulador emula todo o ambiente necessário para rodar uma aplicação específica, enquanto o virtualizador pode emular parcialmente alguns recursos para rodar aplicações de propósito geral.
Emular um ambiente não precisa necessariamente ser apenas hardware, o ambiente emulado pode ser uma API/ABI, bibliotecas, e etc.
Exemplo de emulações:
Emulador nativo de 32-bit no Win64.
Cygwin.
Emulador de SNES e PlayStation.
QEMU User Mode Emulation.

Last updated