计算机中的内存和外部存储器之间主要有以下区别。
在计算机组成中,内存是系统运行应用程序和缓存数据的地方,所以内存也叫操作内存; 而外部存储器只是存储数据的地方计算机可以没有外部存储器,但不能没有内存。假设内存容量足够大,并且计算机操作系统采用满载策略,则在计算机启动时,系统运行所需的所有数据一次性加载到内存中,那么启动后所有外部存储器都会断开,系统仍然可以正常运行。 然而,实际上,如果外部存储器出现故障,操作系统将关闭。 为什么? 这仅仅是因为现有内存不够大,无法容纳整个系统,因此操作系统使用延迟加载策略,根据用户操作将所需的数据从外部存储器加载到内存中。
在发生外部存储器故障时,只有外部存储器的计算机无法继续运行的另一个原因是确保用户数据不会丢失,这需要数据持久性。 但是,内存是典型的不支持持久化的存储设备,而外围设备是支持持久化的设备。 所谓持久性,就是只要存储设备本身不遭受物理损坏或故障,那么就不会因为电源的开启和关闭而丢失内容。
内在持久性和外在持久性是有区别的,根源在于电子元器件选择的差异,存储器中使用的电子元器件就像电线一样,有没有电源取决于电源; 外存中使用的电子元件就像小电池一样,可以充放电,有没有电就看自己了。
由于内存不具备持久性,因此内存中的数据经常被复制到外部存储器中,即它不是数据源; 同时,它不是数据的目的地,网络或本地系统和应用程序的运行产生的数据往往使用内存作为后站来建立和读写外部存储器。
内存直接与CPU交互,而外部内存只能通过内存与CPU交互。 这方面的差异不仅仅是因为在计算机的硬件结构中,内存比外部存储器更接近CPU; 这也是因为内部和外部的数据读写是有区别的。
其实CPU内部也有具有存储功能的组件,但数量有限; 而且,CPU是核心设备,往往不允许某个程序长时间占用,每个程序切换都需要存储相关的状态数据,而这些数据是CPU内部存储组件无法单独完成的,因此在CPU外部设置了一个专门用于存储运行数据的内存, 并且性能与CPU内部的存储组件相似,但设备更便宜,从而提供比CPU内部存储设备更大容量的存储设施。
忽略由于线距导致的速度差异,从组件本身的性能来看,计算机上读写速度最快的存储设备是CPU内部,其次是内存,然后是外部存储器。 在外部存储器中,SSD的读写速度比HDD快,因为充电和放电比物理形式的移动头部要快得多。 外部存储器读写速度的区别在于,无论充放电的速度有多快,都不如直通线的通断速度快。
内存作为与CPU交互的存储设施,必须具有很强的读写速度,否则将跟不上CPU的计算速度。 缓慢的内存读取和写入可以感知到缓慢的响应,而用户没有意识到 CPU 计算能力未得到充分利用。
总而言之,我想用一个比喻来形容记忆之于计算机,就像大脑之于人一样。 外部存储之于计算机,就像书籍之于人一样,而当人们死去时,书仍然存在。