固态硬盘(SSD)有缓存和没有缓存有什么区别

发布网友 发布时间:2022-03-23 14:21

我来回答

6个回答

热心网友 时间:2022-03-23 15:51

随着SSD固态硬盘的普及,如今带有缓存的SSD价格也逐渐被用户接受,虽然我们知道没有缓存的SSD在价格上会比有缓存的略贵一些,但是缓存究竟在SSD固态硬盘中发挥了怎样的作用并不是每个用户都了解。其实“缓存”一词单纯从字面上理解可解释为延缓存放,简单的说“缓存”是为了平衡高速设备和低速设备之间的速度差异而存在的。作用是让低速设备尽量的不拖高速设备的后退。这里之所以用“尽量”一词,主要是各类产品中的缓存容量有限,算法也不可能100%的准确命中,所以低速设备多多少少还是会拖高速设备的后腿,缓存的作用只能是“尽量”减少这种现象。例如CPU缓存;每当CPU从内存里读数据时,会向内存控制器发出一个读指令,要求内存控制器返回其要求的数据,可是因为内存响应速度相对于CPU是很慢的,所以在数据返回之前CPU只有无所事事的“等待”,如果经常出现这样的情况,再快的CPU也会被内存拖后腿,效率也不会提高。如图所示,在主内存(RAM)和CPU之间,放一块小容量的SRAM。当CPU申请RAM数据的时候,先在SRAM里面寻找,如果找到了数据,就不用花费很多时间到RAM里去读了(同步读取)。如果SRAM里没有数据,再到RAM去读,当RAM返回数据的时候,不仅仅返回原来所需要的数据,同时“捎带”返回所需数据“前后”的一些看似无关的数据,并将这些数据放入SRAM中。下次CPU再次到SRAM里读数据的时候,如果所需数据正好在SRAM里,就可以“命中”了。从原理上可以看出,命中率越高,CPU的效率就越高。而命中率又是被“捎带”返回的数据所决定的,哪些数据被捎带返回,这个就要依CPU内部的缓存算法而定了。由此可见,由于缓存容量远远小于主内存容量,而缓存算法也不可能100%的准确命中。缓存在机械硬盘中的作用:以上是以CPU缓存做例子。但是在电脑系统里,缓存并不仅仅是CPU独有,因为高速设备与低速设备的矛盾并不仅仅体现在CPU和内存之间。现在假如说,我要把数据从内存写入硬盘,由于硬盘相当缓慢,需要等待很长的时间才能完成此任务。那么用户体验就是电脑非常慢。实际上,这里CPU不慢,内存不慢,只是硬盘太慢了。解决机械硬盘速度过慢的问题,就在其内部安置了一个小容量的内存,也就是硬盘的缓存,数据首先写入到缓存里。那么在操作系统层面,就会认为数据已经写入了,用户的感觉就是快速。随后硬盘自己再从缓存写入到盘片,这个过程无需用户干预了。不过需要注意的是,其实硬盘的缓存并不全都用于缓存数据,还有其他用途,所以不见得缓存越大,性能就越好。而且还有个缓存算法问题。如果算法不优秀,命中率就不会高,这样大容量缓存形同虚设。缓存在SSD固态硬盘中的作用:刚才为大家介绍了什么是缓存,以及它在机械硬盘和内存中发挥的作用,其实缓存在SSD固态硬盘中发挥的作用也相差不远。SSD上的缓存一般都是1或者2颗DRAM颗粒构成,起到数据交换缓冲作用。一款SSD产品是否有缓存这样的设计,往往是厂商根据产品定位和用途做得决定,一般一些入门级产品或者低速产品,在设计上就会考虑不带缓存方案,而一些高速产品由于数据交换量大,就设计有缓存,以提高产品的读写效率。通常带有缓存的SSD在价格上或比不带缓存的略高一些,虽然SSD带缓存读取小文件的速度会快些,但对SSD来说,快的太有限了。就反应速度来说,SSD的反应速度一般都在0.2毫秒以内,不比缓存慢。所以带缓存对读取速度的提升,几乎可以忽略。其次带不带缓存并不影响SSD的寿命,决定SSD寿命的是NANDFLASH的写入次数。其次,主控芯片的好坏才是是决定SSD性能和使用寿命的重要因素。文章总结:通过笔者的介绍相信大家对缓存的作用有了深入的了解,另外我们可以看出缓存在内存、机械硬盘和SSD固态硬盘身上发挥作用的强弱是不一样的。缓存是为了平衡高速设备和低速设备之间的速度差异而存在的,其作用是让低速设备尽量的不拖高速设备的后脚。缓存的主要功能在于是电脑有资料放到HDD时,因为HDD机械式运作比电脑慢很多,所以在HDD上放上缓存,暂时存储资料以便电脑能够继续做其他事情,不会因为HDD的动作慢,而拖慢了电脑的效能。而SSD的速度大幅提升,已经能够实时处理数据,缓存作为提升速度的作用就不大了。由此我们可以得出依据缓存大小判断SSD速度并不科学,固态硬盘速度快慢主要由主控芯片和闪存颗粒品质决定。

热心网友 时间:2022-03-23 17:09

有缓存优势是性能一致性更好,也就是空盘和满盘性能差距不会太大,缺点是掉电容易丢数据,需要额外的掉电保护电路和在固件中加入掉电保护逻辑。
无缓存优势是掉电相对不容易丢失数据,以及更好的成本控制,缺点就是4k性能会比较难看,而且性能一致性不够好,不适合高负载的场合,比如数据库服务器等。
普通用应该是觉不出多大的区别的。

热心网友 时间:2022-03-23 18:43

当然是有缓存的好了,我在想有没有没缓存的?(开玩笑都有缓存)缓存作用读写小数据避免反复读写,起到暂时存放数据,所有你缓存越大你读写时存的小数等数据越多就越快,还有那个说成内存的胡说八道,内存是加电储存断电里面的数据全部消失起的是暂时存储的作用,而硬盘(不管物理硬盘、固态硬盘)都一样起到是永久储存的作用。

热心网友 时间:2022-03-23 20:35

之前机械硬盘在读取的时候受到寻道延迟的影响,因此在读取等待的过程中会浪费大量的时间,因此才推出了硬盘缓存的机制来预先缓存数据,但是对于固态硬盘来说已经不存在寻道延迟的现象,固态硬盘的寻道时间接近0。因此固态硬盘的可以说是不需要硬盘缓存的。

热心网友 时间:2022-03-23 22:43

而且注意一点,写入缓存的数据不一定会写入到固态硬盘上,只有最终需要保存的数据才会写入到硬盘的FLASH芯片上,这个由程序和系统控制。因此,具备较大缓存有助于减少固态硬盘上FLASH芯片的读写次数,延长了芯片的使用时间。 因此还是带缓存芯片的固态硬盘好一点,固态硬盘的缓存容量通常比机械硬盘的缓存大很多,只有这样才有用,现在很多固态硬盘的缓存都是256MB的,当然不一定越大越好,主要还是在软件与驱动的优化控制上。 选择固态硬盘的时候主要看主控芯片和闪存芯片的型号,然后到网上搜集评价信息。

热心网友 时间:2022-03-24 01:07

缓存越大能更快打开的软件游戏越多,越大·``而且缓存区还有减少硬盘读写次数延长硬盘寿命的作用·~·

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
15.1914s