Search code examples
intelamd-processorspectre

Why did Meltdown and Spectre bugs go undiscovered for so long?


Why did Meltdown and Spectre bugs go undiscovered for so long?

Nearly 20 years these bugs have been present in the CPU's why wasn't this discovered sooner given the serious implications for all computers using these processors?


Solution

  • The answer is quite simple: modern CPUs have few billions transistors. For example, the latest Intel Skylake architecture has ~2 billion. Each transistor might have a state which influence the state of other transistors (i.e. those transistors are connected somehow).

    Basically, this means there is so many possible permutations or states of the modern CPUs, we simply are not able to test in a lifetime. So we (or rather producer) test just some of the states and in some scenarios, leaving a potential room for dangerous corner cases.

    Spectre and Meltdowns are such untested corner cases, but there might be much more there due to complexity of the modern CPUs.