Intel爆硬件bug,即使修复,你的电脑也会明显变慢

2018 年 1 月 4 日 聊聊架构 雨多田光
雨多田光

近日,Intel 被暴其近十年来生产的 Intel 芯片都存在严重漏洞,即使修复该漏洞,CPU 性能也会有 5%-30% 的明显下降。

该漏洞的具体细节还未披露,但是根据分析,可以判定漏洞为“内核内存泄漏”,它使得用户态程序可以在一定程度上探测出系统内核内存区域的布局或具体信息。目前来看微指令更新无法解决该问题,需要从硬件层面进行整改,这也迫使 Linux 与 Windows 内核进行重新设计。

操作系统内核更新

最近几周,开发人员对 Linux 内核的虚拟内存子系统进行了重大修改,使用内核页面表隔离(Kernel Page Table Isolation,KPTI)机制将内核的内存与用户进程完全分开。虽然 Linux 官方没有承认,但是这被认为就是对此次 Intel 漏洞进行的暂缓修复方案。

通常来说,Linux 内核部分较大的更新需要经过数月甚至数年的讨论,然而此次 Linux 内核更新显得很急促,并且,这些改动不仅内嵌在即将到来的 Linux 内核 4.15 版本中,而且还被反向移植到已经发布了的内核 4.9 和 4.14 中。

而微软从 11 月份开始也已经在悄悄地进行类似的系统修复工作,并且据预测,在下周二微软即将发布的系统更新中,将会公布该漏洞的具体细节。

类似的操作系统,如苹果的 macOS,也将需要做出更新,因为这个缺陷发生在 Intel x86-64 硬件上,只要使用了该芯片,问题就存在。相反,AMD 声明使用其芯片的机器无需担忧。

而分析称,想要完全解决该问题,需要从硬件层面去入手,目前的 KPTI 只是暂缓解决方案。

影响最大的可能是云

相比个人计算机受到的威胁,该漏洞的另一个更重大的影响体现在云服务提供商上,它使得恶意软件在共享的公共云服务器上,可以从某个主机的虚拟机上读写另一个虚拟机上受内核保护的敏感信息。

有工程师近日发表了一篇文章称,Intel 这个漏洞将会影响包括 Amazon EC2、Microsoft Azure 和 Google Compute Engine 在内的大牌云计算环境。运行大量 Linux 和 Windows 的 Microsoft Azure 将在 1 月 10 日进行重启维护,而亚马逊也通过电子邮件警告用户“本周五将有重大安全更新发布”,似乎都是在对该漏洞进行应急处理。

修复方案使 CPU 性能明显下降

根据目前已经了解到的对该漏洞的修复方案 KPTI 的分析,专家称其将引起 Intel 机器 5% 至 30% 的性能下降。

当程序需要执行操作,如写入文件时,需要暂时将 CPU 的控制权交给内核。为了高效地从用户态切换到内核态,并在操作结束后回到用户态,内核会存在于所有进程的虚拟内存地址空间中;也就是将整个内核存储区域映射在分页表上,在程序执行过程中内核的分页表一直处于可用状态,这可以避免大量的上下文切换开销。

而 KPTI 机制阻止了这一“便捷性”,它将内核移到了一个完全独立的地址空间,使得每次系统调用和硬件中断时,在内存地址之间的切换变得很耗时,因为它需要强制 CPU 转储缓存数据并从内存中重新加载相关信息。

简单点说,这个机制增加了内核的开销,并减慢了你计算机的速度。

More

聊聊架构2017下半年精选文章

如果潜心研究Netflix微服务技术多年,能学到什么?

其它

随着互联网业务的飞速发展,系统动辄要支持亿级流量压力,架构设计不断面临新的挑战。海量系统设计、容灾、健壮性,架构师要考虑多方面的需求做出权衡。不如来听听国内外知名互联网公司的架构师分享架构设计背后的挑战与问题解决之道。

QCon 北京 2018 目前 8 折报名中,立减 1360 元,有任何问题欢迎咨询购票经理 Hanna,电话:15110019061,微信:qcon-0410。

登录查看更多
0

相关内容

英特尔公司是世界上最大的半导体公司,也是第一家推出x86架构处理器的公司,总部位于美国加利福尼亚州圣克拉拉。由罗伯特·诺伊斯、高登·摩尔、安迪·葛洛夫,以“集成电子”之名在1968年7月18日共同创办公司,将高级芯片设计能力与领导业界的制造能力结合在一起。 维基百科
Python分布式计算,171页pdf,Distributed Computing with Python
专知会员服务
107+阅读 · 2020年5月3日
【复旦大学-SP2020】NLP语言模型隐私泄漏风险
专知会员服务
24+阅读 · 2020年4月20日
【CVPR2020-谷歌】多目标(车辆)跟踪与检测框架 RetinaTrack
专知会员服务
44+阅读 · 2020年4月10日
【Google】利用AUTOML实现加速感知神经网络设计
专知会员服务
29+阅读 · 2020年3月5日
“黑客”入门学习之“windows系统漏洞详解”
安全优佳
8+阅读 · 2019年4月17日
如何用GitLab本地私有化部署代码库?
Python程序员
9+阅读 · 2018年12月29日
TensorFlow、Caffe、Torch 三大深度学习框架被存在安全漏洞
10个深度学习软件的安装指南(附代码)
数据派THU
17+阅读 · 2017年11月18日
手把手教你安装深度学习软件环境(附代码)
数据派THU
4+阅读 · 2017年10月4日
从零开始:深度学习软件环境安装指南
机器之心
6+阅读 · 2017年10月2日
Learning Dynamic Routing for Semantic Segmentation
Arxiv
8+阅读 · 2020年3月23日
VIP会员
Top
微信扫码咨询专知VIP会员