本发明涉及存储技术领域,尤其涉及一种存储设备的命令序列测试方法和装置以及设备。
背景技术:
现有的存储设备的命令序列测试方案,一般在对存储设备的命令序列进行测试时,每次测试的命令序列都是随机生成的,造成每次对存储设备的命令序列进行测试的测试结果都不一样,导致在对存储设备的命令序列进行测试的测试过程出现异常时,无法恢复异常现场。
技术实现要素:
有鉴于此,本发明的目的在于提出一种存储设备的命令序列测试方法和装置以及设备,能够实现在对存储设备的命令序列进行测试的测试过程出现异常时,能够恢复异常现场。
根据本发明的一个方面,提供一种存储设备的命令序列测试方法,包括:在对存储设备的命令序列进行测试的测试过程中,抓取所述测试过程中的存储设备总线上的物理读写命令序列;在所述对存储设备的命令序列进行测试的测试过程出现异常时,根据所述抓取的物理读写命令序列,对所述存储设备的命令序列进行模拟测试得到模拟测试结果;根据所述模拟测试结果,恢复关联所述出现的异常测试过程的异常现场。
其中,所述在对存储设备的命令序列进行测试的测试过程中,抓取所述测试过程中的存储设备总线上的物理读写命令序列,包括:在对存储设备的命令序列进行测试的测试过程中,采用超级软件总线协议分析器方式,抓取所述测试过程中的存储设备总线上的物理读写命令序列。
其中,所述在所述对存储设备的命令序列进行测试的测试过程出现异常时,根据所述抓取的物理读写命令序列,对所述存储设备的命令序列进行模拟测试得到模拟测试结果,包括:在所述对存储设备的命令序列进行测试的测试过程出现异常时,按照超级软件总线协议分析器的存储格式分析所述抓取的物理读写命令序列的命令类型、操作地址、操作数据长度信息得到所述物理读写命令序列的分析信息,根据所述物理读写命令序列的分析信息,对所述存储设备的命令序列进行模拟测试得到模拟测试结果。
其中,在所述根据所述模拟测试结果,恢复关联所述出现的异常测试过程的异常现场之后,还包括:对所述恢复的异常现场进行修复,修复得到对所述存储设备的命令序列进行测试的正常测试过程。
根据本发明的另一个方面,提供一种存储设备的命令序列测试装置,包括:抓取模块、模拟测试模块和恢复模块;所述抓取模块,用于在对存储设备的命令序列进行测试的测试过程中,抓取所述测试过程中的存储设备总线上的物理读写命令序列;所述模拟测试模块,用于在所述对存储设备的命令序列进行测试的测试过程出现异常时,根据所述抓取的物理读写命令序列,对所述存储设备的命令序列进行模拟测试得到模拟测试结果;所述恢复模块,用于根据所述模拟测试结果,恢复关联所述出现的异常测试过程的异常现场。
其中,所述抓取模块,具体用于:在对存储设备的命令序列进行测试的测试过程中,采用超级软件总线协议分析器方式,抓取所述测试过程中的存储设备总线上的物理读写命令序列。
其中,所述模拟测试模块,具体用于:在所述对存储设备的命令序列进行测试的测试过程出现异常时,按照超级软件总线协议分析器的存储格式分析所述抓取的物理读写命令序列的命令类型、操作地址、操作数据长度信息得到所述物理读写命令序列的分析信息,根据所述物理读写命令序列的分析信息,对所述存储设备的命令序列进行模拟测试得到模拟测试结果。
其中,所述存储设备的命令序列测试装置,还包括:修复模块;所述修复模块,用于对所述恢复的异常现场进行修复,修复得到对所述存储设备的命令序列进行测试的正常测试过程。
根据本发明的又一个方面,提供一种存储设备的命令序列测试设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述任一项所述的存储设备的命令序列测试方法。
根据本发明的再一个方面,提供一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上述任一项所述的存储设备的命令序列测试方法。
可以发现,以上方案,可以在对存储设备的命令序列进行测试的测试过程中,抓取该测试过程中的存储设备总线上的物理读写命令序列,和可以在该对存储设备的命令序列进行测试的测试过程出现异常时,根据该抓取的物理读写命令序列,对该存储设备的命令序列进行模拟测试得到模拟测试结果,以及可以根据该模拟测试结果,恢复关联该出现的异常测试过程的异常现场,能够实现在对存储设备的命令序列进行测试的测试过程出现异常时,能够恢复异常现场。
进一步的,以上方案,可以在对存储设备的命令序列进行测试的测试过程中,采用超级软件总线协议分析器方式,抓取该测试过程中的存储设备总线上的物理读写命令序列,这样的好处是能够实现抓取在对存储设备的命令序列进行测试的测试过程中的存储设备总线上的物理读写命令序列,便于根据该抓取的物理读写命令序列对存在异常测试过程的存储设备的命令序列进行模拟测试,进而便于根据该模拟测试过程恢复异常现场。
进一步的,以上方案,可以在该对存储设备的命令序列进行测试的测试过程出现异常时,按照超级软件总线协议分析器的存储格式分析该抓取的物理读写命令序列的命令类型、操作地址、操作数据长度等信息得到该物理读写命令序列的分析信息,根据该物理读写命令序列的分析信息,对该存储设备的命令序列进行模拟测试得到模拟测试结果,这样的好处是能够对该存储设备按照相同的命令序列进行模拟测试,达到等同于实际测试该存储设备的命令序列的测试效果,便于根据该模拟测试结果,对该存储设备在异常测试过程中的现场复现。
进一步的,以上方案,可以对该恢复的异常现场进行修复,修复得到对该存储设备的命令序列进行测试的正常测试过程,这样的好处是能够实现对该恢复的异常现场进行修复,以确保关联对该存储设备的命令序列进行测试的测试结果的正确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明存储设备的命令序列测试方法一实施例的流程示意图;
图2是本发明存储设备的命令序列测试方法另一实施例的流程示意图;
图3是本发明存储设备的命令序列测试装置一实施例的结构示意图;
图4是本发明存储设备的命令序列测试装置另一实施例的结构示意图;
图5是本发明存储设备的命令序列测试设备一实施例的结构示意图。
具体实施方式
下面结合附图和实施例,对本发明作进一步的详细描述。特别指出的是,以下实施例仅用于说明本发明,但不对本发明的范围进行限定。同样的,以下实施例仅为本发明的部分实施例而非全部实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明提供一种存储设备的命令序列测试方法,能够实现在对存储设备的命令序列进行测试的测试过程出现异常时,能够恢复异常现场。
请参见图1,图1是本发明存储设备的命令序列测试方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本发明的方法并不以图1所示的流程顺序为限。如图1所示,该方法包括如下步骤:
s101:在对存储设备的命令序列进行测试的测试过程中,抓取该测试过程中的存储设备总线上的物理读写命令序列。
其中,该在对存储设备的命令序列进行测试的测试过程中,抓取该测试过程中的存储设备总线上的物理读写命令序列,可以包括:
在对存储设备的命令序列进行测试的测试过程中,采用bushound(超级软件总线协议分析器)方式,抓取该测试过程中的存储设备总线上的物理读写命令序列,这样的好处是能够实现抓取在对存储设备的命令序列进行测试的测试过程中的存储设备总线上的物理读写命令序列,便于根据该抓取的物理读写命令序列对存在异常测试过程的存储设备的命令序列进行模拟测试,进而便于根据该模拟测试过程恢复异常现场。
在本实施例中,由于对于存储设备来说模拟测试命令序列通常只需要关心物理操作的地址和数据长度序列,而不关心物理操作的实际数据情况,所以可以不抓取在对存储设备的命令序列进行测试的测试过程中的物理操作的数据情况。
s102:在该对存储设备的命令序列进行测试的测试过程出现异常时,根据该抓取的物理读写命令序列,对该存储设备的命令序列进行模拟测试得到模拟测试结果。
其中,该在该对存储设备的命令序列进行测试的测试过程出现异常时,根据该抓取的物理读写命令序列,对该存储设备的命令序列进行模拟测试得到模拟测试结果,可以包括:
在该对存储设备的命令序列进行测试的测试过程出现异常时,按照超级软件总线协议分析器的存储格式分析该抓取的物理读写命令序列的命令类型、操作地址、操作数据长度等信息得到该物理读写命令序列的分析信息,根据该物理读写命令序列的分析信息,对该存储设备的命令序列进行模拟测试得到模拟测试结果,这样的好处是能够对该存储设备按照相同的命令序列进行模拟测试,达到等同于实际测试该存储设备的命令序列的测试效果,便于根据该模拟测试结果,对该存储设备在异常测试过程中的现场复现。
s103:根据该模拟测试结果,恢复关联该出现的异常测试过程的异常现场。
其中,在该根据该模拟测试结果,恢复关联该出现的异常测试过程的异常现场之后,还可以包括:
对该恢复的异常现场进行修复,修复得到对该存储设备的命令序列进行测试的正常测试过程,这样的好处是能够实现对该恢复的异常现场进行修复,以确保关联对该存储设备的命令序列进行测试的测试结果的正确性。
可以发现,在本实施例中,可以在对存储设备的命令序列进行测试的测试过程中,抓取该测试过程中的存储设备总线上的物理读写命令序列,和可以在该对存储设备的命令序列进行测试的测试过程出现异常时,根据该抓取的物理读写命令序列,对该存储设备的命令序列进行模拟测试得到模拟测试结果,以及可以根据该模拟测试结果,恢复关联该出现的异常测试过程的异常现场,能够实现在对存储设备的命令序列进行测试的测试过程出现异常时,能够恢复异常现场。
进一步的,在本实施例中,可以在对存储设备的命令序列进行测试的测试过程中,采用超级软件总线协议分析器方式,抓取该测试过程中的存储设备总线上的物理读写命令序列,这样的好处是能够实现抓取在对存储设备的命令序列进行测试的测试过程中的存储设备总线上的物理读写命令序列,便于根据该抓取的物理读写命令序列对存在异常测试过程的存储设备的命令序列进行模拟测试,进而便于根据该模拟测试过程恢复异常现场。
进一步的,在本实施例中,可以在该对存储设备的命令序列进行测试的测试过程出现异常时,按照超级软件总线协议分析器的存储格式分析该抓取的物理读写命令序列的命令类型、操作地址、操作数据长度等信息得到该物理读写命令序列的分析信息,根据该物理读写命令序列的分析信息,对该存储设备的命令序列进行模拟测试得到模拟测试结果,这样的好处是能够对该存储设备按照相同的命令序列进行模拟测试,达到等同于实际测试该存储设备的命令序列的测试效果,便于根据该模拟测试结果,对该存储设备在异常测试过程中的现场复现。
请参见图2,图2是本发明存储设备的命令序列测试方法另一实施例的流程示意图。本实施例中,该方法包括以下步骤:
s201:在对存储设备的命令序列进行测试的测试过程中,抓取该测试过程中的存储设备总线上的物理读写命令序列。
可如上s101所述,在此不作赘述。
s202:在该对存储设备的命令序列进行测试的测试过程出现异常时,根据该抓取的物理读写命令序列,对该存储设备的命令序列进行模拟测试得到模拟测试结果。
可如上s102所述,在此不作赘述。
s203:根据该模拟测试结果,恢复关联该出现的异常测试过程的异常现场。
可如上s103所述,在此不作赘述。
s204:对该恢复的异常现场进行修复,修复得到对该存储设备的命令序列进行测试的正常测试过程。
可以发现,在本实施例中,可以对该恢复的异常现场进行修复,修复得到对该存储设备的命令序列进行测试的正常测试过程,这样的好处是能够实现对该恢复的异常现场进行修复,以确保关联对该存储设备的命令序列进行测试的测试结果的正确性。
本发明还提供一种存储设备的命令序列测试装置,能够实现在对存储设备的命令序列进行测试的测试过程出现异常时,能够恢复异常现场。
请参见图3,图3是本发明存储设备的命令序列测试装置一实施例的结构示意图。本实施例中,该存储设备的命令序列测试装置30包括抓取模块31、模拟测试模块32和恢复模块33。
该抓取模块31,用于在对存储设备的命令序列进行测试的测试过程中,抓取该测试过程中的存储设备总线上的物理读写命令序列。
该模拟测试模块32,用于在该对存储设备的命令序列进行测试的测试过程出现异常时,根据该抓取的物理读写命令序列,对该存储设备的命令序列进行模拟测试得到模拟测试结果。
该恢复模块33,用于根据该模拟测试结果,恢复关联该出现的异常测试过程的异常现场。
可选地,该抓取模块31,可以具体用于:
在对存储设备的命令序列进行测试的测试过程中,采用超级软件总线协议分析器方式,抓取该测试过程中的存储设备总线上的物理读写命令序列。
可选地,该模拟测试模块32,可以具体用于:
在该对存储设备的命令序列进行测试的测试过程出现异常时,按照超级软件总线协议分析器的存储格式分析该抓取的物理读写命令序列的命令类型、操作地址、操作数据长度等信息得到该物理读写命令序列的分析信息,根据该物理读写命令序列的分析信息,对该存储设备的命令序列进行模拟测试得到模拟测试结果。
请参见图4,图4是本发明存储设备的命令序列测试装置另一实施例的结构示意图。区别于上一实施例,本实施例所述存储设备的命令序列测试装置40还包括修复模块41。
该修复模块41,用于对该恢复的异常现场进行修复,修复得到对该存储设备的命令序列进行测试的正常测试过程。
该存储设备的命令序列测试装置30/40的各个单元模块可分别执行上述方法实施例中对应步骤,故在此不对各单元模块进行赘述,详细请参见以上对应步骤的说明。
本发明又提供一种存储设备的命令序列测试设备,如图5所示,包括:至少一个处理器51;以及,与至少一个处理器51通信连接的存储器52;其中,存储器52存储有可被至少一个处理器51执行的指令,指令被至少一个处理器51执行,以使至少一个处理器51能够执行上述的存储设备的命令序列测试方法。
其中,存储器52和处理器51采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器51和存储器52的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器51处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器51。
处理器51负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器52可以被用于存储处理器51在执行操作时所使用的数据。
本发明再提供一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
可以发现,以上方案,可以在对存储设备的命令序列进行测试的测试过程中,抓取该测试过程中的存储设备总线上的物理读写命令序列,和可以在该对存储设备的命令序列进行测试的测试过程出现异常时,根据该抓取的物理读写命令序列,对该存储设备的命令序列进行模拟测试得到模拟测试结果,以及可以根据该模拟测试结果,恢复关联该出现的异常测试过程的异常现场,能够实现在对存储设备的命令序列进行测试的测试过程出现异常时,能够恢复异常现场。
进一步的,以上方案,可以在对存储设备的命令序列进行测试的测试过程中,采用超级软件总线协议分析器方式,抓取该测试过程中的存储设备总线上的物理读写命令序列,这样的好处是能够实现抓取在对存储设备的命令序列进行测试的测试过程中的存储设备总线上的物理读写命令序列,便于根据该抓取的物理读写命令序列对存在异常测试过程的存储设备的命令序列进行模拟测试,进而便于根据该模拟测试过程恢复异常现场。
进一步的,以上方案,可以在该对存储设备的命令序列进行测试的测试过程出现异常时,按照超级软件总线协议分析器的存储格式分析该抓取的物理读写命令序列的命令类型、操作地址、操作数据长度等信息得到该物理读写命令序列的分析信息,根据该物理读写命令序列的分析信息,对该存储设备的命令序列进行模拟测试得到模拟测试结果,这样的好处是能够对该存储设备按照相同的命令序列进行模拟测试,达到等同于实际测试该存储设备的命令序列的测试效果,便于根据该模拟测试结果,对该存储设备在异常测试过程中的现场复现。
进一步的,以上方案,可以对该恢复的异常现场进行修复,修复得到对该存储设备的命令序列进行测试的正常测试过程,这样的好处是能够实现对该恢复的异常现场进行修复,以确保关联对该存储设备的命令序列进行测试的测试结果的正确性。
在本发明所提供的几个实施方式中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本发明各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的部分实施例,并非因此限制本发明的保护范围,凡是利用本发明说明书及附图内容所作的等效装置或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
1.一种存储设备的命令序列测试方法,其特征在于,包括:
在对存储设备的命令序列进行测试的测试过程中,抓取所述测试过程中的存储设备总线上的物理读写命令序列;
在所述对存储设备的命令序列进行测试的测试过程出现异常时,根据所述抓取的物理读写命令序列,对所述存储设备的命令序列进行模拟测试得到模拟测试结果;
根据所述模拟测试结果,恢复关联所述出现的异常测试过程的异常现场。
2.如权利要求1所述的存储设备的命令序列测试方法,其特征在于,所述在对存储设备的命令序列进行测试的测试过程中,抓取所述测试过程中的存储设备总线上的物理读写命令序列,包括:
在对存储设备的命令序列进行测试的测试过程中,采用超级软件总线协议分析器方式,抓取所述测试过程中的存储设备总线上的物理读写命令序列。
3.如权利要求1所述的存储设备的命令序列测试方法,其特征在于,所述在所述对存储设备的命令序列进行测试的测试过程出现异常时,根据所述抓取的物理读写命令序列,对所述存储设备的命令序列进行模拟测试得到模拟测试结果,包括:
在所述对存储设备的命令序列进行测试的测试过程出现异常时,按照超级软件总线协议分析器的存储格式分析所述抓取的物理读写命令序列的命令类型、操作地址、操作数据长度信息得到所述物理读写命令序列的分析信息,根据所述物理读写命令序列的分析信息,对所述存储设备的命令序列进行模拟测试得到模拟测试结果。
4.如权利要求1所述的存储设备的命令序列测试方法,其特征在于,在所述根据所述模拟测试结果,恢复关联所述出现的异常测试过程的异常现场之后,还包括:
对所述恢复的异常现场进行修复,修复得到对所述存储设备的命令序列进行测试的正常测试过程。
5.一种存储设备的命令序列测试装置,其特征在于,包括:
抓取模块、模拟测试模块和恢复模块;
所述抓取模块,用于在对存储设备的命令序列进行测试的测试过程中,抓取所述测试过程中的存储设备总线上的物理读写命令序列;
所述模拟测试模块,用于在所述对存储设备的命令序列进行测试的测试过程出现异常时,根据所述抓取的物理读写命令序列,对所述存储设备的命令序列进行模拟测试得到模拟测试结果;
所述恢复模块,用于根据所述模拟测试结果,恢复关联所述出现的异常测试过程的异常现场。
6.如权利要求5所述的存储设备的命令序列测试装置,其特征在于,所述抓取模块,具体用于:
在对存储设备的命令序列进行测试的测试过程中,采用超级软件总线协议分析器方式,抓取所述测试过程中的存储设备总线上的物理读写命令序列。
7.如权利要求5所述的存储设备的命令序列测试装置,其特征在于,所述模拟测试模块,具体用于:
在所述对存储设备的命令序列进行测试的测试过程出现异常时,按照超级软件总线协议分析器的存储格式分析所述抓取的物理读写命令序列的命令类型、操作地址、操作数据长度信息得到所述物理读写命令序列的分析信息,根据所述物理读写命令序列的分析信息,对所述存储设备的命令序列进行模拟测试得到模拟测试结果。
8.如权利要求5所述的存储设备的命令序列测试装置,其特征在于,所述存储设备的命令序列测试装置,还包括:
修复模块;
所述修复模块,用于对所述恢复的异常现场进行修复,修复得到对所述存储设备的命令序列进行测试的正常测试过程。
9.一种存储设备的命令序列测试设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至4中任一项所述的存储设备的命令序列测试方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的存储设备的命令序列测试方法。
技术总结