Memory management 页表中的有效位和脏位

Memory management 页表中的有效位和脏位,memory-management,operating-system,page-tables,Memory Management,Operating System,Page Tables,页表中的有效位是否有任何原因会被关闭(设置为无效)?另外,当使用脏位时,我知道脏位应该在有问题的页表条目上有写请求时设置。然而,为什么脏的部分有用呢 页表中的有效位是否有任何原因会被关闭(设置为无效) 由于创建了一个页表条目(pte)而初始化页表时,需要将该页表中的其他pte标记为无效,以便它们不会被使用 如果页面从内存中被踢出/交换,则需要将其pte标记为无效,以便操作系统可以在将来进行任何读/写操作时拦截页面错误,并将正确的内存交换回内存 另外,当使用脏位时,我知道脏位是 应该在页表上有写请

页表中的有效位是否有任何原因会被关闭(设置为无效)?另外,当使用脏位时,我知道脏位应该在有问题的页表条目上有写请求时设置。然而,为什么脏的部分有用呢

页表中的有效位是否有任何原因会被关闭(设置为无效)

  • 由于创建了一个页表条目(pte)而初始化页表时,需要将该页表中的其他pte标记为无效,以便它们不会被使用
  • 如果页面从内存中被踢出/交换,则需要将其pte标记为无效,以便操作系统可以在将来进行任何读/写操作时拦截页面错误,并将正确的内存交换回内存
  • 另外,当使用脏位时,我知道脏位是 应该在页表上有写请求时设置 有问题的条目。然而,为什么脏的部分有用呢


    脏位允许您检测哪些页面仅在内存中写入(尚未传播回磁盘)。如果操作系统想要逐出脏页,它会看到设置了脏位,现在知道应该在逐出页之前将更改写回磁盘。如果没有脏位,1)操作系统可能需要将页面的每一位与其备份磁盘页面进行比较,以在逐出页面之前检查页面是否脏,或者2)对于每一次逐出页面,操作系统都必须采用繁重的“始终回写”策略,即使页面是干净的、未写入的页面。

    非常感谢!嗨,shinybolt9,不客气。如果你认为这个或任何答案已经解决了你的问题,请考虑点击复选标记。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。