请求分页和页面替换有什么区别?

What is the difference between demand paging and page replacement?

据我了解,按需分页基本上就是带交换的分页,因此您可以在需要时交换页面。但是页面替换似乎或多或少是一回事,您需要引入一个页面并将其与物理内存中的现有页面切换。

所以有明显的区别吗?

在使用请求分页的系统中,只有在尝试访问磁盘页面并且该页面不在内存中时(即,如果发生页面错误),操作系统才会将磁盘页面复制到物理内存中。因此,进程开始执行时其页面的 none 在物理内存中,并且会发生许多页面错误,直到进程的大部分工作页面集位于物理内存中。这是延迟加载技术的一个例子。

来自Wikipedia's Demand paging:

Demand paging follows that pages should only be brought into memory if the executing process demands them. This is often referred to as lazy evaluation as only those pages demanded by the process are swapped from secondary storage to main memory. Contrast this to pure swapping, where all memory for a process is swapped from secondary storage to main memory during the process startup.

然而,页面替换只是发生页面错误时执行的技术。 页面替换是一种用于纯交换和请求分页的技术。

页面替换简单来说就是在内存和磁盘之间交换两个进程。

Demand Paging 是一种只将需要的页面带入内存的概念。如果所需页面不在内存中,系统会在内存中查找空闲帧。如果没有空闲帧,则进行页面替换以将所需页面从磁盘带到内存。