Cómo funciona la emulación de x86 en ARM

La emulación de aplicaciones x86 hace que el ecosistema enriquecido de aplicaciones Win32 esté disponible en ARM. Esto proporciona al usuario la experiencia mágica de ejecutar una aplicación win32 x86 existente sin modificaciones en la aplicación. La aplicación ni siquiera sabe que se está ejecutando en un equipo Windows ARM, a menos que llame a API específicas (IsWoW64Process2).

La capa WOW64 de Windows permite que el código x86 se ejecute en la versión ARM64 de Windows. La emulación de 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 de nuevo. Las memorias caché se generan para cada módulo para que otras aplicaciones puedan usarlas en el primer inicio.