1

在 Intel 页表结构中,有一个“page global”位,表示页表条目是全局使用的。据我了解,在覆盖CR3导致TLB刷新期间,不会刷新此全局条目。我的问题是,我们是否可以假设全局 PTE 条目一旦设置就永远不会从 TLB 中刷新?

4

1 回答 1

5

你不能这样假设。刷新 TLB 条目的原因有很多,例如:

  • TLB 已满,需要缓存一个新条目,并用新条目替换有问题的条目。
  • 有一条指令可以显式地使 TLB 条目无效,该指令也可用于此类页面。
  • 除了 CR3 之外,还有许多其他情况,HW 将完全刷新 TLB 以保持一致性。

简而言之,您不能假设一旦页面翻译在 TLB 中,它就会一直保留在那里。

于 2014-01-13T06:26:05.757 回答