寫入放大

闪存和固态硬盘中,实际写入的物理资料量是写入资料量的多倍的不良现象

寫入放大(英語:write amplification,簡稱WA)是閃存固態硬盤(SSD)中一種不良的現象,即實際寫入的物理資料量是寫入資料量的多倍。

垃圾回收和耗損平衡導致了SSD的寫入放大
垃圾回收和耗損平衡導致了SSD的寫入放大,從而增加了驅動器的寫入次數,減少了其使用壽命[1]

由於閃存在可重新寫入數據前必須先擦除,而擦除操作的粒度與寫入操作相比粗得多[a],執行這些操作就會多次移動(或改寫)用戶數據和元數據。因此,要改寫數據,就需要讀取閃存某些已使用的部分,更新它們,並寫入到新的位置,如果新位置在之前已被使用過,還需連同先擦除;由於閃存的這種工作方式,必須擦除改寫的閃存部分比新數據實際需要的大得多。此倍增效應會增加請求寫入的次數,縮短SSD的壽命,從而減小SSD能可靠運行的時間。增加的寫入也會消耗閃存的帶寬,此主要降低SSD的隨機寫入性能[1][3]。許多因素會影響SSD的寫入放大,一些可以由用戶來控制,而另一些則是數據寫入和SSD使用的直接結果。

在2008年,英特爾[4]SiliconSystems(2009年為西部數據所收購)[5]首先在他們的論文和出版物使用了術語「寫入放大」。寫入放大通常用閃存的寫入與主機系統的寫入之比來衡量。沒有開啟數據壓縮時,寫入放大不小於1。在使用壓縮的情況下,SandForce聲稱他們的典型寫入放大達到了0.5[6],而在最佳情況下,使用SF-2281控制器,此值能低至0.14[7]

SSD基本操作

編輯
 
NAND閃存以每頁4 KB寫入數據,以每塊256 KB擦除數據[2]

由於閃存操作的性質,數據不能像在硬盤中那樣直接覆寫。當首次向SSD寫入數據時,單元都處於已擦除狀態,因而數據可以直接寫入,一次一(大小通常為4至8千字節(KB))。SSD中管理閃存與主控系統接口的SSD控制器,使用稱為邏輯區塊地址(LBA)的邏輯到物理映射系統,這是閃存轉換層(FTL)的一部分[8]。當新的數據要替換已寫入的舊數據時,SSD控制器將會寫入新的數據至新的位置,並且更新邏輯映射,將其指向新的物理位置。原位置的數據將不再有效。在可以再次寫入之前,它需要先被擦除[1][9]

閃存的編程和擦除次數有限。通常以閃存在整個壽命中最多可忍受的編程/擦除循環(P/E循環)次數來表示。單層單元(SLC)閃存,通常設計為高性能和長壽命,一般能有50000到100000次循環。截至2011年 (2011-Missing required parameter 1=month!),設計用於低成本應用的多層單元(MLC)閃存,循環次數就大為減少,一般只有3000至5000次循環。自2013年起,已有三層單元(TLC)閃存,其編程-擦除(P/E)循環次數又降至1000。寫入放大越低,則越為理想,因為與之對應的是閃存中P/E循環次數減少,所以能延長SSD的壽命。[1]

計算數值

編輯

即使是在定義術語之前,寫入放大就已經存在於固態硬盤中,但直到2008年,才有英特爾[4][10]和SiliconSystems開始在他們的論文和出版物中使用它[5]。所有的SSD都有一個寫入放大值,基於目前正在寫入的數據及先前已寫入到SSD的數據。為了能準確地測量特定SSD的該值,應使選定的測試流程運行足夠長的時間,以確保驅動器已達到穩態[3]

一個簡單計算SSD寫入放大的公式是:[1][11][12][13]

閃存寫入的數據量 ÷ 主控寫入的數據量 = 寫入放大

影響因素

編輯

SSD的寫入放大會受許多因素的影響。下表列出了主要因素以及它們對寫入放大的影響。對於變量因素,表中註明了「正面」相關或「反面」相關。如隨着預留空間的增加,寫入放大將減小(反相關)。如果該因素是一個開關(「啟用」或「禁用」)關係,那麼它的關係或「正向」或「反向」。[1][8][11]

寫入放大因素
因素 描述 類型 關係*
垃圾回收 用來挑選用於擦除和重寫的最佳塊的算法的效率 變量 反面(小為好)
預留空間 分配到SSD控制器的物理容量百分比 變量 反面(小為好)
SATA的TRIM命令 或 SCSI中的UNMAP 這些命令必須由操作系統(OS)發送,可以通知存儲設備哪些扇區含有無效數據。可以處理這些命令的SSD能在擦除塊時,將包含這些扇區的頁作為空閒空間回收,而不是複製無效的數據到乾淨的頁中。 開關 正向(小為好)
空閒用戶容量 沒有實際用戶數據的用戶容量百分比;需要TRIM,否則SSD不會從任何空閒的用戶容量中獲得好處 變量 反面(小為好)
安全擦除 擦除所有的用戶數據和相關元數據,將SSD的性能重置到最初狀態(直至重新開始垃圾回收) 開關 正向(小為好)
耗損均衡 算法的效率,令每塊的寫入次數與其他的塊儘可能相同 變量 正面(大為壞)
靜動數據分離 將數據按修改頻率分組 開關 正向(小為好)
順序寫入 理論上,順序寫入的寫入放大為1,但其他因素仍會影響此值 開關 正向(小為好)
隨機寫入 寫入到非連續的LBA對寫入放大的影響最大 開關 反向(大為壞)
數據壓縮,包括重複數據刪除 數據壓縮和重複數據刪除能消除更多的冗餘數據,降低寫入放大,同時提升SSD速度。 變量 反面(小為好)
SLC模式使用MLC NAND 以每單元1位,而不是以設計的每單元位數(通常為每單元2位)寫入數據,以加快讀取和寫入操作。如果臨近SLC模式下的NAND容量限制,SSD必須把舊有用SLC模式寫入的數據改寫為MLC或TLC模式,才能讓SLC模式的NAND空間釋放出來,以便容納更多的數據。然而,通過讓經常更改的頁面維持在SLC模式,而不是以MLC或TLC模式修改,這種做法也可以降低磨損,因為比用SLC模式,用MLC或TLC模式寫入對閃存的傷害確實更大。因此,這種做法提高了寫入放大,但當寫入模式設為向常寫頁面上寫入時,卻可以減少磨損。然而,順序和隨機寫入卻會加劇磨損,因為這樣就沒有或少有頻繁寫入的頁是SLC模式,迫使舊數據不斷地從SLC模式改寫到MLC或TLC。 開關 反向(大為壞)
*關係定義
類型 關係 描述
變量 正面 隨着因子增加WA增加
反面 隨着因子增加WA減小
開關 正向 當因子開啟時WA減小
反向 當因子開啟時WA增加

垃圾回收

編輯
 
頁面能一直寫入,直至填滿區塊。然後,當前的數據頁被移動至新的區塊,舊的區塊被擦除[2]。(圖示:1.四個頁面(A-D)寫入一個區塊(X)。單獨的空閒(已擦除)頁面可以直接寫入;2.四個新頁(E-H)和四個替代頁(A'-D')寫入區塊(X)。原來的A-D頁現在包含的是無效(過期)數據,但直至整個區塊被擦除前,頁面都不能重新寫入;3.要向含有過期數據的頁面(A-D)寫入數據,有效頁面(E-H和A'-D')被讀取並寫入區塊(Y),然後區塊(X)被擦除。最後一步稱為「垃圾回收」。)

