隨著固態硬盤SSD的大量上市,很多人都準備放棄機械硬盤。固態硬盤不像傳統機械硬盤那么簡單 ,就算買到了高性能的固態硬盤,不會用的話,同樣無法發揮其性能。
對于機械硬盤來說,通常關注的是轉速,緩存和容量(少數時候需要關注固件版本),在規格參數相同的情況下,各品牌的機械硬盤性能差別不會太大。不過對于固態硬盤來說就完全不是一回事了,對了固態硬盤本身沒有一個行業內的明文規定,再加上它使用的是閃存顆粒,數據結構和存儲方式與機械硬盤完全不同,因此不同品牌的固態硬盤產品的規格有很大的不同,單憑容量、顆粒數量和緩存是無法準確判斷固態硬盤性能的。固態硬盤的性能表現不僅與容量、顆粒數量和緩存有關,而且與是否支持Trim技術、是否支持Garbage collection技術、操作系統以及驅動程序的支持程度有關。
當一個文件被刪除后,操作系統其實并沒有刪除數據,事實上,它只是在硬盤前得索引區里標記這塊文件占用的區域為可覆蓋的,所以下次數據將要再次寫入的時候,可以覆蓋寫入這塊被標記的區域。普通的機械硬盤可以直接覆寫舊的區域,而固態硬盤進行的讀寫動作卻與機械硬盤完全不同,而這就是固態硬盤在使用一段時間后性能直線下降的原因:在全部閃存被寫滿一遍后,沒有從未被寫過的快可以使用的情況下,閃存不會直接覆寫區域,而是必須進行擦除之后,才能再次被用于寫入。在固態硬盤閃存內,數據存儲一般以頁(Page)為最小單位存儲的(典型的為4KB),而128個頁組成了一個塊(block),數據可以以4KB大小的頁來讀取和寫入,但卻只能以512KB(128頁)的塊大小來刪除。當讀取數據或者寫入到一個沒有被使用過得頁山時,固態硬盤的速度是很快的,但是覆寫數據的話,只能覆寫數據到之前被操作系統標記為刪除的區域:首先要把整個521KB塊復制進緩存里,然后在緩存里刪除整個4KB頁,替換成新的數據,接著清空整個閃存內的整個512KB區域,并從緩存里把新的數據寫回去。如果需要同時覆寫很多的塊,寫入速度就會直線下降。為了解決這個問題,Trim技術就被開發了出來,通過Trim指令,操作系統在進行刪除動作后,會通知固態硬盤的控制芯片該資料區塊已可刪除,固態硬盤便會在系統空閑時進行數據擦除動作,不讓無用資料一直占用NAND Flash,這樣在下一次寫入數據時就不用再等待數據塊擦除,而是能夠直接進行寫操作了,磁盤寫入性能能夠大幅提高。而目前只有Windows7和Windows2008 R2操作系統才支持Trim技術,所以在選擇固態硬盤時不僅要選擇支持Trim技術的固態硬盤產品,而且還要保證安裝的是主流的Windows7或Windows2008 R2操作系統。
Garbage collection(垃圾回收技術),是固態硬盤專用的磁盤碎片整理技術,由于傳統的磁盤碎片整理對固態硬盤來說完全沒有用處,如果對固態硬盤進行了磁盤碎片整理反而會降低固態硬盤的性能,只有微軟的下一代操作系統Windows8才支持對固態硬盤的磁盤碎片進行整理。因為讀寫機制與機械硬盤不同,對于目前的操作系統來說固態硬盤必須使用自己的磁盤碎片整理技術。Garbage collection技術的原理是在SSD空閑時,全盤掃描有效的頁并合并整理起來變為一個包含全部有效頁的塊,而那些無效的頁和塊都將被完全清除。Garbage collection技術本身并不能大幅度改善固態硬盤性能,但與Trim相結合之后,就能事半功倍,讓固態硬盤能夠長時間保持良好的性能狀態。Garbage collection技術經常被廠商用來“忽悠”用戶,因為所有的固態硬盤都支持被動GC技術,而真正值得關注的是閑置Garbage collection技術(IGC),就是在固態硬盤閑置的時候進行碎片整理,和Trim結合就能讓固態硬盤盡量保持最佳性能狀態。
很可惜的是Trim技術只有在AHCI模式下才能發揮作用。如果利用固態硬盤組建RAID,那么現有的操作系統(包括驅動程序)將不再把固態硬盤視為可Trim的,因此組建固態硬盤RAID將使Trim技術失去作用。我們只能等待一個給力的驅動在RAID中開啟Trim。
傳統硬盤的基本存儲但是是扇區,大小是512bytes,而固態硬盤的基本讀寫單位是頁,常見大小為2KB/4KB。操作系統讀寫數據的基本單位是簇,在對硬盤進行分區操作時,系統通常是以512bytes/扇區為單位的,為了保持BIOS和操作系統相容性,固態硬盤也必須將每個頁通過控制芯片模擬成若干個512bytes扇區。由于分區的時候分割的位置可由任何扇區開始,如果在分區的一開始就沒有對齊固態硬盤頁的邊界,則該分區里的簇也會變成未對齊的狀態。比如WindowsXP的分區程序是從第63個扇區開始的,也就是第31.5KB處,由于這個值不能被2KB/4KB整除,對應到固態硬盤在頁之上模擬出得扇區時,正好會從某個頁的后段開始,一旦操作系統對某一個未對齊的簇進行寫操作,在固態硬盤上就會變成需要寫入到兩個實體頁中。無形當中也就促使固態硬盤不得不增加一倍的操作量,性能下降也就是理所當然的了。因此只要固態硬盤上的分區處于未對齊狀態,增加了無謂的SSD額外寫入動作,固態硬盤的性能就不能完全發揮,而且未對齊的分區還會造成固態硬盤在連續寫入小文件時,系統一頓一頓的。因此,固態硬盤的分區操作必須是在Windows7進行,或者通過專用的固態硬盤分區工具來進行分區,以達到分區對齊的目的,有效提高固態硬盤的讀寫性能。
新聞熱點
疑難解答