Win10 ARM版为什么可以运行x86程序?
感谢网友Star2011的投稿
在微软Build 2017开发者大会上,微软宣布ARM版Windows10将会支持x86软件。讨论之前,我们有必要首先回顾下64位Windows如何运行32位应用。
首先聊聊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完成与内核的交互,确保了与内核和设备的交互都可以按本地硬件的速度进行。
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更新KB5044273引发OpenSSH故障:附临时解决办法
近期,有用户反馈在安装Windows 10的10月更新KB5044273后,OpenSSH功能出现异常,这一更新于10月8日推送至Windows 10 22H2和21H2设备,下面我们就来看看问题描述与解决办法2024-10-19Win10 Beta/RP 19045.5070预览版发布: 附KB5045594完整更新日志
微软为win10发布KB5045594 补丁,用户安装后版本号升至 Build 19045.5070,下面我们就来看看详细的更新内容2024-10-15win10聚焦无法使用怎么办? win10聚焦失效问题的解决办法
最近有不少用户在使用Win10系统时遇到了聚焦功能失效的问题,该怎么继续使用聚焦功能呢?详细请看下文介绍2024-10-12winsxs文件夹可以删除吗? win10有效清理winsxs的多种方法
winsxs文件夹可以删除吗?电脑被这个文件夹占用了大量的空间,但是也不知道winsxs文件夹是什么,也不知道是否可以删除,详细请看下文介绍2024-10-10Win10 1904x.5011十月更新补丁KB5044273:附修复内容汇总
Windows 1022H2 和 21H2 设备推送了 KB5044273 累积更新,其中包含 9 项改进和修复,本文为大家带来了详细介绍,一起看看吧2024-10-09如何启用Win10的增强搜索功能? Win10 |增强搜索功能使用技巧
Win10搜索有经典模式和增强模式两种,如果想要全盘增强搜索,可在主页中开启该功能,下面我们就来看看详细的开启教程2024-10-02win10运行虚拟机就死机了怎么回事? 开启虚拟机蓝屏死机问题解决办法
Win10运行虚拟机时死机可能是由多种原因引起的,下面我们就来一一分析原因和解决办法,详细请看下文介绍2024-10-01win10不能玩吃鸡怎么办? 玩吃鸡提示视频驱动程序崩溃并被重置解决办法
Win10玩吃鸡游戏提示“视频驱动程序崩溃并被重置”怎么解决?有一些用户会遇到这个问题,大家想知道如何修复,只要让电脑可以正常地玩吃鸡游戏就行,详细请看下文介绍2024-10-01win10永久删除的文件怎么找回? 电脑恢复永久删除的文件的多种方法
一不小心删除了重要文件,甚至是永久删除!这该怎么办?win10永久删除的文件怎么恢复?详细请看下文介绍2024-09-30- 在使用Win10系统时,不少硬件设备需要自行设置添加才能正常使用,下面教大家如何手动添加设备方法2024-09-30
最新评论