繁体   English   中英

处理器如何知道页面未映射到主内存中而是在后备存储中?

[英]How does a processor know that a page is not mapped in main memory but is in backing store?

在X86体系结构中,处理器如何知道页面未映射到主内存中而是位于后备存储中,是它们在页表项中的标志,该标志指示是否仅在处理器转换为物理地址后才能实现框架的位置? 根据我的理解,如果在页面结构条目中设置了“ P”标志,则表明该逻辑地址不存在有效的映射,并且在出现映射但页面位于后备存储的情况下出现了页面错误。还发生页面错误,页面被交换到内存中,并且页面表项被修改。

我认为您指的是HARD页面错误VS SOFT页面错误。 如果出现以下情况,将引发硬页面错误:

  • 未设置P(resent)标志/页表中不存在任何条目
  • 用户模式代码正在写入只读存储器
  • 用户模式代码正在访问内核内存
  • 页面条目保留位已损坏。

如果存在页面,但其他页面仍在内存中(可能在其他工作集上或离开工作集),则会触发软页面错误

http://blogs.technet.com/b/askperf/archive/2008/06/10/the-basics-of-page-faults.aspx http://en.wikipedia.org/wiki/Page_fault (次要vs主要)

希望这个帮助:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM