O que é uma emulação de uma máquina física?
Todas as máquinas têm suas próprias interfaces para software. elas são normalmente definidas por specs.
A emulação mais importante é a CPU. emulação irá emular suas instruções (opcodes para ser preciso) então se por exemplo você quiser copiar dados de um registro para outro, ele irá se comportar da mesma forma que a CPU física.
se a emulação da CPU funcionar, quando você executa uma aplicação suas instruções irão fazer o mesmo que na CPU física.
à parte da CPU, existem periféricos que também precisam ser emulados. eles também têm especificações que descrevem sua interface. a emulação deve comportar-se da mesma forma (ou quase) que o periférico físico.
nota que além da interface que expõe o kernel, existe a interface externa. por exemplo, a placa de vídeo deve sair frames para alguma janela da aplicação (ou enviá-la através de um protocolo gráfico como o VNC). o mesmo vale para som, rede e armazenamento.
em resumo, a emulação deve expor as mesmas interfaces e instruções da CPU que a máquina física e ser capaz de executar aplicações como SO e aplicações de espaço do usuário.
Artigos semelhantes
- Há alguma forma de viajar no tempo antes da máquina ser ligada? Posso passar pela máquina a ser ligada? Como?
- A máquina de ruído branco vale a pena? E qual é a diferença entre a máquina, e um áudio com ruído branco do YouTube?
- O que é a emulação?
- Se você jogar um jogo no emulador e acelerar sua velocidade de emulação, o tempo necessário para salvar o jogo diminui. Como é que isso acontece?