0

我正在阅读操作系统概念的Chap9,纯需求分页的概念描述如下:

在极端情况下,我们可以开始执行内存中没有页面的进程。当操作系统将指令指针设置为进程的第一条指令时,该指令位于非内存驻留页面上,进程立即为该页面出错......

但是如果没有页面,特别是包含代码的页面,在内存中,操作系统如何知道程序计数器首先在哪里?通过检查磁盘上的程序映像是否将程序计数器设置为进程创建的一部分?如果是这样,我会假设操作系统知道二进制图像的格式,并且可以直接访问磁盘上的该信息。如果操作系统决定不将包含此信息的页面以某种方式存储在程序执行期间不需要的程序映像部分中,那么它才有意义。

总而言之,我想知道:

  • 如果使用纯需求分页,如何为新进程设置程序计数器?
  • 是否有任何真正的操作系统使用纯按需分页,它有什么好处?
  • 可执行文件的二进制格式(例如 ELF、PE 格式)如何帮助操作系统进行请求分页(操作系统至少需要知道第一页在哪里?)
4

0 回答 0