
Los archivos .exe no se ejecutarán directamente en Linux y un ejecutable de Linux no se ejecutará directamente en Windows. Pero si instalamos VMware en Windows, podemos ejecutar ambos archivos en el mismo hardware y arquitectura. ¿Cómo funcionan los ejecutables?
Respuesta1
Para tener una imagen más profunda, puedes echarle un vistazo a la wikipedia sobre VMware Workstation [1] y sobre el Monitor de máquina virtual [6] .
VMware Workstation puede guardar el estado de una máquina virtual (una "instantánea") en cualquier instante. Estas instantáneas se pueden restaurar posteriormente, devolviendo efectivamente la máquina virtual al estado guardado.
Así podrás ejecutar al mismo tiempo más de un sistema operativo cada uno con su propio ejecutable.
es como un"Súper Sistema Operativo"que cambia continuamente entre cada máquina virtual.
Los diferentes ejecutables pueden funcionar en la parte superior del sistema para el que fueron compilados., y si todo se hace correctamente no notarán ninguna diferencia.
Algunas palabras más
En general, hay diferentes formas de configurar una máquina que le permita trabajar con ejecutables compilados para diferentes sistemas operativos o diferentes arquitecturas:
Puede instalar más de un sistema operativo, por ejemplo, Windows y Linux, al mismo tiempo.
En el momento del arranque tú eligescon qué sistema operativo trabajar.
(+)
Tendrás funcionalidad y velocidad completas, pero una por tiempo.
(-)
Esto implica utilizar el espacio necesario para cada instalación en los discos.Puedes tener unemulador, un programa que traduce ("emula") cada instrucción de la máquina, lo que tal vez permita ejecutar un código de 64 bits en una máquina de 32 bits. P.ej
bochs
[2] o el famosomame
[3] capaz de emular miles de videojuegos y hardware arcade clásicos en una computadora moderna.
(+)
Probablemente ahorrará espacio en las unidades.
(-)
Correrá lentamente porque necesita traducir cada instrucción.Puedes tener uncapa de compatibilidadcomo
wine
[4] (en origen un acrónimo de "Wine Is Not an Emulator"),capaz de ejecutar aplicaciones de Windows en varios sistemas operativos compatibles con POSIX, como Linux, Mac OSX y BSD,traducir las llamadas a la API de Windows en llamadas POSIX sobre la marcha.
(+)
Más rápido que el anterior(-)
No siempre compatiblePuedes instalar unMonitor de Máquina Virtual, VMM, de tipo II [6] . Estesoftware de virtualización, como VirtualBox de código abierto [5] , permitirá instalar un sistema operativo completo sin modificaciones en el que se ejecutarán los correspondientes ejecutables. La llamadaLa máquina virtual se ejecutará alojada.por su sistema operativo original (consulte la figura a continuación).
... un tipo de virtualización que permite que un sistema operativo no modificado con todo su software instalado se ejecute en un entorno especial,encima de su sistema operativo existente.Este entorno, llamado "máquina virtual", es creado por el software de virtualización interceptando el acceso a ciertos componentes de hardware y ciertas funciones [5] .
VMM de Tipo I,II [6] :
Por último, pero no menos importante, unhipervisor del tipo I [6] , omonitor de máquina virtual(VMM),una pieza de software, firmware o hardware que crea y ejecuta máquinas virtuales. Esta vez se ejecutará directamente en el hardware y el Sistema Operativo será el mismouno de sus programas. Vea la figura de arriba.
Se ejecuta directamente en el hardware del host para controlar el hardware y administrar los sistemas operativos invitados.Por esta razón, a veces se les llama hipervisores bare metal. Un sistema operativo invitado se ejecuta como un proceso en el host.
Conclusión
Cada ejecutable se compila para un sistema operativo a través del cual debe comunicarse con el hardware. Diferentes instrucciones, bibliotecas, políticas... por esta razón un ejecutable de Windows normalmente no se ejecutará en Linux yviceversa, pero como puedes ver hay muchas maneras de cuidar estotraducción de idiomas, añadiendo una capa de diferente tipo, para que el programa no se dé cuenta.
Nota:Algún programa ensamblador necesitaba acceso directo a la memoria e interrupciones [7] y pueden necesitar un cuidado especial.