Para ter uma visão mais profunda, você pode dar uma olhada na Wikipédia sobre o VMware Workstation [ 1 ] e sobre o Monitor de Máquina Virtual [ 6 ] .
VMware Workstation can save the state of a virtual machine (a "snapshot") at any instant. These snapshots can later be restored, effectively returning the virtual machine to the saved state.
Para que você possa executar ao mesmo tempo mais de um sistema operacional, cada um com seu próprio executável.
É como um "Super Sistema Operacional" que alterna continuamente entre cada máquina virtual.
O executável diferente pode funcionar no topo do sistema para o qual foram compilados , e se tudo for feito corretamente, eles não notarão qualquer diferença.
Algumas palavras mais
Em geral, você tem diferentes maneiras de configurar uma máquina que permite trabalhar com executáveis compilados para diferentes sistemas operacionais ou diferentes arquiteturas:
-
Você pode instalar mais de um sistema operacional, por exemplo Windows e Linux, ao mesmo tempo.
No momento da inicialização, você escolhe com o sistema operacional que funciona.
(+)
Você terá funcionalidade completa e velocidade mas uma para o tempo.
(-)
Isso implica usar o espaço necessário para cada instalação nas unidades. -
Você pode ter um emulador , um programa que traduz ( "emula" ) todas as instruções de uma única máquina, permitindo executar um código de 64 bits em 32 bits máquina. Por exemplo.
bochs
[ 2 ] ou o famosomame
[ 3 ] capaz de emular muitos milhares de videogames de arcade clássicos e hardware em um computador moderno.
(+)
Você provavelmente economizará espaço nas unidades.
(-)
Você executará lentamente porque precisa traduzir cada instrução. -
Você pode ter uma camada de compatibilidade como
wine
[ 4 ] (em origem, um acrônimo para "Vinho não é um emulador"), capaz de executar aplicativos Windows em vários sistemas operacionais compatíveis com POSIX, como Linux, Mac OSX, & BSD, traduzindo as chamadas da API do Windows para chamadas POSIX on-the-fly.
(+)
Mais rápido que o anterior(-)
Nem sempre compatível -
Você pode instalar um Monitor de Máquina Virtual, VMM, do tipo II [ 6 ] . Este software de virtualização , como o VirtualBox de código-fonte aberto [ 5 ] , permitirá para instalar um sistema operacional inteiro não modificado no qual os executáveis relativos serão executados. A chamada máquina virtual será executada pelo seu sistema operacional original (veja a figura abaixo).
... a kind of virtualization that allows an unmodified operating system with all of its installed software to run in a special environment, on top of your existing operating system. This environment, called a "virtual machine", is created by the virtualization software by intercepting access to certain hardware components and certain features [5].
VMM do Tipo I, II [ 6 ] :
-
Por último, mas não menos importante, um hypervisor do tipo I [ 6 ] , ou monitor de máquina virtual (VMM), uma peça de software, firmware ou hardware de computador que cria e executa máquinas virtuais . Desta vez, ele será executado diretamente no hardware e o Sistema Operativo será como um dos seus programas. Veja a figura acima.
It runs directly on the host's hardware to control the hardware and to manage guest operating systems. For this reason, they are sometimes called bare metal hypervisors. A guest operating system runs as a process on the host.
Conclusão
Cada executável é compilado para um sistema operacional através do qual ele deve se comunicar com o hardware. Instrução diferente, bibliotecas, políticas ... por este motivo um executável do Windows normalmente não rodará no Linux e vice-versa , mas como você pode ver existem muitas maneiras de cuidar disso tradução de idiomas, adicionando uma camada de um tipo diferente, para que o programa não fique sabendo.
Nota: Algum programa assembler precisava de acesso direto à memória e interrompe [ 7 ] e eles podem precisar de um cuidado especial.