分配页面

当进程通过 sbrkmmap 等系统调用请求新页面时,操作系统执行虚拟页的分配操作。这与物理内存的分配是两个不同的阶段。

分配步骤

  1. 操作系统在磁盘的交换空间(swap space) 中为新的虚拟页创建空间。
  2. 更新页表中该虚拟页的PTE,使其指向磁盘上的交换空间位置,并将有效位设为0。
  3. 此时该页并未占用任何物理内存,仅消耗了磁盘交换空间。

当进程首次访问这个新分配的虚拟页时,会触发缺页,操作系统才会将数据从磁盘加载到物理内存中。这种延迟分配策略(Demand Paging)充分利用了局部性原理,避免为从未访问的页面浪费物理内存。

链接到