CN111105840B - 一种固态硬盘异常掉电的测试方法、装置和*** - Google Patents

一种固态硬盘异常掉电的测试方法、装置和*** Download PDF

Info

Publication number
CN111105840B
CN111105840B CN201911376530.5A CN201911376530A CN111105840B CN 111105840 B CN111105840 B CN 111105840B CN 201911376530 A CN201911376530 A CN 201911376530A CN 111105840 B CN111105840 B CN 111105840B
Authority
CN
China
Prior art keywords
tested
ssd
command
power
issuing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911376530.5A
Other languages
English (en)
Other versions
CN111105840A (zh
Inventor
刘思洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei Datang Storage Technology Co ltd
Original Assignee
Hefei Datang Storage Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hefei Datang Storage Technology Co ltd filed Critical Hefei Datang Storage Technology Co ltd
Priority to CN201911376530.5A priority Critical patent/CN111105840B/zh
Publication of CN111105840A publication Critical patent/CN111105840A/zh
Application granted granted Critical
Publication of CN111105840B publication Critical patent/CN111105840B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施例公开了一种固态硬盘异常掉电的测试方法、装置和***,通过在待测SSD执行IO命令过程中对待测SSD进行下电和上电操作,从而实现了对SSD进行异常掉电的测试。

Description

一种固态硬盘异常掉电的测试方法、装置和***
技术领域
本发明实施例涉及但不限于测试技术,尤指一种固态硬盘(SSD,Solid StateDrives)异常掉电的测试方法、装置和***。
背景技术
SSD掉电分为两种,一种是正常掉电,另一种是异常掉电。
正常掉电是指在掉电前,主机会通过命令通知SSD,比如串行高级技术附件(SATA,Serial Advanced Technology Attachment)中的Idle Immediately,SSD收到该命令后,会将SSD的动态随机存取存储器(DRAM,Dynamic Random Access Memory)中的数据写入SSD的闪存;其中,DRAM中的数据例如可以是DRAM中的buffer中缓存的数据、映射表、闪存的块信息、其他信息等。主机等SSD将DRAM中的数据写入SSD的闪存后,才会真正停止对SSD的供电。正常掉电不会导致数据的丢失,重新上电后,SSD只需把掉电前写入闪存的数据重新加载到DRAM中,又能接着掉电前的状态继续工作。
异常掉电是指SSD在没有收到主机的掉电通知时就被断电;或者收到主机的掉电通知后还没来得及将DRAM中的数据写入SSD的闪存就被断电了。异常掉电可能会导致数据的丢失,比如DRAM中的数据来不及写入闪存,掉电导致这部分数据丢失,还有根据闪存特性,如果掉电发生在写多层单元 (MLC,Multi-Level Cell)的上页(Upper Page),会导致其对应的下页(Lower Page)数据遭到破坏,也就意味着之前写入闪存的数据也可能由于异常掉电导致丢失。
SSD掉电是SSD测试工作中的一个重要环节,根据SSD掉电的测试结果可以判断SSD是否正常,因此对SSD掉电的测试至关重要,然而目前没有有效方式能够对SSD进行异常掉电的测试。
发明内容
本发明实施例提供了一种SSD异常掉电的测试方法、装置和***,能够对SSD进行异常掉电的测试。
本发明一个实施例提出了一种固态硬盘异常掉电的测试方法,包括:
接收到测试指令;其中,所述测试指令包括:掉电类型、待测固态硬盘 SSD的数量、每一个待测SSD的模型Model号、为待测SSD供电的电源的插槽号;
当没有任何一个用于向SSD下发输入输出IO命令的进程启用时,将当前循环次数加1后进行预定处理;分别获取每一个待测SSD的Model号、容量信息和Smart信息并进行预定处理;其中,预定处理包括以下一个或多个的组合:打印;写入第一日志文件;
根据待测SSD的数量启用对应数量的用于向待测SSD下发IO命令的进程,通过启用的进程分别向每一个待测SSD下发IO命令;
分别在每一个待测SSD执行IO命令过程中向为每一个待测SSD供电的电源下发掉电命令,在下发掉电命令后的第一预设时间后向所述电源下发上电命令;分别对每一个待测SSD的上电次数进行预定处理,结束所有启用的用于向待测SSD下发IO命令的进程;继续执行所述将当前循环次数加1后进行预定处理的步骤,直到当前循环次数加1后大于最大循环次数。
在本发明实施例中,所述通过启用的进程分别向每一个待测SSD下发IO 命令包括:
分别生成每一个待测SSD的配置文件,分别根据每一个待测SSD的配置文件通过启用的进程向每一个待测SSD下发IO命令。
在本发明实施例中,所述配置文件包括所述待测SSD的容量信息对应的范围内的逻辑区块地址LBA中用于执行IO命令的LBA、读写比例、IO块大小。
在本发明实施例中,该方法还包括:
分别根据每一个待测SSD执行IO命令时生成的第二日志文件判断每一个待测SSD是否存在IO异常的情况,当判断出所有待测SSD均不存在IO异常的情况时,继续执行所述分别向为每一个待测SSD供电的电源下发掉电命令的步骤。
在本发明实施例中,该方法还包括:
分别检测每一个待测SSD的Model号、容量信息和Smart信息是否正常,当所有待测SSD的Model号、容量信息和Smart信息均正常时,继续执行所述结束所有启用的用于向待测SSD下发IO命令的进程的步骤。
本发明另一个实施例提出了一种固态硬盘异常掉电的测试装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现上述任一种固态硬盘异常掉电的测试方法。
本发明另一个实施例提出了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述任一种固态硬盘异常掉电的测试方法的步骤。
本发明另一个实施例提出了一种固态硬盘异常掉电的测试***,包括:
固态硬盘异常掉电的测试装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现上述任一种固态硬盘异常掉电的测试方法;
电源,与一个或多个待测固态硬盘SSD连接,用于为一个或多个待测SSD 供电,在固态硬盘异常掉电的测试装置的控制下进行掉电和上电操作;
一个或多个待测SSD,与电源和固态硬盘异常掉电的测试装置中的处理器连接,用于接收处理器下发的IO命令并执行。
本发明实施例包括:接收到测试指令;其中,所述测试指令包括:掉电类型、待测固态硬盘SSD的数量、每一个待测SSD的模型Model号、为待测 SSD供电的电源的插槽号;当没有任何一个用于向SSD下发输入输出IO命令的进程启用时,将当前循环次数加1后进行预定处理;分别获取每一个待测SSD的Model号、容量信息和Smart信息并进行预定处理;其中,预定处理包括以下一个或多个的组合:打印;写入第一日志文件;根据待测SSD的数量启用对应数量的用于向待测SSD下发IO命令的进程,通过启用的进程分别向每一个待测SSD下发IO命令;分别在每一个待测SSD执行IO命令过程中向为每一个待测SSD供电的电源下发掉电命令,在下发掉电命令后的第一预设时间后向所述电源下发上电命令;分别对每一个待测SSD的上电次数进行预定处理,结束所有启用的用于向待测SSD下发IO命令的进程;继续执行所述将当前循环次数加1后进行预定处理的步骤,直到当前循环次数加1后大于最大循环次数。本发明实施例通过在待测SSD执行IO命令过程中对待测 SSD进行下电和上电操作,从而实现了对SSD进行异常掉电的测试。
本发明实施例的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例而了解。本发明实施例的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明实施例技术方案的进一步理解,并且构成说明书的一部分,与本发明实施例的实施例一起用于解释本发明实施例的技术方案,并不构成对本发明实施例技术方案的限制。
图1为本发明一个实施例提出的SSD异常掉电的测试方法的流程图;
图2为本发明另一个实施例提出的SSD异常掉电的测试***的结构组成示意图;
图3为本发明另一个实施例提出的SSD异常掉电的测试装置的结构组成示意图。
具体实施方式
下文中将结合附图对本发明实施例进行详细说明。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
参见图1,本发明一个实施例提出了一种SSD异常掉电的测试方法,包括:
步骤100、接收到测试指令;其中,测试指令包括:掉电类型、待测SSD 的数量、每一个待测SSD的模型(Model)号、为待测SSD供电的电源的插槽号。
在一个示例性实例中,掉电类型可以是交流掉电,也可以是直流掉电。
在一个示例性实例中,为待测SSD供电的电源可以是程序控制电源,也就是可以通过程序来控制上电和下电操作的电源;为待测SSD供电的电源也可以是外接的SATA背板。
在一个示例性实例中,一个电源可以为一个或一个以上待测SSD供电,当一个电源为两个或两个以上待测SSD供电时,一个待测SSD对应电源的一个插槽。
步骤101、当没有任何一个用于向SSD下发输入输出(IO,Input Output) 命令的进程启用时,将当前循环次数加1后进行预定处理;分别获取每一个待测SSD的Model号、容量信息和Smart信息并进行预定处理;其中,预定处理包括以下一个或多个的组合:打印;写入第一日志文件。
在一个示例性实例中,当前循环次数的初始值可以设置为0,当然,也可以设置为其他的值,本发明实施例对此不作限定。
在一个示例性实例中,可以分别根据每一个待测SSD的Model号采用 fdisk-1命令获取每一个待测SSD的容量信息。
在一个示例性实例中,可以分别根据每一个待测SSD的Model号采用 smartctl-a命令获取每一个待测SSD的Smart信息。
在一个示例性实例中,用于向SSD下发IO命令的进程可以是Vdbench 进程。
在一个示例性实例中,在每一轮迭代开始时,预先获取每一个待测SSD 的Model号、容量信息和Smart信息并进行预处理,以便及时检测待测SSD 的Model号、容量信息和Smart信息是否出现异常。
步骤102、根据待测SSD的数量启用对应数量的用于向待测SSD下发IO 命令的进程,通过启用的进程分别向每一个待测SSD下发IO命令。
在一个示例性实例中,通过启用的进程分别向每一个待测SSD下发IO命令包括:
分别生成每一个待测SSD的配置文件,分别根据每一个待测SSD的配置文件通过启用的进程向每一个待测SSD下发IO命令。
在一个示例性实例中,配置文件包括待测SSD的容量信息对应的范围内的逻辑区块地址(LBA,Logical Block Address)中用于执行IO命令的LBA、读写比例、IO块大小等。
在一个示例性实例中,读写比例是指下发的IO命令中读命令所占的比例和写命令所占的比例。
在一个示例性实例中,IO块大小是指读或写的最小单元。
在一个示例性实例中,在向每一个待测SSD下发IO命令时,按照该待测 SSD的配置文件中的读写比例来下发 读命令和写命令。
在一个示例性实例中,不同待测SSD的配置文件可以是同一个,也可以是不同的配置文件,本发明实施例对此不作限定,也不用于限定本发明实施例的保护范围。
在一个示例性实例中,每一轮迭代生成的配置文件中的待测SSD的用于执行IO命令的LBA和读写比例是随机的,其他信息是固定不变的。
步骤103、分别在每一个待测SSD执行IO命令过程中向为每一个待测 SSD供电的电源下发掉电命令,在下发掉电命令后的第一预设时间后向电源下发上电命令;分别对每一个待测SSD的上电次数进行预定处理,结束所有启用的用于向待测SSD下发IO命令的进程,并继续执行步骤101,直到步骤 101中的当前循环次数加1后大于最大循环次数。
在一个示例性实例中,下发掉电命令的时机可以有很多种,具体的下发时机不用于限定本发明实施例的保护范围,例如,可以采用随机产生一个等待时间,在随机产生的等待时间超时时,执行掉电命令的下发。
在一个示例性实例中,随机产生的等待时间在10秒(s)到60s的范围内。
在一个示例性实例中,在向为每一个待测SSD供电的电源下发掉电命令和上电命令时,当测试指令中的掉电类型为交流掉电时,向为每一个待测SSD 供电的程序控制电源下发掉电命令和上电命令;当测试指令中的掉电类型为直流掉电时,向为每一个待测SSD供电的外接SATA背板下发掉电命令和上电命令。
在本发明另一个实施例中,该方法还包括:
分别根据每一个待测SSD执行IO命令时生成的第二日志文件判断每一个待测SSD是否存在IO异常的情况,当判断出所有待测SSD均不存在IO异常的情况时,继续执行所述分别向为每一个待测SSD供电的电源下发掉电命令的步骤。
在本发明另一个实施例中,当判断出至少一个待测SSD存在IO异常的情况,或向电源下发掉电命令失败,或向电源下发上电命令失败时,进行异常退出。
在一个示例性实例中,当第二日志文件中某一个待测SSD存在错误(error) 或失败(fail)时,确定该待测SSD存在IO异常的情况。
在一个示例性实例中,不同待测SSD的第二日志文件可以是同一个,也可以是不同的第二日志文件,本发明实施例对此不作限定,也不用于限定本发明实施例的保护范围。
在本发明另一个实施例中,该方法还包括:
分别检测每一个待测SSD的Model号、容量信息和Smart信息是否正常,当所有待测SSD的Model号、容量信息和Smart信息均正常时,继续执行所述结束所有启用的用于向待测SSD下发IO命令的进程的步骤。
在本发明另一个实施例中,当至少一个待测SSD的Model号、容量信息和Smart信息中的至少一项信息异常时,进行异常退出。
本发明实施例通过在待测SSD执行IO命令过程中对待测SSD进行下电和上电操作,从而实现了对SSD进行异常掉电的测试。
本发明另一个实施例提出了一种固态硬盘异常掉电的测试装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现上述任一种固态硬盘异常掉电的测试方法。
本发明另一个实施例提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种固态硬盘异常掉电的测试方法的步骤。
例如,当要测试型号为DSS200-A480G的SSD时,可以在固态硬盘异常掉电的测试装置中安装CentOS或者RedHat Linux操作***,并获得Root权限,下载安装vdbench、Python以及相关库,执行用于实现本申请的固态硬盘异常掉电的测试方法的测试脚本。
用户输入命令:python脚本名–h,可以查看脚本的命令帮助。
-t表示掉电类型,1表示交流掉电(程控电源),2表示直流掉电(主机 SATA背板);-n表示待测盘的数量,比如测试5个盘就是-n 5;-m表示待测盘的Model号,此Model可以通过lsscsi命令查看,并具备模糊匹配的功能; -s代表执行上下电的程控电源或者SATA背板的插槽号,all表示所有的插槽。
以测试5个盘直流掉电为例,用户输入命令:
python脚本名–t 2–n 5–m DSS200–s all;
执行命令后则进行上述步骤100-108的过程。
参见图2,本发明另一个实施例提出了一种固态硬盘异常掉电的测试***,包括:
固态硬盘异常掉电的测试装置201,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现上述任一种固态硬盘异常掉电的测试方法;
电源202,与一个或多个待测SSD连接,用于为一个或多个待测SSD供电,在固态硬盘异常掉电的测试装置的控制下进行掉电和上电操作;
一个或多个待测SSD203,与电源和固态硬盘异常掉电的测试装置中的处理器连接,用于接收处理器下发的IO命令并执行。
参见图3,本发明另一个实施例提出了一种固态硬盘异常掉电的测试装置,包括:
测试指令接收模块301,用于接收到测试指令;其中,所述测试指令包括:掉电类型、待测固态硬盘SSD的数量、每一个待测SSD的模型Model号、为待测SSD供电的电源的插槽号;
SSD信息记录模块302,用于当没有任何一个用于向SSD下发输入输出 IO命令的进程启用时,将当前循环次数加1后进行预定处理;分别获取每一个待测SSD的Model号、容量信息和Smart信息并进行预定处理;其中,预定处理包括以下一个或多个的组合:打印;写入第一日志文件;
IO命令下发模块303,用于根据待测SSD的数量启用对应数量的用于向待测SSD下发IO命令的进程,通过启用的进程分别向每一个待测SSD下发 IO命令;
掉电上电命令下发模块304,用于分别在每一个待测SSD执行IO命令过程中向为每一个待测SSD供电的电源下发掉电命令,在下发掉电命令后的第一预设时间后向所述电源下发上电命令;分别对每一个待测SSD的上电次数进行预定处理,结束所有启用的用于向待测SSD下发IO命令的进程;继续执行所述将当前循环次数加1后进行预定处理的步骤,直到当前循环次数加1 后大于最大循环次数。
在一个示例性实例中,掉电类型可以是交流掉电,也可以是直流掉电。
在一个示例性实例中,为待测SSD供电的电源可以是程序控制电源,也就是可以通过程序来控制上电和下电操作的电源;为待测SSD供电的电源也可以是外接的SATA背板。
在一个示例性实例中,一个电源可以为一个或一个以上待测SSD供电,当一个电源为两个或两个以上待测SSD供电时,一个待测SSD对应电源的一个插槽。
在一个示例性实例中,当前循环次数的初始值可以设置为0,当然,也可以设置为其他的值,本发明实施例对此不作限定。
在一个示例性实例中,可以分别根据每一个待测SSD的Model号采用 fdisk-1命令获取每一个待测SSD的容量信息。
在一个示例性实例中,可以分别根据每一个待测SSD的Model号采用smartctl-a命令获取每一个待测SSD的Smart信息。
在一个示例性实例中,用于向SSD下发IO命令的进程可以是Vdbench 进程。
在一个示例性实例中,在每一轮迭代开始时,预先获取每一个待测SSD 的Model号、容量信息和Smart信息并进行预处理,以便及时检测待测SSD 的Model号、容量信息和Smart信息是否出现异常。
在一个示例性实例中,IO命令下发模块303具体用于采用以下方式实现通过启用的进程分别向每一个待测SSD下发IO命令:
分别生成每一个待测SSD的配置文件,分别根据每一个待测SSD的配置文件通过启用的进程向每一个待测SSD下发IO命令。
在一个示例性实例中,配置文件包括待测SSD的容量信息对应的范围内的逻辑区块地址(LBA,Logical Block Address)中用于执行IO命令的LBA、读写比例、IO块大小等。
在一个示例性实例中,读写比例是指下发的IO命令中读命令所占的比例和写命令所占的比例。
在一个示例性实例中,IO块大小是指读或写的最小单元。
在一个示例性实例中,在向每一个待测SSD下发IO命令时,按照该待测 SSD的配置文件中的读写比例来下发 读命令和写命令。
在一个示例性实例中,不同待测SSD的配置文件可以是同一个,也可以是不同的配置文件,本发明实施例对此不作限定,也不用于限定本发明实施例的保护范围。
在一个示例性实例中,每一轮迭代生成的配置文件中的待测SSD的用于执行IO命令的LBA和读写比例是随机的,其他信息是固定不变的。
在一个示例性实例中,下发掉电命令的时机可以有很多种,具体的下发时机不用于限定本发明实施例的保护范围,例如,可以采用随机产生一个等待时间,在随机产生的等待时间超时时,执行掉电命令的下发。
在一个示例性实例中,随机产生的等待时间在10秒(s)到60s的范围内。
在一个示例性实例中,掉电上电命令下发模块304在向为每一个待测SSD 供电的电源下发掉电命令和上电命令时,当测试指令中的掉电类型为交流掉电时,向为每一个待测SSD供电的程序控制电源下发掉电命令和上电命令;当测试指令中的掉电类型为直流掉电时,向为每一个待测SSD供电的外接 SATA背板下发掉电命令和上电命令。
在本发明另一个实施例中,掉电上电命令下发模块304还用于:
分别根据每一个待测SSD执行IO命令时生成的第二日志文件判断每一个待测SSD是否存在IO异常的情况,当判断出所有待测SSD均不存在IO异常的情况时,继续执行所述分别向为每一个待测SSD供电的电源下发掉电命令的步骤。
在本发明另一个实施例中,掉电上电命令下发模块304还用于:
当判断出至少一个待测SSD存在IO异常的情况,或向电源下发掉电命令失败,或向电源下发上电命令失败时,进行异常退出。
在一个示例性实例中,当第二日志文件中某一个待测SSD存在错误(error) 或失败(fail)时,确定该待测SSD存在IO异常的情况。
在一个示例性实例中,不同待测SSD的第二日志文件可以是同一个,也可以是不同的第二日志文件,本发明实施例对此不作限定,也不用于限定本发明实施例的保护范围。
在本发明另一个实施例中,IO命令下发模块303还用于:
分别检测每一个待测SSD的Model号、容量信息和Smart信息是否正常,当所有待测SSD的Model号、容量信息和Smart信息均正常时,继续执行所述结束所有启用的用于向待测SSD下发IO命令的进程的步骤。
在本发明另一个实施例中,IO命令下发模块303还用于:
当至少一个待测SSD的Model号、容量信息和Smart信息中的至少一项信息异常时,进行异常退出。
本发明实施例通过在待测SSD执行IO命令过程中对待测SSD进行下电和上电操作,从而实现了对SSD进行异常掉电的测试。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、***、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质) 和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
虽然本发明实施例所揭露的实施方式如上,但所述的内容仅为便于理解本发明实施例而采用的实施方式,并非用以限定本发明实施例。任何本发明实施例所属领域内的技术人员,在不脱离本发明实施例所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明实施例的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (7)