數據以頁面(由多個單元組成)為單位寫入到閃存中。然而,存儲器只能以較大的單位區塊(由多個頁面組成)擦除[2]。如果不再需要一個塊中某些頁內的數據(稱為過期頁),僅會讀取該塊中含有有效數據的頁面,並重新寫入到另一個先前擦除的空塊中[3]。因而,由於沒有移動過期數據,留下的空閒頁就可用來存儲新的數據。這一過程稱為「垃圾回收」(GC)[1][12]所有的SSD都包含不同程度的垃圾回收機制,但在執行的頻率和速度上有所不同[12]。垃圾回收占了SSD上寫入放大的很大一部分[1][12]

讀取數據不需要擦除閃存,因此通常與寫入放大無關。在有限的情況下會發生讀取干擾錯誤,此時會讀取並重新寫入區塊中的數據,但是這不會對驅動器的寫入放大造成實質性的影響。[14]

後台垃圾回收

編輯

垃圾回收的過程包括讀取並重新向閃存寫入數據。這意味着,主控寫入新數據時,就必須先讀取整個區塊,再寫入區塊中仍包含有效數據的部分,之後才寫入新數據。這顯著降低了系統的性能[15]。有的SSD控制器實現了「後台垃圾回收」(BGC),有時也被稱為「空閒垃圾回收」或「空閒時間垃圾回收」(ITGC),能讓控制器在主控需要寫入新的數據之前,使用空閒時間整理閃存塊。這使驅動器能維持較高的性能[16]

如果能在需要快閃記憶體前,控制器在後台垃圾回收時,就已經收集好了所有的空閒區塊,那麼就可以直接寫入主控要寫入的新數據,而無須先移動數據,這樣驅動器就總能表現出最佳性能。不幸的是,實際上某些區塊上的數據主控並不需要,它們最終將會被刪除,但操作系統並沒有告訴控制器這些信息。結果,要被刪除的數據被重寫到了閃存的另一個位置,因而提高了寫入放大。在一些OCZ的SSD中,後台垃圾回收僅會清除少量的塊,之後便停止,以此限制過度寫入的數量[12]。另一種解決方案是配備一個高效的垃圾回收系統,在主控寫入的同時同步執行必要的數據移動。在SSD少有空閒的環境中,這種解決方案更有效[17]SandForce的SSD控制器[15]Violin Memory的系統有這項功能[11]

文件系統感知垃圾回收

編輯

2010年,一些廠商(特別是三星)推出的SSD控制器擴展了BGC的概念,它們會分析固態硬盤上使用的文件系統,以識別出最近刪除的文件,及未分區的空間。製造商聲稱,系統(操作系統和SATA控制器硬件)即便不支持TRIM,也能獲得相似的性能。三星實現的操作似乎在假定、並且需要有一個NTFS文件系統[18]。目前,這些廠商生產的SSD是否仍具備該功能不得而知。有報道稱,如果沒有正確地用MBR和NTFS格式化這些驅動器,將會出現系統數據的損壞[19]

預留空間

編輯
 
SSD中的三級預留空間[15][20]。(圖示:層級1:7.37%,230和109之間的差距。HDD和SSD基於十進制衡量空間,而不是像內存那樣用二進制單位。層級2:0,7,或28%,控制壽命、容量、性能達到期望平衡的比例。SSD由工廠設置層級2的預留空間,以維持基本的性能和壽命。層級3:?%,在SSD的使用過程中波動。(假設支持TRIM)存儲的用戶數據在變化,空閒空間被自動用作預留空間。)

預留空間(有時簡稱OP)是閃存的物理容量和操作系統(OS)呈現給用戶的可用邏輯容量之間的差值。在SSD的垃圾收集、耗損均衡及壞塊映射操作中,額外的預留空間有助於降低控制器寫入閃存時的寫入放大。[4][20][21][22]

