Rosetta 2 de Apple vs Emulación x86 de Windows: Explicación

4.7
(21)
Apple hizo historia cuando lanzó las nuevas MacBooks con su procesador interno Apple M1 basado en ARM, reemplazando a los procesadores Intel después de más de una década. Con una transición tan grande, hubo una tarea gigantesca en la mano de Apple para mantener la compatibilidad de la aplicación en M1. Sin embargo, parece que Apple lo ha logrado a través de su poderosa capa de traducción: Rosetta 2. Ya hemos visto cómo Windows en ARM no logró atraer a los usuarios debido a problemas de compatibilidad con las aplicaciones x86. Entonces, ¿qué hace que Rosetta 2 sea tan poderosa y por qué la emulación de Windows x86 no parece tener esa promesa? Bueno, para encontrar la respuesta, sigamos adelante y comparemos Rosetta 2 de Apple con la emulación x86 de Windows, una al lado de la otra.

Rosetta 2 de Apple frente a la emulación Windows x86: todo lo que necesita saber

Aquí, hemos mencionado todas las secciones que hemos cubierto para que pueda encontrar fácilmente toda la información. Puede hacer clic en el enlace para moverse sin problemas entre las diferentes secciones.

¿Cómo funciona Rosetta 2 de Apple?

Después de la introducción de Rosetta en 2006 durante la transición PowerPC-Intel, Apple ha anunciado una Rosetta 2 muy mejorada en 2020 para una transición fluida Intel-Apple Silicon. Para los no iniciados, Rosetta 2 es el capa de traducción que le permite usar aplicaciones basadas en Intel en Apple Silicon Macs. Pero, ¿cómo funciona esta poderosa capa de traducción? Hay poca información sobre este tema, por lo que intentaremos diseccionar Rosetta 2 y comprender cómo funciona Rosetta 2.

Rosetta 2 de Apple frente a la emulación Windows x86

En primer lugar, Rosetta 2 es una capa de traducción, lo que significa que traduce los conjuntos de instrucciones de la arquitectura Intel x86 a la arquitectura Apple Silicon basada en ARM. Cuando digo conjunto de instrucciones, me refiero a los comandos (también llamados código de máquina en computación) necesarios para ejecutar un programa de una arquitectura en otra. Ya que Las arquitecturas x86 y ARM son drásticamente diferentesesta traducción es necesaria para el buen funcionamiento de las aplicaciones basadas en Intel.

Leer   Cómo cambiar la ubicación de la captura de pantalla en Samsung y MIUI

Ahora surge la pregunta, ¿cómo ocurre esta traducción y cómo logra Rosetta ejecutar aplicaciones x86 pesadas en Mac ARM sin problemas? Puede atribuir la razón principal a la Compilador anticipado (AOT) que Apple ha implementado en Rosetta 2. Anteriormente con Rosetta en 2006, Apple solo usaba el compilador Just-in-time (JIT) para la traducción binaria estática. Ahora, con el compilador AOT en Rosetta 2, Apple Silicon puede traducir y compilar el código sobre la marcha a través de la traducción binaria dinámica.

Aplicación en ejecución Rosetta 2

Lo que significa es que Rosetta 2 ahora usa el compilador AOT y JIT, según el escenario. Incluso antes de abrir una aplicación, Rosetta 2 usa el compilador AOT durante la instalación de la aplicación para traducir el código. Hace que la aplicación basada en Intel comportarse como una aplicación universal hecho de forma nativa para Apple Silicon. En los casos en que los parámetros no se conocen o los valores se generarán en tiempo de ejecución, Rosetta 2 utiliza JIT para la traducción en tiempo real.

En tándem, Rosetta 2 es capaz de traducir conjuntos de instrucciones x86 al código específico de ARM mucho antes y de forma más rápida, lo que reduce la diferencia de rendimiento entre las aplicaciones nativas universales y las aplicaciones basadas en Intel.

¿Cómo funciona la emulación de Windows x86?

A diferencia de Apple, Microsoft no ha adoptado completamente ARM y ha habido un desarrollo lento en este frente. Hasta ahora, la compañía solo ha otorgado licencias a unas pocas computadoras portátiles con Windows basadas en ARM, incluida la Surface Pro X y algunas PC siempre conectadas de HP, Lenovo, etc. La razón principal detrás de la lenta adopción de las computadoras portátiles con Windows basadas en ARM es aparentemente la falta de soporte para aplicaciones x86-64 bits (basadas en Intel de 64 bits) que cubren la mayor parte de las aplicaciones modernas de Windows.

