虚拟地址空间与物理地址空间映射

概述

CPU为什么要使用虚拟地址空间与物理地址空间映射?解决了什么样的问题?

解释

  1. 方便编译器和操作系统安排程序的地址分布.
    程序可以使用一系列相邻的虚拟地址来访问物理内存中不相邻的大内存缓冲区.

  2. 方便进程之间间隔
    不同进程使用的虚拟地址彼此隔离.一个进程中的代码无法更改正在由另一个进程使用的物理内存.

  3. 方便OS使用你电脑可怜的内存
    程序可以使用一系列虚拟地址来访问大于可用物理内存的内存缓冲区.当物理内存的供应量变小时,
    内存管理会将物理内存页(通常大小为4KB)保存到磁盘文件.数据或代码会根据需要在物理内存与
    磁盘之间移动.