在非虚拟化环境中,“移至CR3”指令是否会刷新来自所有处理器的所有非全局翻译。 TLB的?

时间:2017-10-07 22:34:49

标签: x86 intel microprocessors

在非虚拟化环境中,“移至CR3”指令会刷新来自所有处理器TLB 的所有非全局转换,还是来自当前处理器TLB的非全局转换 ,假设我们有一个统一的数据/指令TLB

1 个答案:

答案 0 :(得分:3)

仅定义为刷新当前处理器的TLB。但是,它也可能导致刷新额外的TLB条目。

英特尔SDM表示:“在支持超线程技术的处理器上,在一个逻辑处理器上执行的失效可能会使TLB中的条目和其他逻辑处理器使用的分页结构缓存无效。”

没有具体说明一个处理器上的失效是否会影响其他物理处理器上的TLB。但是,我认为这属于一般准则:“处理器不需要实现任何TLB。实现TLB的处理器可能随时使任何TLB条目无效。软件不应依赖于TLB的存在或TLB条目的保留。 “

任何比这更精确的答案都是特定于实现的。