1.一种固态硬盘异常掉电的测试方法,包括:
接收到测试指令;其中,所述测试指令包括:掉电类型、待测固态硬盘SSD的数量、每一个待测SSD的模型Model号、为待测SSD供电的电源的插槽号;
当没有任何一个用于向SSD下发输入输出IO命令的进程启用时,将当前循环次数加1后进行预定处理;分别获取每一个待测SSD的Model号、容量信息和Smart信息并进行预定处理;其中,预定处理包括以下一个或多个的组合:打印;写入第一日志文件;
根据待测SSD的数量启用对应数量的用于向待测SSD下发IO命令的进程,通过启用的进程分别向每一个待测SSD下发IO命令;
分别在每一个待测SSD执行IO命令过程中向为每一个待测SSD供电的电源下发掉电命令,在下发掉电命令后的第一预设时间后向所述电源下发上电命令;分别对每一个待测SSD的上电次数进行预定处理,结束所有启用的用于向待测SSD下发IO命令的进程;继续执行所述将当前循环次数加1后进行预定处理的步骤,直到当前循环次数加1后大于最大循环次数;
所述通过启用的进程分别向每一个待测SSD下发IO命令包括:
分别生成每一个待测SSD的配置文件,分别根据每一个待测SSD的配置文件通过启用的进程向每一个待测SSD下发IO命令;其中所述配置文件中包括:读写比例,在向每一个待测SSD下发IO命令时,按照该待测SSD的配置文件中的读写比例来 下发读命令和写命令。
2.根据权利要求1所述的测试方法,其特征在于,所述配置文件包括所述待测SSD的容量信息对应的范围内的逻辑区块地址LBA中用于执行IO命令的LBA、读写比例、IO块大小。
3.根据权利要求1所述的测试方法,其特征在于,该方法还包括:
分别根据每一个待测SSD执行IO命令时生成的第二日志文件判断每一个待测SSD是否存在IO异常的情况,当判断出所有待测SSD均不存在IO异常的情况时,继续执行所述分别向为每一个待测SSD供电的电源下发掉电命令的步骤。
4.根据权利要求1所述的测试方法,其特征在于,该方法还包括:
分别检测每一个待测SSD的Model号、容量信息和Smart信息是否正常,当所有待测SSD的Model号、容量信息和Smart信息均正常时,继续执行所述结束所有启用的用于向待测SSD下发IO命令的进程的步骤。
5.一种固态硬盘异常掉电的测试装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令被所述处理器执行时,实现如权利要求1~4任一项所述的固态硬盘异常掉电的测试方法。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1~4任一项所述的固态硬盘异常掉电的测试方法的步骤。
7.一种固态硬盘异常掉电的测试***,包括:
固态硬盘异常掉电的测试装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现如权利要求1~4任一项固态硬盘异常掉电的测试方法;
电源,与一个或多个待测固态硬盘SSD连接,用于为一个或多个待测SSD供电,在固态硬盘异常掉电的测试装置的控制下进行掉电和上电操作;
一个或多个待测SSD,与电源和固态硬盘异常掉电的测试装置中的处理器连接,用于接收处理器下发的IO命令并执行。
CN201911376530.5A 2019-12-27 2019-12-27 一种固态硬盘异常掉电的测试方法、装置和*** Active CN111105840B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911376530.5A CN111105840B (zh) 2019-12-27 2019-12-27 一种固态硬盘异常掉电的测试方法、装置和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911376530.5A CN111105840B (zh) 2019-12-27 2019-12-27 一种固态硬盘异常掉电的测试方法、装置和***

