1 关于硬盘中存储技术
1.1 LMR(Longitudinal Magnetic Recording)水平磁记录
电脑硬盘在早期都是LMR的磁记录方式,但是这种水平磁记录方式导致硬盘的容量是个瓶颈,很难突破。所以有了后来的PMR垂直磁记录,PMR出现后,硬盘的容量出现了突破,PMR逐渐替代了LMR成为主流。
1.2 PMR(Perpendicular Magnetic Recording)垂直磁记录
随着技术的发展,现在PMR的磁记录方式里,又细分出了两种形式:
CMR和SMR (这两者是相互的一对概念)。
CMR称为传统磁记录方式,这种方式保留了最早PMR替代LMR时的传统技术,即:磁道间留有保护间距,数据不会被重复叠写。而SMR则被称为叠瓦式磁记录,是有重叠的磁记录方式,在长时间写入数据的时候,可能会出现速度急剧下降的情况。以下是情况说明:
总结:SMR硬盘,在修改某一区域数据时,为了不影响后面的区域,需要在覆写时,需要先将被影响的数据转移。所以导致SMR硬盘需要大的缓存。这也导致了为什么越用越慢。
关于缓存:缓存是CPU的一部分,它存在于CPU中
CPU存取数据的速度非常的快,一秒钟能够存取、处理十亿条指令和数据(术语:CPU主频1G),而内存就慢很多,快的内存能够达到几十兆就不错了,可见两者的速度差异是多么的大
缓存是为了解决CPU速度和内存速度的速度差异问题(存取速度:CPU>缓存>内存>硬盘)
内存中被CPU访问最频繁的数据和指令被复制入CPU中的缓存,这样CPU就可以不经常到象“蜗牛”一样慢的内存中去取数据了,CPU只要到缓存中去取就行了,而缓存的速度要比内存快很多
这里要特别指出的是:
1.因为缓存只是内存中少部分数据的复制品,所以CPU到缓存中寻找数据时,也会出现找不到的情况(因为这些数据没有从内存复制到缓存中去),这时CPU还是会到内存中去找数据,这样系统的速度就慢下来了,不过CPU会把这些数据复制到缓存中去,以便下一次不要再到内存中去取。
2.因为随着时间的变化,被访问得最频繁的数据不是一成不变的,也就是说,刚才还不频繁的数据,此时已经需要被频繁的访问,刚才还是最频繁的数据,现在又不频繁了,所以说缓存中的数据要经常按照一定的算法来更换,这样才能保证缓存中的数据是被访问最频繁的。
1.3 关于硬盘的原理
固态硬盘SSD(Solid State Disk)VS 机械硬盘HDD(Hard Disk Drive)
1.3.1 外观造型、体积上的差异
M.2接口的固态硬盘跟3.5英寸的机械硬盘比起来,小太多了。传统的机械硬盘哪怕是笔记本上装的mini版本也有2.5英寸,像小搬砖一样,装在笔记本上自然很笨重。
SSD固态硬盘的SATA接口产品,最大的是2.5英寸,M.2小巧灵活。
SSD固态硬盘推动了轻薄笔记本的发展,SSD固态硬盘和机械硬盘两者体积对台式电脑没有多大区别,但是对笔记本来说差别就很大了。
另外,m2接口只能接固态硬盘,而SATA口可以接固态或机械盘均可
补充1:m2接口和SATA口
首先,先了解固态硬盘的总线和协议
SATA总线速度最大不超过550MB/S
PCI-E总线速度在1000MB/S以上
1)普及度最高的SATA3.0接口
SATA是硬盘接口的标准规范,也是目前应用最多的硬盘接口,从最初的SATA1.0进化如今的SATA3.0,普通2.5英寸SSD以及HDD硬盘都使用这种接口,理论传输带宽6Gbps,其最大的优势就是成熟,兼容的设备多,普及程度也比较高。
2)老笔记本中常见的mSATA(主要是为了超薄本,本质与SATA接口并无区别)
mSATA接口的诞生,是为了更适应于超极本这类超薄设备的使用环境。你可以把它看作标准SATA接口的mini版,依然执行的是SATA协议,使用着SATA通道,速度也还是6Gbps。可随着更具有升级潜力的M.2 接口的出现,mSATA面临了被淘汰命运。
3)m2接口
M.2接口,最初叫做NGFF,是为超极本(Ultrabook)量身定做的新一代接口标准,具有体积更小巧,接口传输性能更快的特点,主要是用来取代原来的mSATA接口。
M.2接口又分为B key(Socket 2)和M key(Socket 3)两种,其中Socket 2走SATA通道、PCI-E 2.0 x 4通道(这里指的是接口速率4GB/s),最大理论读写速度分别达到700MB/s、550MB/s。而Socket 3专为高性能存储设计,PCI-E 3.0 x 4通道,速度可达到32Gbps,接近4GB/S的带宽,比SATA快5倍之多,目前的M.2接口已全面转向PCI-E 3.0 x4通道。
4)PCI-E接口:
早在SATA接口SSD发展之初,就已经出现了PCI-E接口的SSD。其是直接插到主板上的PCI-E接口上,由于其和CPU是直通的传输方式,传输带宽上的优势很大,速度远远快于SATA的接口方式。
5)不怎么常见的U2接口
U.2接口别称SFF-8639,U.2兼容SAS、SATA等规范,其最大特色就是支持NVMe标准协议,高速低延迟低功耗,带宽走PCI-E 3.0 x4,理论传输速度高达4GB/S。但在消费级领域U.2目前普及率也非常差。
1.3.2 读写速度差异
读写速度是两者的主要差别,固态硬盘相比机械硬盘有质的飞跃:
补充2:关于SSD传输协议——AHCI/NVMe的区别
SSD(固态硬盘)最为主流的传输协议有两种。一种是AHCI协议,另一种是NVMe协议。
1)AHCI协议
AHCI,全称为串行ATA高级主控接口/高级主机控制器接口,是在Intel的指导下,由多家公司联合研发的接口标准,它允许存储驱动程序启用高级串行ATA功能。
我们在使用SATA SSD的时候,一定要在主板设置中开启AHCI模式。
这是因为,开启AHCI模式后,能够大幅缩短SSD无用的寻道次数和缩短数据查找时间,这样能让多任务下的SSD能够发挥全部的性能和效应。根据相关性能测试,在AHCI模式开启后,大约增加30%的SSD读写性能。
2)NVMe协议(代表未来性能的走向)
所谓NVMe协议,是一种基于非易失性存储器的传输规范,NVMe规范由包含90多家公司在内的工作小组所定制,Intel是主要领头人,小组成员包括美光、戴尔、三星、Marvell、NetAPP、EMC、IDT等公司。
此规范目的在于充分利用PCI-E通道的低延时以及并行性,还有当代处理器、平台与应用的并行性,在可控制的存储成本下,极大的提升SSD的读写性能,降低由于AHCI接口带来的高延时,彻底解放SATA时代SSD的极致性能。
换言之,NVMe协议的诞生就是为了从传输协议出发,进一步提升SSD的实际读写性能,提高产品传输效率。
一般来说,基于NVMe协议的SSD在读写性能上都远远超过了SATA接口极限的6Gbps,接近1000MB/S。
除此之外,目前支持NVMe协议的SSD在接口类型上,也几乎都是M.2接口,走PCI-E通道的,也就是说所有基于SATA接口的SSD都无法支持NVMe协议传输协议,无法享受全新协议带来的极限性能。(所以一般还是选择m2接口)。
1.3.3 寿命的差异
目前情况是:SSD固态硬盘寿命不如机械硬盘,但是正常使用情况下,你的电脑淘汰了,你的SSD固态硬盘依然可以用!
工作原理的差异:
1)机械硬盘的写入方式是覆盖
2)固态硬盘的写入方式则是擦除后重新写入
读取并不会导致SSD固态硬盘寿命的减少,只有写入才会!!!
比如:一块256GB的SSD固态硬盘,只要你不是暴力把他弄坏了,他是可以写入760TB的文件才会因为过多写入损坏,如果你每天写200G的数据进去,这块硬盘能够正常使用10多年,如果你每天暴力写入数据2TB,也可以正常使用一年,但是我们用户,正常情况下是写不下那么多数据的。
所以,寿命这个问题,可以忽略
1.3.4 价格的差异
SSD的唯一缺点就是贵,但是性能全面碾压HDD,这点也就无所谓了。。。
1.4 关于固态硬盘的参数
1.4.1 固态硬盘的存储颗粒
颗粒是固态硬盘存储数据的东西
存储颗粒分为四种类型:
S(single)LC颗粒:每个存储单元只存1bit数据
M(multi)LC颗粒:每个存储单元存储2bit数据
T(triple)LC颗粒:每个存储单元存储3bit数据
Q(quad)LC颗粒:每个存储单元存储4bit数据
一个硬盘上有很多颗粒(货架)
SLC货架上只有一个货物,所以找货物的速度块,不容易出错。
TLC货架上有三个货物,所以要按顺序查找,寻找需要的货物,同时需要确认是否正确,需要时间,速度就慢了下来,同时由于使用频率高,所以寿命也就比SLC和MLC短很多。用上三五年没问题,正常情况下也该换了。同时价格也便宜,所以目前市面上很多都是采用的TLC颗粒。
可以自主生产内存颗粒的厂商有:
intel(太贵了)
三星(可)
镁光(英睿达) (可)
海力士 (可)
东芝(可)
闪迪(可)
长江存储(2020)
不能自主生产内存颗粒的厂商,但是用的是以上厂商生产合格颗粒的品牌有:
建兴
浦科特
一般建议选自可以自主生产内存颗粒的厂商
市面上还有很多“白片”“黑片”的固态硬盘:
这个一张图就很清晰明了了,还是要选原片,不要被卖家骗了,没有性价比,跟别觉得高性价比。
阿斯加特一类的是白片,华强北的都是黑片
1.4.2 固态硬盘的主控
主控负责硬盘所有数据的管理,相当于仓库的管理员,负责将对应的数据(货物)编号并放到合适的存储颗粒(货架)上。
对于TLC固态硬盘来说,每个货架上三个货物,对管理员来说是不小的压力。在高负荷的情况下,差的主控会比存储颗粒早先停止工作,所以对主控的要求就比较高,要求硬件要好的同时固件(系统)也要好。
比较好的主控有:
马牌
三星
英特尔
还有做的不错的有东芝、慧荣、群联
补充:什么是固态硬盘的主控
固态硬盘的构成可以分为三个部分:主控芯片、闪存颗粒和其他。主控芯片是固态硬盘的大脑,地位作用与电脑中的CPU相似,是整个固态硬盘的核心器件。其作用一是合理调配数据在各个闪存芯片上的负荷,二则是承担了整个数据中转,连接闪存芯片和外部SATA接口。
不同的主控之间能力相差非常大,在数据处理能力、算法上,对闪存芯片的读取写入控制上会有非常大的不同,直接会导致固态硬盘产品在性能上产生很大的差距。劣质主控不单单会影响产品性能,更有可能比颗粒坏的更早,影响产品使用寿命。
1.4.3 固态硬盘的缓存
缓存有两种:
DDR:速度很快,跟内存条差不多
slc-cache:SLC缓存,因为大多数是TLC的硬盘,所以优先使用SLC缓存,模拟SLC颗粒进行工作。所以在传输大文件的时候,会有明显的掉速现象。