普通的Windows電腦在打上微軟修補Meltdown和Spectre漏洞的補丁后,到底性能會下降嗎?民間測試結論各異,其中還不乏聳人聽聞的“標題黨”,對此,微軟終于官方發聲。
微軟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/Kaby Lake或者更新的處理器平臺的Windows 10系統,降幅在個位數,意味著,絕大多數用戶都感受不到變化,因為即便慢,也是在毫秒之內。
2、搭載Haswell或者更早的處理器的Windows 10平臺,影響已經有些顯著了,可能部分用戶已經可以覺察出來。
3、搭載Haswell或者更早的處理器的Windows 7/8.1平臺,大部分用戶會明顯感受到性能削弱。
4、任何處理器的Windows Server平臺,尤其是密集I/O環境下,在執行代碼分離操作時性能降幅會異常明顯。
微軟稱,Windows 7/8在架構時由于使用了過多的用戶到內核過渡,導致影響更明顯。
微軟最后表示,會繼續和合作伙伴一道致力于更優質的安全方案開發。
PS:結合AMD的聲明,他們的CPU架構對Meldown也就是V3是完全免疫,但Spectre的第一種形式則需要配合操作系統更新實現。