可扩展固件接口下的硬盘测试方法

文档序号:6587344阅读:225来源:国知局
专利名称:可扩展固件接口下的硬盘测试方法
技术领域
本发明涉及一种硬盘测试方法,尤其涉及一种可扩展固件接口下的硬盘测试方 法。
背景技术
硬盘为计算机的主要部件,其性能的好坏直接影响整个计算机的性能,因此 硬盘的性能测试是决定硬盘性能好坏的关键环节。在可扩展固件接口(Extensible FirmwareInterface,EFI)出现以前,主机板生产商对主机板读写硬盘性能的测试主要是在 DOS下或者Windows或者Linux下进行,在这些操作系统下进行测试,需要对测试时间进行 一定的限制,而且在进行硬盘的块设备的读写测试时,需要避开操作系统所在的区域进行, 增加了测试难度,降低了测试效率。

发明内容
鉴于以上内容,有必要提供一种可扩展固件接口下的硬盘测试方法,实现在EFI 下对硬盘性能的测试。一种可扩展固件接口下硬盘的测试方法,该方法包括(a)获取硬盘设备树中所 有可扩展固件接口能够识别的设备路径;(b)根据所获取的设备路径获取所述设备路径所 对应的句柄;(c)查找每一个设备路径所在结点的父结点,并获取所述父结点信息中的句 柄;(d)判断步骤(b)所获取的句柄中是否存在与步骤(c)所获取的父结点信息中的句柄 相同的句柄,若步骤(b)所获取的句柄中存在与步骤(C)所获取的父结点信息中的句柄相 同的句柄,则进入步骤(e),若步骤(b)所获取的句柄中不存与步骤(c)所获取的父结点信 息中的句柄相同的句柄,则进入步骤(f) ; (e)获取所述相同句柄所在结点的父结点信息中 的句柄,并转至步骤(d) ; (f)查看最终得到的句柄数量,该句柄数量即为待测硬盘的数量; 及(g)根据最终得到的句柄找到对应的设备路径,所述设备路径即为待测硬盘的型号。相较于现有技术,所述可扩展固件接口下的硬盘测试方法,利用EFI的特性,实现 在短时间内主机板读写硬盘性能的测试,提高工作效率。