Publications (2)

Publication Number Publication Date
CN111105840A CN111105840A (zh) 2020-05-05
CN111105840B true CN111105840B (zh) 2022-03-08

Family

ID=70424221

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911376530.5A Active CN111105840B (zh) 2019-12-27 2019-12-27 一种固态硬盘异常掉电的测试方法、装置和***

Country Status (1)

Country Link
CN (1) CN111105840B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111897685A (zh) * 2020-07-29 2020-11-06 深圳佰维存储科技股份有限公司 掉电时校验数据的方法、装置、存储介质及电子设备
CN112559266B (zh) * 2020-12-09 2023-06-06 成都佰维存储科技有限公司 固态硬盘测试方法、装置、可读存储介质及电子设备
CN113094222A (zh) * 2021-04-12 2021-07-09 深圳忆联信息***有限公司 固态硬盘磨损均衡时的异常掉电测试方法及装置
CN113205852B (zh) * 2021-06-17 2022-05-24 长江存储科技有限责任公司 存储器***的掉电测试控制电路、测试***及方法
CN113892142A (zh) * 2021-08-31 2022-01-04 长江存储科技有限责任公司 存储器***的固件的掉电测试
CN113960391A (zh) * 2021-09-13 2022-01-21 珠海亿智电子科技有限公司 存储介质异常掉电测试装置及方法
CN115083510B (zh) * 2022-07-22 2023-01-10 深圳佰维存储科技股份有限公司 固态硬盘测试方法、装置、存储介质、电源及电子设备
CN115035946A (zh) * 2022-08-12 2022-09-09 武汉麓谷科技有限公司 一种可扩展的NVMe固态硬盘测试***

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140059278A1 (en) * 2011-11-14 2014-02-27 Lsi Corporation Storage device firmware and manufacturing software
CN108766487A (zh) * 2018-05-31 2018-11-06 郑州云海信息技术有限公司 一种硬盘异常下电方法、***、设备及计算机存储介质
CN109524049B (zh) * 2018-11-26 2021-04-20 深圳忆联信息***有限公司 Ssd异常掉电测试方法、装置、计算机设备和存储介质
CN110085278A (zh) * 2019-04-04 2019-08-02 烽火通信科技股份有限公司 一种eMMC掉电保护的测试方法及***
CN110489282A (zh) * 2019-07-03 2019-11-22 苏州浪潮智能科技有限公司 一种服务器反复上下电的稳定性测试方法及装置
CN110569158A (zh) * 2019-08-30 2019-12-13 东莞记忆存储科技有限公司 测试ssd随机场景下异常掉电的方法、装置及计算机设备