預留空間的第一級來自容量的計算,單位使用吉位元組(GB),而不是gibibyte(GiB)。HDD和SSD的廠商都使用術語GB來表示「十進制」的GB,即1,000,000,000(10^9)字節。閃存(象其它大多數電子存儲器一樣)以二的冪組裝,所以SSD的物理容量將以每二進制GB 1,073,741,824(230)字節來計算。兩個值之間的差距是7.37%(=(230-109)/109 × 100%)。從而預留0%空間的128 GB SSD提供給用戶的容量是128,000,000,000字節。這個初始的7.37%通常不計算在總的預留空間數量中。[20][22]

預留空間的第二級來自製造商。這一級的預留空間大小通常為0%、7%或28%,基於十進制吉位元組的物理容量與十進制吉位元組的用戶可用空間之差。舉例而言,製造商發布的規格為100 GB、120 GB或128 GB的SSD,可能它們的實際物理容量都是128 GB。這種差異就是由28%、7%和0%造成的,而這也是製造商聲稱它們的驅動器有28%預留空間的依據。這不包括額外的十進制和二進制吉位元組之間相差的7.37%。[20][22]

預留空間的第三級來自驅動器上的已知可用空間,以獲得持久性和性能,前提是報告未使用的部分,和/或以目前或未來的空間為代價。可以藉由操作系統使用TRIM命令來確定空閒空間。另外,一些SSD提供了工具,以讓最終用戶選擇額外的預留空間。此外,如果在SSD上沒有100%地使用可用空間劃分分區布局,SSD也將會自動把未分區的空間作為預留空間使用[22]。還有一個預留空間來源於操作系統的最小可用空間限制;一些操作系統在每一個驅動器上都保留有一定的最小可用空間,特別是在啟動或主驅動器上。如果SSD,也許是通過連續使用TRIM命令,能夠識別出這些額外空間,那麼它就能作為半永久性的預留空間。預留空間往往需要占用用戶容量,或暫時或永久,但它能減少寫入放大,增加持久性,並提高性能[17][21][23][24][25]

預留空間計算
( 物理容量 - 用戶容量 ) ÷ 用戶容量 = 預留空間

TRIM是一個SATA命令,使得操作系統可以告訴SSD不再需要哪些之前保存過數據的區塊。可能這些文件已被刪除,或整個分區已被格式化。若操作系統替換了一個LBA的同時覆寫了一個文件時,SSD就能知道可以標記原來的LBA為過時或無效,在垃圾回收的過程中就不用再保留那些塊。如果用戶或操作系統刪除一個文件(不只是除去它的一部分),通常只會將該文件標記為已刪除,而並未真正擦除磁盤上的實際內容。正因如此,SSD不知道可以擦除文件先前占用的LBA,所以在垃圾回收時仍會保留它們。[26][27][28]

在有操作系統支持的情況下,TRIM命令解決了這個問題,如Windows 7[27]、Mac OS(Snow Leopard、Lion及Mountain Lion的最新版,有些情況下需要補丁)[29]Linux >= 2.6.33[30]。當永久刪除一個文件或格式化硬盤時,操作系統依據不再包含有效數據的LBA發送TRIM命令。這可告知SSD可以擦除並重新使用哪些使用中的LBA。垃圾回收過程中需要移動的LBA因此而減少。結果是SSD將有更多的空閒空間,同時獲得低寫入放大及更高的性能[26][27][28]

限制和依賴

編輯

TRIM命令也需要SSD支持。SSD固件如果不支持TRIM命令,就不會標記TRIM命令收到的LBA為無效,而仍假設數據有效,並在垃圾回收時繼續予以保留。只有當操作系統向這些LBA中保存新數據時,SSD才能將最初的LBA標記為無效[28]。若驅動器中沒有內建支持TRIM,SSD廠商可以為用戶升級固件,或提供一個單獨的實用程序,以從操作系統中提取關於無效數據的信息,再另外TRIM SSD。只有用戶每次運行程序後,才能從中獲得好處。用戶可以設定計劃任務,讓該實用程序在後台定期自動運行[15]

