要讲清楚 CPU、内存、虚拟内存、硬盘及其相互之间的关系,大概在教科书上得用一章若干节大几千字。但是,博客的特点决定了不能“太过专业”,更不能撰写“像裹脚布一样的天书”。因此,尝试用最简洁、最形象的描述力求说得明白
1、CPU即中央处理器,是英语“Central Processing Unit”的缩写。CPU从内存或缓存中取出指令,放入指令寄存器,并对指令译码分解成一系列的微操作,然后发出各种控制命令,执行微操作系列,从而完成一条指令的执行。
2、但是,CPU并不能直接调用存储在硬盘上的系统、程序和数据,必须首先将硬盘的有关内容存储在内存中,这样才能被CPU读取运行。因而,内存(即物理内存,是相对于硬盘这个“外存”而言)作为硬盘和CPU的“中转站”,对电脑运行速度有较大影响。
3、当运行数据超出物理内存容纳限度的时候,部分数据就会自行“溢出”,这时系统就会将硬盘上的部分空间模拟成内存——虚拟内存,并将暂时不运行的程序或不使用的数据存放到这部分空间之中,等待需要的时候方便及时调用。
4、由于内存是带电存储的(一旦断电数据就会消失),而且容量有限,所以要长时间储存程序或数据就需要使用硬盘(外存储器)。硬盘也会影响系统速度,因为系统从硬盘中读取数据并通过总线存入内存的速度也会影响系统运行的快慢。
——至于有的网络文章形象比喻:“CPU是工厂,硬盘是大仓库,内存是正规中转中心,虚拟内存是临时中转中心”,大致接近实际,但不完全准确。