x86 仿真在 ARM 上的工作原理

x86 应用的仿真使 Win32 应用的丰富生态系统在 Arm 上可用。 这为用户提供了运行现有 x86 win32 应用而无需对应用进行任何修改的神奇体验。

Arm 版本的 Windows 10 包含仿真技术,可使现有未修改的 x86 应用能够在 Arm 设备上运行。 Windows 11 扩展了该仿真技术,以便在 Arm 驱动的设备上运行未修改的 x64 Windows 应用。

WOW64 API

x86(或 x64)应用甚至不知道它在 Arm 电脑上的 Windows 上运行,除非它调用特定的 API (IsWoW64Process2)。

Windows 的 WOW64 层允许 x86 代码在 Arm64 版本的 Windows 上运行。 x86 仿真的工作原理是将 x86 指令块编译为 Arm64 指令,并通过优化来提高性能。 某个服务会缓存这些已转换的代码块,以减少指令转换的开销,并允许在代码再次运行时进行优化。 会为每个模块生成缓存,以便其他应用可以在首次启动时使用它们。

更新以支持应用的 Arm64 版本

虽然在 Arm 设备上仿真 x64 和 x86 的能力是向前迈出的重要一步,你也可以通过更新以支持应用的 Arm64 版本来使应用获得本机性能增益和 Arm64 驱动的设备带来的独特优势。

请参阅为 Windows 应用添加 Arm 支持,获取有关如何创建应用的 Arm64 版本的指南,可能涉及的优势、挑战和工具,以及在创建应用的 Arm64 版本时的可用支持(和任何相关依赖项)。