它们之间的关系可以通过一个例子来说明。比如说打开一部电影,以下说明这部电影是怎么运行起来的。
首先要双击这部电影,这个“双击”是操作系统提供的一个操作。电影本身是放在硬盘上的,当我们通过鼠标对它进行双击之后,操作系统就会将硬盘上的这部电影拷贝到内存中。为什么要将它拷贝到内存中呢?因为CPU不能直接处理硬盘上的数据。所以要先将硬盘上的数据拷贝到内存中,然后再通过CPU处理内存里面的这部电影。处理的结果就是将一些数据变成图像、另一些数据变成声音。图像数据发送给显卡,通过显示器显示出来;声音数据发送给声卡,声卡将它变成声音放出来。这基本上就是一部电影的运行过程。
原因很简单,因为内存的速度比硬盘快很多。CPU的运行速度很快,硬盘的速度无法跟上CPU的速度,所以它们两个在运行的时候无法同步,因此CPU无法直接对硬盘进行操作。
狭义上的内存指的就是我们所说的内存条,但实际上CPU也不是直接操作内存的,因为内存的速度虽然比硬盘快很多,但仍然没有CPU快。所以在内存和CPU之间还有“缓存”,比如一级缓存、二级缓存。缓存的速度比内存更快,更加接近CPU的速度,所以CPU读取数据时操作的都是缓存。但广义上说,缓存也属于内存,所以我们就说CPU可以直接操作内存。
内存的速度之所以比硬盘的速度快(不是快一点,而是快很多),是因为它们的存储原理和读取方式不一样。硬盘是机械结构,通过磁头的转动读取数据。一般情况下台式机的硬盘为每分钟7200转,而笔记本的硬盘为每分钟5400转。而内存是没有机械结构的,内存是通过电存取数据的。电的速度当然要比磁头的运动快得多。所以,有机械结构的磁头的读取速度是不能同无机械结构的电的速度相比的。
那么内存的本质是什么呢?我们应该都听说过RAM存储器,它是一种半导体存储器件。RAM是英文单词Random的缩写,即“随机”的意思。所以RAM存储器也称为“随机存储器”。那么RAM存储器和内存有什么关系呢?内存就是许多RAM存储器的集合,就是将许多RAM存储器集成在一起的电路板。RAM存储器的优点是存取速度快、读写方便,所以内存的速度当然也就快了。
内存通过电存取数据,本质上就是因为RAM存储器是通过电存储数据的。但也正因为它们是通过电存储数据的,所以一旦断电数据就都丢失了。因此内存只是供数据暂时逗留的空间,而硬盘是永久的,断电后数据也不会消失。
计算机的内存一般是4GB,而硬盘的容量却是几百GB,甚至2TB。为什么内存的容量那么小?既然内存速度那么快为什么不造得大点?为什么不造得与硬盘一样大?原因主要有三个:第一,内存的速度之所以比硬盘快,是因为它们的构造不一样。对于同样的容量,内存的价格太贵。第二,内存只是暂时存储数据的,断电后数据就丢失了,而且它的速度很快,所以不需要那么大的容量。第三个原因与地址总线的数量有关,这个后面介绍指针的时候再讲。
那么CPU是如何操作内存的?一般是先将内存里面的数据读入CPU中,然后CPU对数据进行处理,处理完了再将结果写回内存,最后内存再将数据写入硬盘。
CPU对内存进行操作通过三根总线:控制总线、地址总线和数据总线。控制总线是传输控制信号的,比如时钟、复位、中断、读、写等。CPU是从内存中读数据还是向内存中写数据就是通过控制总线控制的。内存中有很多存储单元,数据都存储在这些单元中,每个单元都有一个地址。所以要想得到这些单元中的数据就必须先知道每个单元的地址。地址总线就是传输地址信息的;数据总线顾名思义就是传输单元中的数据的。
主板在计算机中起着重要作用。它作为计算机的核心配件之一,是计算机最重要的平台。那这个平台是干什么用的呢?台式机上所有的设备都是连在主机上的,而主机上有很多接口,这些接口全部都是连在主板上的。鼠标、键盘、耳机、显示屏等外部设备都是通过这些接口连到主板上的。在主机内部,电源、风扇、硬盘、光驱也都是连在主板上的。而CPU、内存条、显卡、声卡、网卡这些硬件则全部都是直接插在主板上的。
所以计算机中所有的硬件要么是连在主板上的,要么是直接插在主板上的,但不管怎么样都是与主板相连的。而且主板上有很多线路,所有硬件之间的信号传输也都是通过主板进行的,所有硬件通过主板被有效组织起来。
此外,主板还能接收电源提供的电能并加以分配,从而给各硬件供电。而且还能接收电源开关和操作系统发来的开机信号,从而实现开机、关机、待机、重启和休眠等操作。