為什么固態硬盤會掉速?怎么解決?
寫入的數據越多,性能也就會越差,后面寫入的數據不可能直接全部覆蓋原來寫過的數據,而是會放到一邊。主控把原來的數據擦除掉的時候,才能將后面的數據寫入到原來數據的位置上去。
為了有效改善這個問題,Microsoft牽頭做了個TRIM功能(XP等老系統無緣)。也就是說,一經有文件被刪掉或者被格式化了,系統就會馬上主動命令固態硬盤,把原來的數據給抹除了。
雖然這個想法是好的,可惜這個擦除,并不是實時完成的。系統:硬盤老兄,這個文件已經被刪除了,你可以擦了;固態硬盤:勞資現在忙,過會兒再搞!系統:……
意思是說,隨著越來越多的數據新寫入時,并不會第一時間“得到妥善安置”,這樣就會導致一定程度上降低固態硬盤的讀寫速度了。
全靠微軟搞定降速問題也不行,固態硬盤主控生產廠商也想出了一種方法,推出了一個GC垃圾回收的功能:GC相當于倉庫管理員,把一大堆混亂的數據按別類分出來放好。這個過程就需要占用一些閑置的存儲空間,這個道理應該搬過家的人都懂。
但是,當SSD讀寫數據時,同一時間進行GC操作(垃圾回收),這樣的實時GC對主控的性能需求較大,是個考驗。一邊要在空白區寫入數據,以此同時還需要兼顧沒用的無效數據的“拆遷”操作,這么頻繁而大流量的折騰SSD的話,SSD那個有限的讀寫壽命也就頂不住,實時GC操作也不太可取。
所以,大部分主控都是設置成休閑時GC,等到一定程度的時候才會完成這個操作。
這里還要補充一下,為什么浦科特被稱為永不掉速的SSD呢?原因就在于,這家伙真正實現了實時GC。這就一方面考驗固態的主控能力,另外一方面也考驗閃存顆粒的耐用性和穩定性(并不是在打廣告,可以自行百度或者對比一下)。所以浦科特的東西掉價比較穩,主控和顆粒都比較好。