【问题标题】:TLB Flushing in case of process context switching进程上下文切换时的 TLB 刷新
【发布时间】:2020-06-12 14:16:18
【问题描述】:

作为在进程上下文切换的情况下刷新TLB,为什么每个进程在给定电荷时在TLB中从头开始。

我们为什么不填写 TLB 中的前几个页表条目,因为它的工作方式与我们在内存管理中使用局部性引用的方式相同,即当一个进程开始执行时,它很可能会从指令 1 或加载到主存储器的前几页的第一条指令开始?

它可以减少执行过程中填充TLB的问题n加速系统。

【问题讨论】:

    标签: operating-system paging tlb


    【解决方案1】:

    CPU产生虚拟地址时,会在TLB中查找对应的page,如果TLB中不存在,则在下一级内存中查找,然后按如下方式放入TLB合适的替换算法。

    系统无法预测包含所谓“指令 1”的页面放置在哪个框架中。如果是这种情况,那么就不需要任何页面替换算法,而是可以按顺序替换所有需要的页面,例如用第一条指令的页面,用第二条指令的页面......等等。

    【讨论】:

      猜你喜欢
      • 2015-05-01
      • 2011-07-23
      • 2017-09-09
      • 2011-07-27
      • 1970-01-01
      • 1970-01-01
      • 2018-09-22
      • 2019-12-03
      相关资源
      最近更新 更多