存储器分类
●只读存储器(ROM)
ROM表示只读存储器(Read Only Memory),在制造ROM的时候,信息(数据或程序)就被存入并永久保存。这些信息只能读出,一般不能写入,即使机器停电,这些数据也不会丢失。
ROM一般用于存放计算机的基本程序和数据,如BIOS ROM。
现在比较流行的只读存储器是闪存( Flash Memory),它属于 EEPROM(电擦除可编程只读存储器)的升级,可以通过电学原理反复擦写。现在大部分BIOS程序就存储在 FlashROM芯片中。U盘和固态硬盘(SSD)也是利用闪存原理做成的。
●随机存储器(RAM)
随机存储器(Random Access Memory)表示既可以从中读取数据,也可以写入数据。当机器电源关闭时,存于其中的数据就会丢失。
RAM分为两种:DRAM和SRAM。
- DRAM( Dynamic RAM,动态随机存储器)的存储单元是由电容和相关元件做成的,电容内存储电荷的多寡代表信号0和1。电容存在漏电现象,电荷不足会导致存储单元数据出错,所以DRAM需要周期性刷新,以保持电荷状态。DRAM结构较简单且集成度高,通常用于制造内存条中的存储芯片。
- SRAM( Static RAM,静态随机存储器)的存储单元是由晶体管和相关元件做成的锁存器,每个存储单元具有锁存“0”和“1”信号的功能。它速度快且不需要刷新操作,但集成度差和功耗较大,通常用于制造容量小但效率高的CPU缓存。
●高速缓冲存储器(Cache)
Cache也是我们经常遇到的概念,也就是平常看到的一级缓存(L1 Cache)、二级缓存(L2 Cache)、三级缓存(L3 Cache)这些数据,它位于CPU与内存之间,是一个读写速度比内存更快的存储器。当CPU向内存中写入或读出数据时,这个数据也被存储进高速缓冲存储器中。当CPU再次需要这些数据时,CPU就从高速缓冲存储器读取数据,而不是访问较慢的内存,当然,如需要的数据在Cache中没有,CPU会再去读取内存中的数据。
动态随机存取存储器
动态随机存取存储器(Dynamic Random Access Memory,DRAM)是一种半导体存储器,主要的作用原理是利用电容内存储电荷的多寡来代表一个二进制比特(bit)是1还是0。由于在现实中晶体管会有漏电电流的现象,导致电容上所存储的电荷数量并不足以正确的判别数据,而导致数据毁损。因此对于DRAM来说,周期性地充电是一个无可避免的要件。由于这种需要定时刷新的特性,因此被称为“动态”存储器。相对来说,静态存储器(SRAM)只要存入数据后,纵使不刷新也不会丢失记忆。
与SRAM相比,DRAM的优势在于结构简单——每一个比特的数据都只需一个电容跟一个晶体管来处理,相比之下在SRAM上一个比特通常需要六个晶体管。正因这缘故,DRAM拥有非常高的密度,单位体积的容量较高因此成本较低。但相反的,DRAM也有访问速度较慢,耗电量较大的缺点。
与大部分的随机存取存储器(RAM)一样,由于存在DRAM中的数据会在电力切断以后很快消失,因此它属于一种易失性存储器(volatile memory)设备。
缓存介绍
缓存在内存、机械硬盘和SSD固态硬盘身上发挥作用的强弱是不一样的。缓存是为了平衡高速设备和低速设备之间的速度差异而存在的,其作用是让低速设备尽量的不拖高速设备的后腿。
注意:
各类产品中的缓存容量有限,算法也不可能100%的准确命中,所以低速设备多多少少还是会拖高速设备的后退,缓存的作用只能是“尽量”减少这种现象。
举例:
为了解决机械硬盘速度过慢问题,就在其内部安置了一个小容量的内存,也就是硬盘的缓存,数据首先写入到缓存里。
硬盘缓存的作用
在机械硬盘中,缓存主要发挥了加速读取的作用。如果一个数据刚刚被读取过,将临近它位置的数据保留在DRAM缓存中,就有机会被下一次读取命中——直接从DRAM缓存读出的速度远比从机械盘片读取快的多。
缓存命中意味着性能大幅提升,这就是机械硬盘缓存的主要作用。理论上大缓存的确有助于提升机械硬盘的读取性能,但是提升幅度是非常有限的:它对于最重要的随机读取速度没有帮助,提高的是连续读取速度。
固态硬盘对于DRAM缓存的需要并不是缓存数据,而是储存对固态硬盘至关重要的FTL闪存映射表:管理逻辑地址与闪存物理地址的映射关系。
随着技术的发展,DRAM缓存早已不是固态硬盘的必备组件。透过最新NVMe协议,固态硬盘可以调用主机内存的一小部分专用空间储存FTL映射表,实现精简增效。
固态硬盘寿命问题
带不带缓存并不影响SSD的寿命,决定SSD寿命的是NAND FLASH(flash存储器的一种,是控制单元)的写入次数。其次,主控芯片的好坏才是决定SSD性能和使用寿命的重要因素。