来自维基百科:
页表查找失败可能有两个原因。第一个是如果虚拟地址没有可用的转换,这意味着虚拟地址无效。
此外,如果每个进程都有自己的页表,这意味着页表中的条目都会有一些从虚拟地址到物理地址的转换。那么页表条目无效是什么意思呢?如果条目存在,则表示翻译存在,因为条目不过是从虚拟地址到物理地址的映射。
来自维基百科:
页表查找失败可能有两个原因。第一个是如果虚拟地址没有可用的转换,这意味着虚拟地址无效。
此外,如果每个进程都有自己的页表,这意味着页表中的条目都会有一些从虚拟地址到物理地址的转换。那么页表条目无效是什么意思呢?如果条目存在,则表示翻译存在,因为条目不过是从虚拟地址到物理地址的映射。
恕我直言,维基百科条目并不处理所有情况。对于给定的虚拟地址,转换的第一步是找到相应的页表条目。
问题一:页表项可能根本不存在。操作系统可能会限制页表大小,使其不覆盖整个虚拟地址范围,并且指定的地址超出该范围。这也可能发生在未填写所有级别的多级页表中。
问题2:页表项存在,但该页没有映射到虚拟地址空间。
{前两个最有可能被归类为无效页表条目)
问题3:页面不在物理内存中[Page fault]。
问题 4:请求的访问类型在当前处理器模式下是不允许的。例如,用户模式写入只允许用户模式读取的页面;内核模式执行到只允许读写的页面。