内存管理笔记四、虚拟内存概念的引入
引言:虚拟内存是实际存储架构与程序员对内存要求之间的一座桥梁,是操作系统为用户提供的一种“幻象”,其构建在内存架构的顶端,给用户提供一个比物理主存空间大许多的地址空间。
一、产生背景
1.1、程序员对内存的要求
计算机的一个基本功能是计算,其计算除了需要硬件之外,还需要两种信息:数据和代码。它们是计算机硬件CPU的输入,没有这些,CPU也是“巧妇难为无米之炊” ——无法进行计算。那么,这些信息存放在哪里呢?显然存放这些东西的地方需要能够很快地将数据读出写入,以便能够与CPU合作完成计算机赋予的功能。这个地方就是计算机的主存储器,简称为主存。
理想状态下,程序员或用户对内存的要求是:“大容量、高速度和持久性”。
1.2、计算机硬件物理现状
但程序员面临的物理现实却是一个由缓存、主存、磁盘等组成的内存架构。这这个内存的现实架构中,缓存的特点是低容量(相对于主存来说)、高速度、高价格;主存的特点是中容量、中速度、中价格;磁盘则属于大容量、低速度、低成本的存储媒介;其存储容量与读取速度简化图如下:
图1、内存容量与I/O速度的反比关系
1.3、