專利名稱:一種linux系統(tǒng)下ssd硬盤性能恢復的方法
技術領域:
本發(fā)明涉及計算機應用領域,具體地說是一種Iinux系統(tǒng)下SSd硬盤性能恢復的方法。
背景技術:
隨著SSD使用時間的增加、容量的減少,其性能就會出現(xiàn)一定幅度的下降。導致SSD性能下降的原因和SSD的數(shù)據(jù)寫入機制有關。SSD采用NAND芯片來進行數(shù)據(jù)存儲,在數(shù)據(jù)寫入時是以一個頁面為單元(通常是4KB),但在數(shù)據(jù)擦除時卻是以塊為單位。一般來說,一個塊相當于128個頁面單元,即512KB。例如,在X塊中包含了 A、B、C、D等頁面單元。當需要擦除A頁面單元中的數(shù)據(jù)時,SSD會把整個X塊的數(shù)據(jù)從NAND芯片讀出并寫入緩存。隨后擦除緩存中的A頁面數(shù)據(jù),然后擦除NAND芯片中的X塊,最后用緩存中不包含A頁面的新X塊數(shù)據(jù)重新寫入SSD中。也就是說雖然擦除的只是A頁面的數(shù)據(jù),但B、C、D頁面的數(shù)據(jù)也要重新擦除并寫入。因此即便是只需要擦除4KB的數(shù)據(jù),SSD也要進行512KB的數(shù)據(jù)“搬運”工作。這個過程包括:讀出數(shù)據(jù)一擦除SSD —在緩存中修改一寫入SSD,可以簡單地概括為“讀取一擦除一修改一寫入”。在Iinux操作系統(tǒng)中對SSD數(shù)據(jù)進行刪除時,其實只是在該數(shù)據(jù)存儲的位置上做了一個“可以寫入”的記號,并沒有把該部分的數(shù)據(jù)真正擦除。直到該位置需要重新寫入新數(shù)據(jù)時,系統(tǒng)才會進行上面介紹的“擦除”操作,然后寫入新數(shù)據(jù)。當一塊SSD處于全新狀態(tài)時,NAND芯片中不存在需要擦除的數(shù)據(jù),此時SSD性能處于最佳狀態(tài)。在使用了一段時間之后,NAND芯片中逐漸堆積了一些已經(jīng)被系統(tǒng)刪除卻未真正擦除的數(shù)據(jù),在寫入新數(shù)據(jù)時還必須先進行擦除操作,從而直接導致了性能的下降。目前通用的數(shù)據(jù)清零方式:
1、HDDErase軟件可以在在硬盤中寫入空數(shù)據(jù),對SSD中所有數(shù)據(jù)進行擦除,使SSD達到最佳性能狀態(tài)。具體步驟為先準備一塊可以引導到DOS系統(tǒng)下的閃存盤,將HDDErase軟件拷貝至該閃存盤上。接著進入CMOS設置,將硬盤的工作模式設置為IDE模式,用該閃存盤啟動系統(tǒng)并運行HDDErase。稍后軟件會自動列出系統(tǒng)中連接的所有硬盤,然后在對話框中輸入SSD前面對應的編號即可,例如PO。接著有兩個模式可供選擇:“1 =Secureerase^P“2:Enhanced secure erase (if supported by the drive),,,選擇模式 I 即可。完成空數(shù)據(jù)寫入后重新啟動計算機,并進入CMOS設置中,把硬盤工作模式改回AHCI。此時你會發(fā)現(xiàn)SSD的性能已經(jīng)恢復到全新時的狀態(tài)。此方案的使用需要第三方軟件支持且需要修改硬盤工作模式;
2、使用hdtune工具,使用HDTune軟件對SSD進行清零操作,與HDDErase重置是一個原理。但HD Tune必須在Windows操作系統(tǒng)下運行,因此需要一臺多硬盤主機或者一個帶有Windows PE系統(tǒng) 的閃存盤(或光盤)。運行HD Tune軟件后選中SSD固態(tài)硬盤,并選擇“刪除”選項,在下方的下拉式對話框中選擇“全零填充”,然后點擊“開始”即可。完成之后也可以讓SSD性能恢復如初,此方案的使用需要windows系統(tǒng)或winpe系統(tǒng)支持。
以上兩種通用的處理方法都存在使用條件限制,通用性不強,對于用戶Iinux系統(tǒng)環(huán)境無發(fā)實現(xiàn)快速處理,本發(fā)明完全不依賴第三方軟件,無需修改硬盤工作模式,使用系統(tǒng)自帶磁盤工具,利用dd腳本快速進行磁盤清零,恢復SSD硬盤性能。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種Iinux系統(tǒng)下ssd硬盤性能恢復的方法。本發(fā)明的目的是按以下方式實現(xiàn)的,利用ssd硬盤以4kb為硬盤單元的特點,使用dd指令以4kb為單位進行數(shù)據(jù)寫零操作實現(xiàn)在Iinux系統(tǒng)下的ssd硬盤性能恢復。具體指令如下:
dd bs=4k if=/dev/zero of=/dev/sdbssd硬盤性能測試命令:使用 fio 工具測試:fio -filename=/dev/sddl -direct=l -1odepth 32 -thread-rw=write -1oengine=psync -bs=4k -size=10G -numjobs=30 -runtime=100 -group_reporting -name=mytest。本發(fā)明的有益效果是:快速解決SSD硬盤隨使用時間延長而性能下降后,通過基本硬盤操作腳本,快速進行硬盤清零,恢復磁盤性能,相比一般的SSD硬盤清零方法具有:
1.不需要第三方工具軟件,且不用修改SSd硬盤工作模式;
2.實現(xiàn)方式簡單,提高清零效率。
具體實施例方式具體步驟如下:
以sdb硬盤為需要恢復性能的SSD硬盤為例,利用ssd硬盤以4kb為硬盤單元的特點,使用dd指令以4kb為單位進行數(shù)據(jù)寫零操作實現(xiàn)在Iinux系統(tǒng)下的ssd硬盤性能恢復,具體指令如下:
dd bs=4k if=/dev/zero of=/dev/sdbssd硬盤性能測試命令:
使用 fio 工具測試:fio -filename=/dev/sddl -direct=l -1odepth 32 -thread-rw=write -1oengine=psync -bs=4k -size=10G -numjobs=30 -runtime=100 -group_reporting -name=mytest。除說明書所述的技術特征外,均為本專業(yè)技術人員的已知技術。
權利要求
1.一種Iinux系統(tǒng)下ssd硬盤性能恢復的方法,其特征在于利用ssd硬盤以4kb為硬盤單元的特點,使用dd指令以4kb為單位進行數(shù)據(jù)寫零操作實現(xiàn)在Iinux系統(tǒng)下的ssd硬盤性能恢復。
全文摘要
本發(fā)明提供一種linux系統(tǒng)下ssd硬盤性能恢復的方法,該方法是利用ssd硬盤以4kb為硬盤單元的特點,使用dd指令以4kb為單位進行數(shù)據(jù)寫零操作實現(xiàn)在linux系統(tǒng)下的ssd硬盤性能恢復。
文檔編號G06F11/14GK103176869SQ201310112729
公開日2013年6月26日 申請日期2013年4月2日 優(yōu)先權日2013年4月2日
發(fā)明者李雙星, 任華進 申請人:浪潮電子信息產(chǎn)業(yè)股份有限公司