A partir de ahora, las computadoras portátiles con Windows basadas en ARM solo admiten aplicaciones nativas creadas en el conjunto de instrucciones ARM y aplicaciones basadas en Intel de 32 bits que se ejecutan a través de la emulación Windows x86. Puedes concluir que La emulación de Windows x86 ha sido un cuello de botella para una transición sin problemas a ARM. En cuanto a la pregunta, ¿por qué Microsoft no puede lograr algo como Rosetta 2 en Windows 10?

Leer   Cómo instalar ADB y Fastboot en Mac OS X o Windows
Rosetta 2 de Apple vs emulación Windows x86: todo explicado
IrfanView ejecutándose a través del emulador x86 en Windows 10X

Bueno, para responder a tu pregunta, ya lo hace. Contrariamente a la percepción popular, Microsoft en realidad usa el mismo enfoque que Rosetta— traducir los binarios a código de máquina a través de su capa WOW64. Según un documento de Microsoft de 2018, “La capa WOW64 de Windows 10 permite que el código x86 se ejecute en la versión ARM64 de Windows 10. La emulación x86 funciona compilando bloques de instrucciones x86 en instrucciones ARM64 con optimizaciones para mejorar el rendimiento. Un servicio almacena en caché estos bloques de código traducidos para reducir la sobrecarga de la traducción de instrucciones y permitir la optimización cuando el código se ejecuta nuevamente”.

Aparte de eso, en septiembre de 2020, Microsoft anunció que un viene una nueva emulación x86 a las computadoras portátiles con Windows basadas en ARM el próximo año. Además, también brindará soporte para aplicaciones de 64 bits basadas en Intel en silicio ARM. En cuanto al compilador, hay muy poca información sobre este tema. Sin embargo, se sabe que Microsoft ha estado usando JIT para traducción y compilación en tiempo real. Tendremos que esperar y ver qué tiene el nuevo emulador x86 en la tienda cuando se lance el próximo año.

Rosetta 2 de Apple frente a la emulación Windows x86: rendimiento de la traducción

Si bien la nueva emulación Windows x86 llegará el próximo año, existen otros problemas que hacen que la traducción x86 en Windows sea mucho más lenta que Rosetta. En primer lugar, macOS tiene que admitir solo dos arquitecturas: ARM de 64 bits y x86 de 64 bits. Apple eliminó la compatibilidad con aplicaciones de 32 bits en 2019. En comparación, Windows en ARM es compatible con la arquitectura ARM de 32 y 64 bits; x86 de 32 bits y x86 de 64 bits que llegará el próximo año. Con tal sobrecarga de recursos, es difícil hacer que la traducción sea más rápida.

Rosetta 2 de Apple frente a la emulación Windows x86

A continuación, Windows tiene que mantener la compatibilidad con versiones anteriores con miles de programas, complementos, herramientas, bibliotecas desactualizadas y demás. Mientras que el estricto control de la plataforma por parte de Apple garantiza que los desarrolladores estén siempre en el marco moderno para desarrollar aplicaciones, lo que a su vez ayuda a hacer una transición tan grande. Además de eso, como Apple ya hizo una transición exitosa de PowerPC a Intel Macs (2006-2009) en el pasado, tiene una experiencia mucho mejor para sacar algo como esto.

Leer   Cómo abrir un archivo Webp en Photoshop [Mac & Windows]

Por último, la diferencia de rendimiento entre Snapdragon 8cx de Qualcomm (que se encuentra en las computadoras portátiles ARM basadas en Windows) y Apple M1 es significativa. Incluso el último Snapdragon 888 está al menos una generación por detrás del Apple A14 Bionic. Hay buenas noticias. Qualcomm ha anunciado la próxima iteración del procesador de escritorio: el Snapdragon 8cx Gen 2 5G – en septiembre, y estará disponible en computadoras portátiles con Windows basadas en ARM el próximo año. La combinación de un nuevo chip y una emulación mejorada puede ser la solución para Microsoft.

Rosetta 2 de Apple vs emulación Windows x86: ¿Cuál es el ganador?

Está claro que Rosetta 2 es bastante poderosa y Apple ha hecho un trabajo fantástico al brindar soporte de aplicaciones para programas basados ​​en Intel. En la actualidad, Windows en ARM puede no parecer tan prometedor, pero dado el anuncio de Microsoft del nuevo método de emulación, seguramente genera esperanza para los usuarios de Windows. Quedará por verse si Microsoft supera a Apple en el próximo trimestre. De todos modos, eso es todo de nuestra parte. Si tiene alguna pregunta, comente abajo y háganoslo saber.

¡Haz clic en una estrella para puntuar!

Promedio de puntuación 4.7 / 5. Recuento de votos: 21

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.