首页 综合精选 > 正文

x86 翻译如何在 Arm 上的 Windows 上工作

导读 Arm CPU 上的 Windows 缺乏应用程序支持,但模拟器允许 x86 应用程序运行,但存在一些性能缺陷。为 Arm 模拟 x86 代码需要实时编...

Arm CPU 上的 Windows 缺乏应用程序支持,但模拟器允许 x86 应用程序运行,但存在一些性能缺陷。

为 Arm 模拟 x86 代码需要实时编译和缓存,与本机软件相比,会导致潜在的性能损失。

由于指令集架构的差异,x86 软件无法在没有仿真的情况下在 Arm 上运行,从而阻碍了 Arm 上的本机应用程序开发。

Windows 一直是为 Intel 和 AMD 的 x86 CPU开发的,但自从十年前为智能手机推出 Windows RT 以来,该操作系统慢慢变得对Arm CPU更加友好。如今,Windows 10 和 Windows 11 都提供了对 Arm CPU 的完整支持,但有一个问题。虽然操作系统本身在这些 CPU 上运行得很好,但大多数应用程序尚未推出与 Arm 兼容的版本。虽然Windows可以在Arm芯片上运行,但实际使用的程序很少会是一个问题。

然而,微软有一个绝招:一个让 x86 应用程序在基于 Arm 的机器上运行的模拟器。自 2017 年翻译器问世以来,这是赋予 Windows on Arm 动力的关键因素。以下是模拟器的工作原理,以及为什么 Arm PC 如果想要运行为 x86 芯片制作的软件就需要使用它。

模拟为一种处理器编写的代码以便可以在另一种处理器上运行的想法并不是什么新鲜事。这就是游戏模拟的工作原理,它广泛用于让旧视频游戏在硬件截然不同的新设备上运行。当您在 Arm PC 上运行 x86 应用程序时,Windows 会获取该应用程序的代码块并将其编译为可以在 Arm 芯片上运行的代码。这一切都是实时完成的,Windows 必须缓存其翻译的所有代码,这意味着它不必一遍又一遍地重新翻译。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。