我们知道缓解某些微处理器中的 Meltdown 和 Spectre 漏洞的短期措施,其中推测性执行对缓存时间有可衡量的影响(主要是微代码、操作系统和任何包含信任边界的应用程序的补丁)。
该问题的长期解决方案是什么?
显然,简单的解决方案,例如“不推测”或“推测时忽略缓存”,由于首先引入推测的性能考虑,不太可能被接受。
也许推测的指令可以使用单独的缓存,只有在推测成功时才会复制到主缓存?如果不是,为什么不呢?
处理器能否将特权信息添加到页表条目,以使内核页表隔离自动(并减少其性能影响)?
是否有其他设计更改可以在不影响性能的情况下提高安全性?