作用吧 关注:1,446贴子:1,896
  • 7回复贴,共1

缓存的作用

只看楼主收藏回复

缓存详细介绍
  SSD固态硬盘的应用率越来越高,用户对他的性能也非常满意。最近经常听到选择什么品牌的SSD,多大容量的够用,这些用户都知道SSD的速度非常快,但却不知道缓存在其中起到了重要的作用,而缓存的作用又在哪呢,下面笔者来介绍一下缓存的作用,以后大家在选购硬盘时也在缓存方面多加考虑。


1楼2013-04-17 14:33回复
      什么是缓存:
      其实“缓存”一词单纯从字面上理解可解释为延缓存放,简单的说“缓存”是为了平衡高速设备和低速设备之间的速度差异而存在的。作用是让低速设备尽量的不拖高速设备的后退。这里之所以用“尽量”一词,主要是各类产品中的缓存容量有限,算法也不可能100%的准确命中,所以低速设备多多少少还是会拖高速设备的后腿,缓存的作用只能是“尽量”减少这种现象。


    2楼2013-04-17 14:33
    回复
        例如CPU缓存;每当CPU从内存里读数据时,会向内存控制器发出一个读指令,要求内存控制器返回其要求的数据,可是因为内存响应速度相对于CPU是很慢的,所以在数据返回之前CPU只有无所事事的“等待”,如果经常出现这样的情况,再快的CPU也会被内存拖后腿,效率也不会提高。
        如图所示,在主内存(RAM)和CPU之间,放一块小容量的SRAM。当CPU申请RAM数据的时候,先在SRAM里面寻找,如果找到了数据,就不用花费很多时间到RAM里去读了(同步读取)。如果SRAM里没有数据,再到RAM去读,当RAM返回数据的时候,不仅仅返回原来所需要的数据,同时“捎带”返回所需数据“前后”的一些看似无关的数据,并将这些数据放入SRAM中。
        下次CPU再次到SRAM里读数据的时候,如果所需数据正好在SRAM里,就可以“命中”了。从原理上可以看出,命中率越高,CPU的效率就越高。而命中率又是被“捎带”返回的数据所决定的,哪些数据被捎带返回,这个就要依CPU内部的缓存算法而定了。由此可见,由于缓存容量远远小于主内存容量,而缓存算法也不可能100%的准确命中。


      3楼2013-04-17 14:33
      回复
        HDD中缓存的主要作用


        4楼2013-04-17 14:34
        回复
            缓存在机械硬盘中的作用:
            以上是以CPU缓存做例子。但是在电脑系统里,缓存并不仅仅是CPU独有,因为高速设备与低速设备的矛盾并不仅仅体现在CPU和内存之间。现在假如说,我要把数据从内存写入硬盘,由于硬盘相当缓慢,需要等待很长的时间才能完成此任务。那么用户体验就是电脑非常慢。实际上,这里CPU不慢,内存不慢,只是硬盘太慢了。
            解决机械硬盘速度过慢的问题,就在其内部安置了一个小容量的内存,也就是硬盘的缓存,数据首先写入到缓存里。那么在操作系统层面,就会认为数据已经写入了,用户的感觉就是快速。随后硬盘自己再从缓存写入到盘片,这个过程无需用户干预了。
            不过需要注意的是,其实硬盘的缓存并不全都用于缓存数据,还有其他用途,所以不见得缓存越大,性能就越好。而且还有个缓存算法问题。如果算法不优秀,命中率就不会高,这样大容量缓存形同虚设。


          5楼2013-04-17 14:34
          回复
            缓存的主要作用


            6楼2013-04-17 14:34
            回复
                缓存在SSD固态硬盘中的作用:
                刚才为大家介绍了什么是缓存,以及它在机械硬盘和内存中发挥的作用,其实缓存在SSD固态硬盘中发挥的作用也相差不远。SSD上的缓存一般都是1或者2颗DRAM颗粒构成,起到数据交换缓冲作用。一款SSD产品是否有缓存这样的设计,往往是厂商根据产品定位和用途做得决定,一般一些入门级产品或者低速产品,在设计上就会考虑不带缓存方案,而一些高速产品由于数据交换量大,就设计有缓存,以提高产品的读写效率。


              7楼2013-04-17 14:35
              回复
                  通常带有缓存的SSD在价格上或比不带缓存的略高一些,虽然SSD带缓存读取小文件的速度会快些,但对SSD来说,快的太有限了。就反应速度来说,SSD的反应速度一般都在0.2毫秒以内,不比缓存慢。所以带缓存对读取速度的提升,几乎可以忽略。其次带不带缓存并不影响SSD的寿命,决定SSD寿命的是NAND FLASH的写入次数。其次,主控芯片的好坏才是是决定SSD性能和使用寿命的重要因素。
                  通过笔者的介绍相信大家对缓存的作用有了深入的了解,另外我们可以看出缓存在内存、机械硬盘和SSD固态硬盘身上发挥作用的强弱是不一样的。缓存是为了平衡高速设备和低速设备之间的速度差异而存在的,其作用是让低速设备尽量的不拖高速设备的后脚。
                  缓存的主要功能在于是电脑有资料放到HDD时,因为HDD机械式运作比电脑慢很多,所以在HDD上放上缓存,暂时存储资料以便电脑能够继续做其他事情,不会因为HDD的动作慢,而拖慢了电脑的效能。而SSD的速度大幅提升,已经能够实时处理数据,缓存作为提升速度的作用就不大了。从上面解说中我们可以知道在固态硬盘中缓存的作用并不是非常大,他的主要作用还是其主控和闪存,而在机械硬盘中却非常重要,用户在选购时可以多关注一下。


                8楼2013-04-17 14:35
                回复