当页表条目(PTE)没有被标记为有效时,这意味着所需的数据不在内存中,而是在磁盘上。所以现在页面错误发生了,操作系统负责将这页数据从磁盘加载到内存。
我的问题是,操作系统如何知道确切的磁盘地址?
最佳答案
您以系统相关的方式询问。未标记为有效的 PTE 可能意味着该地址在进程地址中根本不存在。系统可能有另一个位来指示地址有效但逻辑到物理映射不存在。
操作系统需要维护一个表,记录数据的存放位置。
数据可以存在于多个地方。
1. 可能是未初始化的数据,在任何地方都没有映射。通过清除物理页面并将其映射到进程地址空间来响应页面错误。
关于operating-system - 当页面错误发生时,操作系统从哪里获得所需的磁盘地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27579864/