程序开始的时候平凡页错误

当 CPU 开始打算执行这个地址的指令的时候,发现 0x0804800 到 900 都是空页面:

  1. CPU 就将控制权交给操作系统的专门的页错误处理例程
  2. 查询可执行程序到虚拟内存的映射关系表
  3. 通过找到空页面所在的 VMA 计算出相应的页面在可执行文件中的偏移
  4. 在物理内存中分配一个物理页面
  5. 将进程中的虚拟页和分配的物理页之间建立映射关系
  6. 将控制权还给进程,从刚才页错误的位置开始重新执行