正因為SSD支持TRIM命令,在收到命令後,它不一定能立即表現出最快性能。TRIM命令釋放的空間可能隨機散落於SSD中。要經過幾輪的數據寫入和垃圾回收之後,空間才會逐漸合併,表現的性能才能提高。[28]

即使已配置OS和SSD支持TRIM命令,其他情況也可能會使TRIM無法發揮出它的功效。截至2010年初,數據庫和RAID系統還沒有配備TRIM感知,因而無法向SSD傳遞信息。這種情況下,SSD將繼續保留那些區塊,直到OS將那些LBA用於新的寫操作。[28]

實際可從TRIM命令中得到的益處取決於SSD上的空閒用戶容量。如果SSD用戶容量為100 GB,用戶實際在驅動器上存儲了95 GB數據,任何TRIM操作為垃圾回收和耗損均衡增加的可用空間都不會超過5 GB。在這種情況下,增加5 GB的預留空間將使SSD的性能更加穩定一致,因為可用空間總會有額外的5 GB,而不必等待OS發來TRIM命令。[28]

空閒用戶容量

編輯

SSD控制器將使用SSD上的任何空閒塊以進行垃圾回收和耗損均衡。無用戶數據的用戶容量部分(或已TRIM,或從未寫入)就如同預留空間(直至用戶向SSD保存新數據)。如果用戶保存的數據僅占驅動器總用戶容量的一半,用戶容量的另一半看起來就如同額外的預留空間(只要系統支持TRIM命令)。[28][31]

安全擦除

編輯

ATA安全擦除命令旨在從驅動器中刪除所有用戶數據。對於沒有內置加密功能的固態硬盤,此命令將會把驅動器恢復至其出廠狀態。剛開始,它的性能將恢復至可能的最高水平及最佳的(最低)寫入放大,但只要驅動器再次開始垃圾收集,性能和寫入放大就會逐漸降至先前水平[32][33]。許多工具能使用ATA安全擦除命令重置驅動器,而且有用戶界面。在行業中經常提到的一個免費工具是HDDErase[33][34]GpartedUbuntu live CD提供可啟動的Linux系統,上有包含安全擦除的磁盤實用程序[35]

實時加密所有寫入數據的驅動器可以以另一種方式實現ATA安全擦除。方法是簡單地向其補零,並在每次完成安全擦除後產生一個新的隨機加密密鑰。這樣就無法再讀取舊數據,因為無法解密[36]。內置加密的驅動器可能需要發送TRIM命令,以將其設為出廠狀態[37]

耗損均衡

編輯

如果反覆地編程和擦寫某區塊,而其他區塊卻沒有寫入,該區塊會早於其他的區塊而磨損——從而過早地結束了SSD的壽命。由於這個原因,SSD控制器使用稱為耗損均衡的技術,以儘可能均勻地將寫入分配到SSD的所有閃存區塊上。

理想情況下,每一區塊都能寫入到最大次數,這樣它們都能同時失效。不幸的是,耗損均衡操作會要求移動之前寫入後就未改變的數據(冷數據),以使頻繁變動的數據(熱數據)可以寫入到冷數據的區塊中,讓冷數據的區塊達到均衡。數據被重定位,而主控卻並沒有修改它們,這增加了寫入放大,而降低了閃存的壽命。關鍵是要找到最優算法以使兩者同時達到最佳化。[38]

靜動數據分離

編輯

對SSD控制器來說,靜動數據分離並不是一件簡單的事。該方法需要SSD控制器將數據不斷變化、需要重寫(動態數據)的與數據很少改變、且不需要任何重寫(靜態數據)的LBA分離開來。如果數據混於同一區塊,正如目前幾乎所有系統所做的那樣,SSD控制器在重寫時,就需要垃圾回收動態數據(引起重寫的原因)和靜態數據(不需要任何重寫)。任何對操作中未涉及數據的垃圾回收都會增加寫入放大。因此分離數據將使靜態數據留在原地,如果它永遠不會改寫,寫入放大就能達到最低。[1]