图1是本发明可扩展固件接口下的硬盘测试方法较佳实施例的运行环境图。图2是待测硬盘3的设备树的示意图。图3是本发明可扩展固件接口下的硬盘信息的测试方法较佳实施例的流程图。图4是本发明可扩展固件接口下的硬盘块设备的测试方法较佳实施例的流程图。图5是本发明可扩展固件接口下的硬盘文件系统空闲空间读写的测试方法较佳 实施例的流程图。
具体实施例方式如图1所示,是本发明可扩展固件接口下的硬盘测试方法较佳实施例的运行环境 图。硬盘性能测试系统100运行于存储设备1中,该存储设备1可以为U盘,移动硬盘等。 该存储设备ι通过USB接口连接于主机2,该主机2通过读取该存储设备1中的硬盘性能 测试系统100对待测硬盘3进行测试。本较佳实施例中,该待测硬盘3可以为一个,也可 以为多个。每个待测硬盘3包括多个块设备及文件系统,每个块设备是可独立读写的。每 个待测硬盘3分别可用一个设备树来表示,设备树的根结点表示该待测硬盘3,叶子结点表 示该待测硬盘3的块设备及文件系统。本较佳实施例中,每个待测硬盘3至少包括2个格 式化后的分区,假设格式化的分区分别为分区C和分区D,其中分区C为文件配置表(File Allocation Table 32,FAT32)系统,分区 D 为 New Technology File System(NTFS 系统)。 所述FAT32系统用于测试硬盘文件系统的读写性能及块设备的读写性能,所述NTFS系统用 于测试块设备的读写性能。本发明可扩展固件接口下的硬盘测试包括三个部分的测试待 测硬盘3信息的测试,待测硬盘3的块设备的测试及待测硬盘3的文件系统的测试。如图2所示为待测硬盘3的设备树的示意图。该设备树的每个叶子结点表 示一个块设备或者一个文件系统,每个结点信息包括设备路径(Device path)和句柄 (Handle),该设备路径表示该块设备或者文件系统的路径,句柄表示该设备路径对应的句 柄。如图2所示的设备树中包括两个待测硬盘,该两个待测硬盘的型号分别为=Hitachi HDT725025VLA380和ST380215AS,本发明通过该设备树找出每个待测硬盘3中的所有块设 备和文件系统,再通过这些块设备和文件系统查找到该待测硬盘3的信息,该待测硬盘3 的信息包括待测硬盘3的数量,每个待测硬盘3的厂商,接口类型及固件(firmware)版本 等。例如标注201所指向的结点信息为[170]FAT File System,该结点表示的是文件 系统,其中,“FAT FileSystem”表示该结点的设备路径,“170”表示该设备路径所对应的 句柄。标注 202 所指向的结点信息为[171]PciRoot (0x0) /Pci (OxlF, 0x5) /ATA(Primary, Master, 0x0) /HD (2,MBR, 0xl9EFDlA8,0xl40249A, 0xC80343F),该结点表示的是块设备,其 中,“PciRoot (OxO)/Pci (OxlF,0x5)/ATA(Primary, Master,0x0)/HD(2,MBR,0xl9EFDlA8, 0xl40249A, 0xC80343F),,表示该结点的设备路径,“ 171 ”表示该设备路径所对应的句柄。如图3所示,是本发明可扩展固件接口下的硬盘信息的测试方法较佳实施例的流程图。步骤S30,硬盘性能测试系统100获取设备树中所有EFI能够识别的设备路径。如 图2所示,EFI能够识别的设备路径包括标注201、202、203、204、301、302、303所对应的结 点信息中的设备路径。步骤S31,根据所获取的设备路径获取该设备路径所对应的句柄。步骤S32,查找所获取的设备路径所在结点的父结点,并获取该父结点信息中的句 柄。例如,如图2所示,标注203指向的结点的父结点的句柄为171,标注204指向的结点的 父结点的句柄为171,标注303指向的结点的父结点的句柄为175。步骤S33,判断步骤S31所获取的句柄中是否存在与所获取的父结点信息中的句 柄相同的句柄。若步骤S31所获取的句柄中存在与所获取的父结点信息中的句柄相同的句 柄,则进入步骤S34。若步骤S31所获取的句柄中不存在与所获取的父结点信息中的句柄相 同的句柄,则进入步骤S35。步骤S34,获取所述相同句柄所在结点的父结点信息中的句柄,并转至步骤S33。
5例如图2中,标注203和标注204所指向的结点的父结点的句柄为171,与步骤S31中获取的标注202所指向结点的句柄相同,及标注303所指向的结点的父结点的句柄为175,与步 骤S31中获取的标注302所指向结点的句柄相同,则再继续查找句柄171及句柄175所在 结点的父结点信息中的句柄,得到的句柄为16E及16F,转至步骤S33,步骤S31所获取的句 柄中不存在该句柄16E及16F,则进入步骤S35。步骤S35,查看最终得到的句柄数量,该句柄数量即为待测硬盘3的数量。如图2 所示,最终得到的句柄为16E与16F,即待测硬盘3的数量为2。步骤S36,根据该最终得到的句柄找到对应的设备路径,该设备路径即为该待测硬 盘3的型号,从该型号中获取该待测硬盘3的信息。例如,句柄16E为一个待测硬盘3的句 柄,该句柄对应的设备路径为Hitachi HDT725025VLA380,即为该待测硬盘3的型号,从该 型号中可得知该待测硬盘3的信息为厂商Hitachi,容量大小250G,接口类型为SATAII 8M。如图4所示,是本发明可扩展固件接口下的硬盘块设备的测试方法较佳实施例的 流程图。步骤S40,将EFI下识别的待测硬盘3的每个块设备分成多个小块,该小块的数量 可由测试人员自行设置,本较佳实施例中,每个小块可以同时进行测试,也可以按照先后顺 序进行测试,该先后顺序可由测试人员自行设定。每个小块的大小必须是512字节的整数 倍。例如,假设每个块设备大小为TotalSize MB,每个块设备被分成N个小块,则每个小块 的大小为 TotalSize*1024*1024/N 字节。步骤S41,于每个小块中划分一个测试空间,该测试空间用于小块的读写测试。该 测试空间的大小必须是512字节的整数倍。本较佳实施例中,该测试空间为每个小块的最 前面的字节。例如,若一个小块的大小为10MB,该小块的测试空间为1M,则该小块的测试空 间为该小块的最前面的1024字节。若分成的小块数量大,测试的字节大,则测试的时间长, 待测硬盘3的测试面较大。若分成的小块数量小,测试的字节小,则测试的时间短,待测硬 盘3的测试面较小。若每个小块的测试空间等于每个小块的大小,则表示测试整个待测硬
3 ο步骤S42,将每个测试空间内原本存储的数据存储到该测试空间所在小块的缓冲 区内,该缓冲区即为该小块的内存。步骤S43,往测试空间内写入测试数据。步骤S44,读出测试空间内的数据。步骤S45,判断该读出的数据是否与写入的测试数据相同。若相同,进入步骤S46。 若不相同,进入步骤S47。步骤S46,提示该小块读写测试成功,并将存储到缓冲区的数据恢复存储到该测试 空间内。步骤S47,提示该小块读写测试失败。如图5所示,是本发明可扩展固件接口下的硬盘文件系统空闲空间读写的测试方 法较佳实施例的流程图。步骤S50,列举出待测硬盘3在EFI下支持的所有文件系统分区。本较佳实施例 中,可根据设备树得出该待测硬盘3在EFI下支持的文件系统分区。所述文件系统分区可以同时测试,也可以按照先后顺序测试,该先后顺序可以由测试人员自行设定。步骤S51,将标准文件复制到每个文件系统分区的空闲空间内,该标准文件可复制 多份以填满该文件系统分区的空闲空间。该标准文件包括标准文件的内容及该标准文件的 属性,该标准文件的属性包括该标准文件的大小,EFI下复制该标准文件所需要的标准时间寸。步骤S52,读出每个文件系统分区内的文件。步骤S53,比较读出的文件与复制到每个文件系统分区内的标准文件是否相同。若 相同,则进入步骤S54。若不相同,则进入步骤S56。步骤S54,判断读出文件的时间是否正常。根据该标准文件属性中的该标准文件 在EFI下复制的标准时间来判断读出该文件的时间是否正常。若读出文件的时间正常,进 入步骤S55。若读出文件的时间不正常,进入步骤S56。步骤S55,提示用户该文件系统分区测试成功。步骤S56,提示用户该文件系统分区测试失败。最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参 照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明 的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
权利要求
一种可扩展固件接口下的硬盘测试方法,其特征在于,该方法包括步骤(a)获取硬盘设备树中所有可扩展固件接口能够识别的设备路径;(b)根据所获取的设备路径获取所述设备路径所对应的句柄;(c)查找每一个设备路径所在结点的父结点,并获取所述父结点信息中的句柄;(d)判断步骤(b)所获取的句柄中是否存在与步骤(c)所获取的父结点信息中的句柄相同的句柄,若步骤(b)所获取的句柄中存在与步骤(c)所获取的父结点信息中的句柄相同的句柄,则进入步骤(e),若步骤(b)所获取的句柄中不存与步骤(c)所获取的父结点信息中的句柄相同的句柄,则进入步骤(f);(e)获取所述相同句柄所在结点的父结点信息中的句柄,并转至步骤(d);(f)查看最终得到的句柄数量,该句柄数量即为待测硬盘的数量;及(g)根据最终得到的句柄找到对应的设备路径,所述设备路径即为待测硬盘的型号。
2.如权利要求1所述的可扩展固件接口下的硬盘测试方法,其特征在于,该方法还包 括步骤从所获取的待测硬盘的型号中得到待测硬盘的信息,该待测硬盘的信息包括厂商, 硬盘容量大小,及接口类型。
3.如权利要求1所述的可扩展固件接口下的硬盘测试方法,其特征在于,所述设备树 的每个结点表示一个块设备或者一个文件系统。
4.如权利要求3所述的可扩展固件接口下的硬盘测试方法,其特征在于,该方法还包 括块设备的测试步骤,所述块设备的测试步骤包括将可扩展固件接口下识别的待测硬盘的每个块设备分成数个小块; 于每个小块中划分一个测试空间;将每个测试空间内原本存储的数据存储到测试空间所在小块的缓冲区内; 往测试空间内写入测试数据; 读出测试空间内的数据;当读出的数据与写入的测试数据相同时,提示该小块读写测试成功,并将存储到缓冲 区的数据恢复存储到该测试空间内;及当读出的数据与写入的测试数据不同时,提示该小块读写测试失败。
5.如权利要求4所述的可扩展固件接口下的硬盘测试方法,其特征在于,所述每个小 块的大小是512字节的整数倍。
6.如权利要求4所述的可扩展固件接口下的硬盘测试方法,其特征在于,所述测试空 间的大小是512字节的整数倍,且该测试空间为每个小块的最前面的字节。
7.如权利要求3所述的可扩展固件接口下的硬盘测试方法,其特征在于,该方法还包 括文件系统空闲空间的读写测试步骤,所述文件系统空闲空间的读写测试步骤包括列举出待测硬盘在可扩展固件接口下支持的所有文件系统分区; 将标准文件复制到每个文件系统分区的空闲空间内; 读出每个文件系统分区内的文件;若读出的文件与复制到每个文件系统分区内的标准文件不同,则提示该文件系统分区 空闲空间的读写测试失败;若读出的文件与复制到每个文件系统分区内的标准文件相同,则判断所述读出文件的 时间是否正常;若读出文件的时间正常,则提示该文件系统分区空闲空间的读写测试成功;及 若读出文件的时间不正常,则提示该文件系统分区空闲空间的读写测试失败。
8.如权利要求7所述的可扩展固件接口下的硬盘测试方法,其特征在于,所述标准文 件包括标准文件的内容及该标准文件的属性,该标准文件的属性包括该标准文件的大小、 可扩展固件接口下复制该标准文件所需要的标准时间。
9.如权利要求8所述的可扩展固件接口下的硬盘测试方法,其特征在于,所述读出文 件的时间正常是指读出该文件的时间与复制该标准文件所需要的标准时间一致。
全文摘要
一种可扩展固件接口下的硬盘测试方法,包括(a)获取设备树中可扩展固件接口能够识别的设备路径;(b)根据设备路径获取对应的句柄;(c)查找设备路径所在结点的父结点及所述父结点信息中的句柄;(d)判断步骤(b)所获取的句柄中是否存在与所获取的父结点信息中句柄相同的句柄,若存在,则进入步骤(e),若不存在,则进入步骤(f);(e)获取所述相同句柄所在结点的父结点信息中的句柄,并转至步骤(d);(f)查看最终得到的句柄数量;(g)根据最终得到的句柄找到对应的设备路径,该设备路径即为该待测硬盘的型号。另外,本发明还提供一种在可扩展固件接口下硬盘块设备及硬盘空闲空间的读写测试方法。
文档编号G06F11/22GK101963931SQ20091030467
公开日2011年2月2日 申请日期2009年7月22日 优先权日2009年7月22日
发明者曾革新 申请人:鸿富锦精密工业(深圳)有限公司;鸿海精密工业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1