Win10 ARM版为什么可以运行x86程序?

时间:2023-05-21 02:07:19 

Win10 ARM版为什么可以运行x86程序??微软宣布Win10 ARM版中支持x86软件,为什么Win10 ARM版本可以运行x86程序?下面我们就来看看详细介绍,需要的朋友可以参考下

感谢网友Star2011的投稿

在微软Build 2017开发者大会上,微软宣布ARM版Windows10将会支持x86软件。讨论之前,我们有必要首先回顾下64位Windows如何运行32位应用。

Win10 ARM版为什么可以运行x86程序?

首先聊聊64位CPU,Intel和AMD早期采用了完全不同的策略。Intel为64位设计了全新的IA64架构。由于是原生的64位架构,性能更强,但是对传统X86应用兼容不佳。AMD则选择在原始32位X86指令集的基础上扩展64位X86-64指令集,并且将其命名为AMD64在兼容原有X86的基础上,同时支持X86-64的扩展64位计算。由于市场对IA64架构反应冷淡,Intel最终按照AMD64的模式推出EM64T技术。类似于AMD64,EM64T包括两种工作模式,传统IA-32模式(传统32位模式)和IA-32e扩展模式(支持扩展64位计算)。最终,IA64逐步退出历史舞台,而采用AMD64/EM64T技术的处理器称为x86-64处理器,简称x64处理器。

对于64位Windows如何运行32位应用,选择有两种。第一,将32位系统库(C :\Windows\System32)移植,并直接在x64处理器(x86-64)上运行32位代码。第二,将32位系统库移植,转换为64位代码,随后在本机运行。WOW64(Windows on Windows64)选择了后者,首先将32位系统库Windows\System32移植至Windows\SysWOW64,随后通过动态二进制编译器,将32位数据类型重新编组为64位,调用约定则自动封装(X86-64对X86指令集的扩展)。最终,无论是32位应用还是64位应用,全部通过调用同样的NTDLL完成与内核的交互,确保了与内核和设备的交互都可以按本地硬件的速度进行。

Win10 ARM版为什么可以运行x86程序?

Win10 ARM版为什么可以运行x86程序?

WOW64系统库(Windows\SysWOW64,移植自32位System32)

Windows ARM运行32位x86应用的方案与64位Windows运行32位x86应用类似。不同是,为了降低二进制翻译器的开销,Windows ARM采用CHPE(Compiled Hybrid Portable Executable)技术,CHPE在X86 DLL中嵌入相同的ARM64代码。唯一的不同是,为了32位x86应用交互,数据类型仍使用32位。64位据类型的封装则在WOW抽象层进行。通过CHPE技术,X86 to ARM64二进制编译器得以高效进行。最终的过程则与64位运行32位应用完全一致,不再赘述。整个开销取决于应用程序代码、系统代码和内核融合的速度。最终,x86应用将获得非常接近于处理器原生性能的运行速度。

Win10 ARM版为什么可以运行x86程序?

标签:Win10
0
投稿

猜你喜欢

  • 怎样使用标准用户帐户让Windows 7更安全

    2023-10-13 03:14:18
  • 如何将word文档转换为pdf格式

    2023-03-09 00:43:39
  • Win7麦克风说不了话怎么办?麦克风说不了话的解决方法

    2023-01-11 08:59:09
  • 微博中的照片无法删除怎么办 微博中的照片无法删除的解决方法

    2022-01-31 08:57:45
  • 怎么不重装系统给C盘扩容?如何扩大C盘分区容量又不用重装系统?

    2022-12-04 17:36:24
  • ​Word文档怎么设置打印纸张大小

    2022-04-16 03:41:43
  • win11怎么给文件夹加密?win11加密文件夹教程

    2023-11-01 05:34:16
  • word里的页数哪里设置

    2022-03-01 09:57:32
  • WPS合并如何表格单元格图文教程

    2023-12-04 01:43:12
  • Excel如何制作下拉列表,excel下拉菜单的创建方法

    2022-10-13 20:26:30
  • 智联招聘如何拉黑公司 智联招聘拉黑公司方法

    2023-06-28 02:58:41
  • win10开机慢是什么原因以及解决方法

    2022-04-06 06:13:49
  • Endnote参考文献怎么自动去除重复的文献?

    2023-07-26 22:17:23
  • Win10专业版如何把常用设置项固定到开始菜单?

    2023-08-21 11:37:28
  • 抖音电脑版如何查看收藏内容?抖音电脑版查看收藏内容的方法

    2023-02-27 14:03:33
  • Win10系统hosts保存时提示另存为该怎么办?

    2023-03-07 00:19:19
  • wps文字如何加虚线图文教程

    2023-07-19 00:28:16
  • WPS 2012媲美抠图软件设置图片透明色

    2022-05-21 14:09:26
  • Win7系统如何删除多余dll文件?

    2023-12-19 21:02:59
  • win10系统ie浏览器如何设置兼容性视图

    2022-07-12 09:20:08
  • asp之家 电脑教程 m.aspxhome.com