順序寫入

編輯

當順序向固態硬盤寫入數據時,寫入放大等於1,意為沒有寫入放大。這是因為在數據寫入時,依次用來自同一文件的數據填充區塊。如果OS確認該文件將被替換或刪除,可以標記整個塊為無效,也不需要讀取它以將垃圾收集到的數據重寫入另一個塊。它只需要擦除,比隨機數據寫入所需的「讀取-擦除-修改-寫入」的垃圾收集過程更易、更快。[8]

隨機寫入

編輯

在完全垃圾回收、安全擦除、100%TRIM、或新安裝之後,SSD有大量的空閒區塊,隨機寫入性能達到峰值。最大速度將取決於連接到SSD控制器的並行閃存通道數、固件效率及閃存寫入頁面的速度。在此階段,寫入放大之於隨機寫入達到最佳,接近1。一旦區塊都寫入了一次,垃圾收集過程將啟動,性能將會被此過程的速度和效率所限制。此階段的寫入放大將增至驅動器經歷過的最高水平。[8]

對性能的影響

編輯

SSD的總體性能取決於許多因素,其中包括寫入放大。向閃存設備寫入比從它讀取所需的時間更長[16]。SSD通常並聯使用多個閃存組件,以提高性能。如果SSD的寫入放大高,控制器將不得不多次向閃存寫入。主控將需要更多的時間寫入數據。低寫入放大的SSD不需要寫那麼多的數據,因此能比高寫入放大的驅動器更早寫入完畢[1][9]

產品聲明

編輯

2008年9月,英特爾宣布了X25-M SATA SSD,聲稱WA能低至1.1[6][39]。2009年4月,SandForce宣布了SF-1000 SSD處理器系列,報稱其WA為0.5,似乎是藉由某種形式的數據壓縮而達到[6][40]。在此次發布前,曾認為1.0的寫入放大是SSD可以達到的最低水平[16]。目前,只有SandForce的SSD控制器使用了壓縮。

參見

編輯

注釋

編輯
  1. ^ 數據以頁面為單位寫入到閃存中,其由多個單元組成。然而,存儲器只能以較大的單位區塊擦除,其由多個頁面組成。[2]

參考

