一种linux系统下ssd硬盘性能恢复的方法

文档序号:6591579阅读:1106来源:国知局
专利名称:一种linux系统下ssd硬盘性能恢复的方法
技术领域
本发明涉及计算机应用领域,具体地说是一种Iinux系统下SSd硬盘性能恢复的方法。
背景技术
随着SSD使用时间的增加、容量的减少,其性能就会出现一定幅度的下降。导致SSD性能下降的原因和SSD的数据写入机制有关。SSD采用NAND芯片来进行数据存储,在数据写入时是以一个页面为单元(通常是4KB),但在数据擦除时却是以块为单位。一般来说,一个块相当于128个页面单元,即512KB。例如,在X块中包含了 A、B、C、D等页面单元。当需要擦除A页面单元中的数据时,SSD会把整个X块的数据从NAND芯片读出并写入缓存。随后擦除缓存中的A页面数据,然后擦除NAND芯片中的X块,最后用缓存中不包含A页面的新X块数据重新写入SSD中。也就是说虽然擦除的只是A页面的数据,但B、C、D页面的数据也要重新擦除并写入。因此即便是只需要擦除4KB的数据,SSD也要进行512KB的数据“搬运”工作。这个过程包括:读出数据一擦除SSD —在缓存中修改一写入SSD,可以简单地概括为“读取一擦除一修改一写入”。在Iinux操作系统中对SSD数据进行删除时,其实只是在该数据存储的位置上做了一个“可以写入”的记号,并没有把该部分的数据真正擦除。直到该位置需要重新写入新数据时,系统才会进行上面介绍的“擦除”操作,然后写入新数据。当一块SSD处于全新状态时,NAND芯片中不存在需要擦除的数据,此时SSD性能处于最佳状态。在使用了一段时间之后,NAND芯片中逐渐堆积了一些已经被系统删除却未真正擦除的数据,在写入新数据时还必须先进行擦除操作,从而直接导致了性能的下降。目前通用的数据清零方式:
1、HDDErase软件可以在在硬盘中写入空数据,对SSD中所有数据进行擦除,使SSD达到最佳性能状态。具体步骤为先准备一块可以引导到DOS系统下的闪存盘,将HDDErase软件拷贝至该闪存盘上。接着进入CMOS设置,将硬盘的工作模式设置为IDE模式,用该闪存盘启动系统并运行HDDErase。稍后软件会自动列出系统中连接的所有硬盘,然后在对话框中输入SSD前面对应的编号即可,例如PO。接着有两个模式可供选择:“1 =Secureerase^P“2:Enhanced secure erase (if supported by the drive),,,选择模式 I 即可。完成空数据写入后重新启动计算机,并进入CMOS设置中,把硬盘工作模式改回AHCI。此时你会发现SSD的性能已经恢复到全新时的状态。此方案的使用需要第三方软件支持且需要修改硬盘工作模式;
2、使用hdtune工具,使用HDTune软件对SSD进行清零操作,与HDDErase重置是一个原理。但HD Tune必须在Windows操作系统下运行,因此需要一台多硬盘主机或者一个带有Windows PE系统 的闪存盘(或光盘)。运行HD Tune软件后选中SSD固态硬盘,并选择“删除”选项,在下方的下拉式对话框中选择“全零填充”,然后点击“开始”即可。完成之后也可以让SSD性能恢复如初,此方案的使用需要windows系统或winpe系统支持。
以上两种通用的处理方法都存在使用条件限制,通用性不强,对于用户Iinux系统环境无发实现快速处理,本发明完全不依赖第三方软件,无需修改硬盘工作模式,使用系统自带磁盘工具,利用dd脚本快速进行磁盘清零,恢复SSD硬盘性能。

发明内容
本发明的目的是提供一种Iinux系统下ssd硬盘性能恢复的方法。本发明的目的是按以下方式实现的,利用ssd硬盘以4kb为硬盘单元的特点,使用dd指令以4kb为单位进行数据写零操作实现在Iinux系统下的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。本发明的有益效果是:快速解决SSD硬盘随使用时间延长而性能下降后,通过基本硬盘操作脚本,快速进行硬盘清零,恢复磁盘性能,相比一般的SSD硬盘清零方法具有:
1.不需要第三方工具软件,且不用修改SSd硬盘工作模式;
2.实现方式简单,提高清零效率。
具体实施例方式具体步骤如下:
以sdb硬盘为需要恢复性能的SSD硬盘为例,利用ssd硬盘以4kb为硬盘单元的特点,使用dd指令以4kb为单位进行数据写零操作实现在Iinux系统下的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。除说明书所述的技术特征外,均为本专业技术人员的已知技术。
权利要求
1.一种Iinux系统下ssd硬盘性能恢复的方法,其特征在于利用ssd硬盘以4kb为硬盘单元的特点,使用dd指令以4kb为单位进行数据写零操作实现在Iinux系统下的ssd硬盘性能恢复。
全文摘要
本发明提供一种linux系统下ssd硬盘性能恢复的方法,该方法是利用ssd硬盘以4kb为硬盘单元的特点,使用dd指令以4kb为单位进行数据写零操作实现在linux系统下的ssd硬盘性能恢复。
文档编号G06F11/14GK103176869SQ201310112729
公开日2013年6月26日 申请日期2013年4月2日 优先权日2013年4月2日
发明者李双星, 任华进 申请人:浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1