为什么 Meltdown 和 Spectre 漏洞这么久都没有被发现?
Why did Meltdown and Spectre bugs go undiscovered for so long?
为什么 Meltdown 和 Spectre 漏洞这么久都没有被发现?
近 20 年来,这些错误一直存在于 CPU 中,鉴于对使用这些处理器的所有计算机的严重影响,为什么不早点发现它?
答案很简单:现代 CPU 有几十亿个晶体管。例如,最新的 Intel Skylake 架构大约有 20 亿。每个晶体管的状态可能会影响其他晶体管的状态(即那些晶体管以某种方式连接)。
基本上,这意味着现代 CPU 有太多可能的排列或状态,我们根本无法在一生中进行测试。所以我们(或者更确切地说,生产者)只测试了一些状态和一些场景,为危险的角落案例留下了潜在的空间。
Spectre 和 Meltdowns 是此类未经测试的极端情况,但由于现代 CPU 的复杂性,可能还有更多。
为什么 Meltdown 和 Spectre 漏洞这么久都没有被发现?
近 20 年来,这些错误一直存在于 CPU 中,鉴于对使用这些处理器的所有计算机的严重影响,为什么不早点发现它?
答案很简单:现代 CPU 有几十亿个晶体管。例如,最新的 Intel Skylake 架构大约有 20 亿。每个晶体管的状态可能会影响其他晶体管的状态(即那些晶体管以某种方式连接)。
基本上,这意味着现代 CPU 有太多可能的排列或状态,我们根本无法在一生中进行测试。所以我们(或者更确切地说,生产者)只测试了一些状态和一些场景,为危险的角落案例留下了潜在的空间。
Spectre 和 Meltdowns 是此类未经测试的极端情况,但由于现代 CPU 的复杂性,可能还有更多。