編輯
  1. ^ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 Hu, X.-Y. and E. Eleftheriou, R. Haas, I. Iliadis, R. Pletka. Write Amplification Analysis in Flash-Based Solid State Drives. IBM. 2009 [2010-06-02]. CiteSeerX: 10.1.1.154.8668 . (原始內容存檔於2013-07-03). 
  2. ^ 2.0 2.1 2.2 2.3 Thatcher, Jonathan. NAND Flash Solid State Storage Performance and Capability – an In-depth Look (PDF). SNIA. 2009-08-18 [2012-08-28]. (原始內容存檔 (PDF)於2012-09-07). 
  3. ^ 3.0 3.1 3.2 Smith, Kent. Benchmarking SSDs: The Devil is in the Preconditioning Details (PDF). SandForce. 2009-08-17 [2012-08-28]. (原始內容存檔 (PDF)於2011-12-06). 
  4. ^ 4.0 4.1 4.2 Lucchesi, Ray. SSD Flash drives enter the enterprise (PDF). Silverton Consulting. September 2008 [2010-06-18]. (原始內容 (PDF)存檔於2011-05-31). 
  5. ^ 5.0 5.1 Kerekes, Zsolt. Western Digital Solid State Storage - formerly SiliconSystems. ACSL. [2010-06-19]. (原始內容存檔於2010-06-20). 
  6. ^ 6.0 6.1 6.2 Shimpi, Anand Lal. OCZ's Vertex 2 Pro Preview: The Fastest MLC SSD We've Ever Tested. AnandTech. 2009-12-31 [2011-06-16]. (原始內容存檔於2011-06-23). 
  7. ^ Ku, Andrew. Intel SSD 520 Review: SandForce's Technology: Very Low Write Amplification. Tomshardware. 2012-02-06 [2012-02-10]. 
  8. ^ 8.0 8.1 8.2 8.3 Hu, X.-Y. and R. Haas. The Fundamental Limit of Flash Random Write Performance: Understanding, Analysis and Performance Modelling (PDF). IBM Research, Zurich. 2010-03-31 [2010-06-19]. (原始內容存檔 (PDF)於2011-07-13). 
  9. ^ 9.0 9.1 Agrawal, N., V. Prabhakaran, T. Wobber, J. D. Davis, M. Manasse, R. Panigrahy. Design Tradeoffs for SSD Performance. 微軟. June 2008 [2010-06-02]. CiteSeerX: 10.1.1.141.1709 . (原始內容存檔於2013-06-22). 
  10. ^ Case, Loyd. Intel X25 80GB Solid-State Drive Review. 2008-09-08 [2011-07-28]. (原始內容存檔於2011-08-23). 
  11. ^ 11.0 11.1 11.2 Kerekes, Zsolt. Flash SSD Jargon Explained. ACSL. [2010-05-31]. (原始內容存檔於2010-06-11). 
  12. ^ 12.0 12.1 12.2 12.3 12.4 SSDs - Write Amplification, TRIM and GC (PDF). OCZ Technology. [2012-11-13]. (原始內容 (PDF)存檔於2012-05-26). 
  13. ^ Intel Solid State Drives. Intel. [2010-05-31]. (原始內容存檔於2010-05-26). 
  14. ^ TN-29-17: NAND Flash Design and Use Considerations (PDF). Micron. 2006 [2010-06-02]. (原始內容 (PDF)存檔於2011-07-19). 
  15. ^ 15.0 15.1 15.2 15.3 Mehling, Herman. Solid State Drives Take Out the Garbage. Enterprise Storage Forum. 2009-12-01 [2010-06-18]. (原始內容存檔於2010-12-09). 
  16. ^ 16.0 16.1 16.2 Conley, Kevin. Corsair Force Series SSDs: Putting a Damper on Write Amplification. Corsair.com. 2010-05-27 [2010-06-18]. (原始內容存檔於2011-08-12). 
  17. ^ 17.0 17.1 Layton, Jeffrey B. Anatomy of SSDs. Linux Magazine. 2009-10-27 [2010-06-19]. (原始內容存檔於2010-07-01). 
  18. ^ Bell, Graeme B. Solid State Drives: The Beginning of the End for Current Practice in Digital Forensic Recovery? (PDF). Journal of Digital Forensics, Security and Law. 2010 [2012-04-02]. (原始內容 (PDF)存檔於2012-04-23). 
  19. ^ SSDs are incompatible with GPT partitioning?!. [2014-10-11]. (原始內容存檔於2014-10-18). 
  20. ^ 20.0 20.1 20.2 20.3 Bagley, Jim. Over-provisioning: a winning strategy or a retreat? (PDF). StorageStrategies Now: 2. 2009-07-01 [2010-06-19]. (原始內容 (PDF)存檔於2010-01-04). 
  21. ^ 21.0 21.1 Drossel, Gary. Methodologies for Calculating SSD Useable Life (PDF). Storage Developer Conference, 2009. 2009-09-14 [2010-06-20]. [永久失效連結]
  22. ^ 22.0 22.1 22.2 22.3 Smith, Kent. Understanding SSD Over-provisioning (PDF). flashmemorysummit.com: 14. 2011-08-01 [2012-12-03]. (原始內容存檔 (PDF)於2014-10-19). 
  23. ^ Shimpi, Anand Lal. The Impact of Spare Area on SandForce, More Capacity At No Performance Loss?. AnandTech.com: 2. 2010-05-03 [2010-06-19]. (原始內容存檔於2010-06-10). 
  24. ^ OBrien, Kevin. Intel SSD 520 Enterprise Review. Storage Review. 2012-02-06 [2012-11-29]. (原始內容存檔於2012-11-15). 20% over-provisioning adds substantial performance in all profiles with write activity 
  25. ^ White Paper: Over-Provisioning an Intel SSD (PDF). Intel. 2010 [2012-11-29]. (原始內容 (PDF)存檔於2011-11-25). 
  26. ^ 26.0 26.1 Christiansen, Neal. ATA Trim/Delete Notification Support in Windows 7 (PDF). Storage Developer Conference, 2009. 2009-09-14 [2010-06-20]. (原始內容 (PDF)存檔於2010-03-26). 
  27. ^ 27.0 27.1 27.2 Shimpi, Anand Lal. The SSD Improv: Intel & Indilinx get TRIM, Kingston Brings Intel Down to $115. AnandTech.com. 2009-11-17 [2010-06-20]. (原始內容存檔於2010-06-17). 
  28. ^ 28.0 28.1 28.2 28.3 28.4 28.5 28.6 Mehling, Herman. Solid State Drives Get Faster with TRIM. Enterprise Storage Forum. 2010-01-27 [2010-06-20]. (原始內容存檔於2010-06-06). 
  29. ^ Enable TRIM for All SSD’s [sic] in Mac OS X Lion. osxdaily.com. 2012-01-03 [2012-08-14]. (原始內容存檔於2012-08-10). 
  30. ^ Linux 2 6 33 Features. kernelnewbies.org. 2010-02-04 [2010-07-23]. (原始內容存檔於2012-06-30). 
  31. ^ Shimpi, Anand Lal. The SSD Anthology: Understanding SSDs and New Drives from OCZ. AnandTech.com: 9. 2009-03-18 [2010-06-20]. (原始內容存檔於2010-06-12). 
  32. ^ Shimpi, Anand Lal. The SSD Anthology: Understanding SSDs and New Drives from OCZ. AnandTech.com: 11. 2009-03-18 [2010-06-20]. (原始內容存檔於2010-06-12). 
  33. ^ 33.0 33.1 Malventano, Allyn. Long-term performance analysis of Intel Mainstream SSDs. PC Perspective. 2009-02-13 [2010-06-20]. (原始內容存檔於2010-02-21). 
  34. ^ CMRR - Secure Erase. CMRR. [2010-06-21]. (原始內容存檔於2010-06-10). 
  35. ^ OCZ Technology. How to Secure Erase Your OCZ SSD Using a Bootable Linux CD. 2011-09-07 [2014-12-13]. (原始內容存檔於2012-01-07). 
  36. ^ The Intel SSD 320 Review: 25nm G3 is Finally Here. anandtech. [2011-06-29]. (原始內容存檔於2011-07-05). 
  37. ^ SSD Secure Erase - Ziele eines Secure Erase. Thomas-Krenn.AG. [2011-09-28]. (原始內容存檔於2011-10-27). 
  38. ^ Chang, Li-Pin. On Efficient Wear Leveling for Large Scale Flash Memory Storage Systems. National ChiaoTung University, HsinChu, Taiwan. 2007-03-11 [2010-05-31]. CiteSeerX: 10.1.1.103.4903 . (原始內容存檔於2013-08-01). 
  39. ^ Intel Introduces Solid-State Drives for Notebook and Desktop Computers. Intel. 2008-09-08 [2010-05-31]. (原始內容存檔於2010-08-02). 
  40. ^ SandForce SSD Processors Transform Mainstream Data Storage (PDF). SandForce. 2008-09-08 [2010-05-31]. (原始內容存檔 (PDF)於2011-07-16). 

外部連結

編輯