Operating system MMU如何将程序从辅助内存加载到主内存

Operating system MMU如何将程序从辅助内存加载到主内存,operating-system,Operating System,当我打开一个没有缓存在主内存中的应用程序或程序时,会发生什么。 a) 操作系统如何知道在哪里查找程序? b) 如果假设无法加载所有页面,那么PCB中是否保留剩余页面的地址或至少剩余页面的起始地址? c) 另外,任何关于应用程序的信息都存在于主内存中,假设它以前从未被访问过,并且它不是必须存在于内存中的关键组件 欢迎提供任何答案、后续问题和澄清 编辑:我在网上浏览了很多链接,但没有一个确切说明发生了什么,也没有说明谁维护了这些信息。大多数情况下,页面错误处理程序会将程序放入主内存,我正在寻找更具体

当我打开一个没有缓存在主内存中的应用程序或程序时,会发生什么。 a) 操作系统如何知道在哪里查找程序? b) 如果假设无法加载所有页面,那么PCB中是否保留剩余页面的地址或至少剩余页面的起始地址? c) 另外,任何关于应用程序的信息都存在于主内存中,假设它以前从未被访问过,并且它不是必须存在于内存中的关键组件

欢迎提供任何答案、后续问题和澄清


编辑:我在网上浏览了很多链接,但没有一个确切说明发生了什么,也没有说明谁维护了这些信息。大多数情况下,页面错误处理程序会将程序放入主内存,我正在寻找更具体的内容。

阅读页面表格和页面错误。这就是它背后的机制。如果您想要非常具体的内容,请从intel或AMD下载x86 CPU手册,并阅读相关章节。

谷歌上有数百万篇关于分页内存管理的文章。可能更多,但没有具体说明发生了什么,每一篇都只说“页面被引入…”,我在寻找一些具体的内容。