ordenador personal

Rosetta 2 de Apple vs Emulación de Windows x86 Todo explicado

Rosetta 2 de Apple vs Emulación de Windows x86 Todo explicado

Apple creó 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, Apple tenía una tarea gigantesca 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 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 la emulación Rosetta 2 de Apple frente a la emulación x86 de Windows una al lado de la otra..

Emulación Rosetta 2 de Apple frente a 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. Tabla de contenido + -

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 un Rosetta 2 muy mejorado en 2020 para una transición perfecta entre Intel y Apple Silicon. Para los no iniciados, Rosetta 2 es el capa de traducción que le permite utilizar 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 analizar Rosetta 2 y comprender cómo funciona Rosetta 2..

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, significa los comandos (también llamados código de máquina en informática) necesarios para ejecutar un programa de una arquitectura en otra. Desde Las arquitecturas x86 y ARM son drásticamente diferentes, esta traducción es necesaria para el buen funcionamiento de las aplicaciones basadas en Intel.

Ahora surge la pregunta, ¿cómo ocurre esta traducción y cómo se las arregla Rosetta para ejecutar aplicaciones pesadas x86 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..

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 los que los parámetros no se conocen o los valores se generarán en el tiempo de ejecución, Rosetta 2 usa JIT para la traducción en tiempo real..

En conjunto, Rosetta 2 es capaz de traducir conjuntos de instrucciones x86 al código específico de ARM mucho antes y de una manera más rápida, lo que lleva la diferencia de rendimiento entre las aplicaciones nativas universales y las aplicaciones basadas en Intel a un margen estrecho.

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 para unas pocas computadoras portátiles 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 Windows basadas en ARM es aparentemente la falta de soporte para aplicaciones x86-64 bit (64-bit basadas en Intel) que cubren la mayor parte de las aplicaciones modernas de Windows.

A partir de ahora, las computadoras portátiles 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 de Windows x86. Puedes concluir que La emulación de Windows x86 ha sido un cuello de botella para una transición suave a ARM. Llegando a la pregunta, ¿por qué Microsoft no puede lograr algo como Rosetta 2 en Windows 10??

IrfanView se ejecuta a través del emulador x86 en Windows 10X

Bueno, para responder a tu pregunta, ya lo hace. Contrario a la percepción popular, Microsoft realmente 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 vuelve a ejecutar ".

Aparte de eso, en septiembre de 2020, Microsoft anunció que el próximo año llegará una nueva emulación x86 a las computadoras portátiles con Windows basadas en ARM. 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 la 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.

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

Si bien la nueva emulación de Windows x86 llegará el próximo año, hay algunos otros problemas que hacen que la traducción de x86 en Windows sea mucho más lenta que Rosetta. En primer lugar, macOS debe 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 admite 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.

A continuación, Windows tiene que mantener la compatibilidad con versiones anteriores con miles de programas, complementos, herramientas, bibliotecas obsoletas y todo eso. Considerando que, el estricto control de Apple de la plataforma 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 hacer algo como esto.

Por último, la diferencia de rendimiento entre el Snapdragon 8cx de Qualcomm (que se encuentra en los portátiles ARM basados ​​en Windows) y el 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 de procesador de escritorio: el Snapdragon 8cx Gen 2 5G - en septiembre, y estará disponible en portátiles Windows basados ​​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.

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

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

Cómo conseguir más seguidores en Twitter, vamos a jugar un juego
He leído mucho sobre "Cómo conseguir más seguidores en Twitter", estoy seguro de que también lo has leído, pero no me ayudó.. Antes de escribir esta ...
Curalate te permite saber quién está pinchando tu marca
Hasta ahora, creo que todos deben conocer Pinterest, pero ¿lo estás aprovechando al máximo? ¿Te lo tomas tan en serio como Facebook, Twitter o Google+...
Ok Google no funciona? He aquí cómo solucionarlo
El Asistente de Google es muy útil. Personalmente, lo uso a diario para consultar los informes meteorológicos, obtener mi información diaria y seguir ...