微软补丁修复Meltdown和Spectre漏洞后,普通Windows电脑的性能会下降吗?私人测试的结论各不相同,其中包括一些耸人听闻的“点击诱饵”。
对此,微软最终做出了官方表态。
微软Windows和设备执行副总裁TERRY MYERSON今天在微软官方博客上撰文,希望外界能够更好地理解修复与性能之间的关系。
关于漏洞的描述,目前微软的总结最为详细——第一种形式(Variant 1,简称V1)“Bounds Check Bypass(绕过边界检查/边界检查旁路)”和第二种形式“Branch Target Injection”属于Spectre,而第三种“Rogue Data Cache Load(恶意数据缓存加载)”属于Meldown。
其中,V1和V3都不需要处理器微码更新(即BIOS更新),而V2则需要。
对于V1,Windows的解决方案是更新二次编译器,并从JS端加强浏览器。
对于V2,微软需要更新CPU指令集。
对于V3,需要将内核和用户级代码的页表分开。
性能影响 Myerson 表示,微软发现修复 V1/V3 对性能的影响很小。
问题的关键在于V2对底层指令集进行了修改,成为性能损失的主要原因。
以下是微软的测试结论—— 1、搭载Skylake的Windows 10系统,配备Kaby Lake或更新的处理器平台,下降幅度在个位数,这意味着绝大多数用户不会感受到变化,因为即使它虽然缓慢,但仍在微妙之内。
2.对于搭载Haswell或更早版本处理器的Windows 10平台来说,影响已经有些显着,部分用户可能已经意识到了。
3.对于搭载Haswell或更早版本处理器的Windows 7/8.1平台,大多数用户会明显感受到性能下降。
4、在任何处理器的Windows Server平台上,尤其是在密集型I/O环境下,执行代码分离操作时性能下降会极其明显。
微软表示,Windows 7/8在其架构中使用了太多的用户到内核的转换,导致影响更加明显。
微软最后表示将继续与合作伙伴合作开发更好的安全解决方案。
PS:根据AMD的说法,他们的CPU架构完全不受Meldown的影响,即V3,但Spectre的第一种形式需要通过操作系统更新来实现。