Also Published As

Publication number Publication date
CN111105840A (zh) 2020-05-05

Similar Documents

Publication Publication Date Title
CN111105840B (zh) 一种固态硬盘异常掉电的测试方法、装置和***
KR101721154B1 (ko) 구성가능 에러 문턱값들 및 고장 해석 능력을 지니는 메모리 시스템
US7356744B2 (en) Method and system for optimizing testing of memory stores
WO2019120133A1 (zh) 一种基于固态硬盘的日志文件的读写方法及固态硬盘
US10997516B2 (en) Systems and methods for predicting persistent memory device degradation based on operational parameters
CN110618892A (zh) 一种固态硬盘的bug定位方法、装置、电子设备及介质
TW201730764A (zh) 用來於一儲存系統中進行資料擦洗管理之方法與裝置
CN102968353A (zh) 一种失效地址处理方法及装置
US11294779B2 (en) Memory device providing fast data recovery
US6985826B2 (en) System and method for testing a component in a computer system using voltage margining
KR20160074025A (ko) 데이터 저장 장치의 동작 방법
US11282584B2 (en) Multi-chip package and method of testing the same
CN113366576A (zh) 用于存储器***上的功率损耗操作的保持自测试
CN110955387A (zh) 自适应识别闪存类型方法及计算机可读取存储介质及装置
CN112099597A (zh) 一种板卡适配方法、装置、设备及机器可读存储介质
CN104391755A (zh) 嵌入式多媒体卡eMMC芯片异常的处理方法和装置
CN114880177A (zh) 固态硬盘的整机异常掉电测试方法、装置和计算机设备
KR20190086927A (ko) 메모리 시스템 및 그것의 동작 방법
US11036493B2 (en) Memory system and operating method thereof
CN111897685A (zh) 掉电时校验数据的方法、装置、存储介质及电子设备
CN105630523A (zh) 计算机bios资料恢复***及方法
JP2014179095A (ja) ハイバネーションからの迅速な再開のための装置、方法およびデバイス
US9218260B2 (en) Host device and method for testing booting of servers
US10705827B2 (en) Method for updating system information of a computer device
US11593242B2 (en) Method of operating storage device for improving reliability, storage device performing the same and method of operating storage using the same

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder

Address after: 230088 floor 7, block C, building J2, phase II, innovation industrial park, high tech Zone, Hefei, Anhui Province

Patentee after: HEFEI DATANG STORAGE TECHNOLOGY Co.,Ltd.

Address before: 100089 No. 6, Yongjia North Road, Haidian District, Beijing

Patentee before: HEFEI DATANG STORAGE TECHNOLOGY Co.,Ltd.

CP02 Change in the address of a patent holder