Como eu entendo os emuladores (de uma maneira simples), eles convertem ou substituem as chamadas de função de um programa usando funções do sistema X em funções usadas pelo sistema Y no qual o programa está sendo executado. O projeto Wine afirma que o vinho não é um emulador, porque:
Em vez de simular a lógica interna do Windows como uma máquina virtual ou emulador, o Wine converte chamadas da API do Windows em chamadas POSIX on-the-fly, eliminando as penalidades de desempenho e memória de outros métodos e permitindo integrar de maneira limpa os aplicativos do Windows à sua área de trabalho.
Bem, como emuladores e máquinas virtuais simulam a lógica interna do Windows em sistemas host que não são Windows? Não é isso, traduzindo as chamadas do sistema Windows nas respectivas chamadas do host? A diferença entre emuladores e não emuladores (como o Wine) é que os emuladores emulam um sistema operacional inteiro; o aplicativo usa as APIs do sistema sem saber que está falando com um emulador, enquanto os não emuladores traduzem diretamente as chamadas do aplicativo para as do host ( e o aplicativo também pode não saber)? O nível extra de indireção é o único diferente entre emuladores e vinho?