掌桥专利:专业的专利平台
掌桥专利
首页

一种主机建链能力检测方法、装置、设备及介质

文献发布时间:2024-04-18 20:02:18


一种主机建链能力检测方法、装置、设备及介质

技术领域

本发明涉及固态硬盘测试的技术领域,尤其涉及一种主机建链能力检测方法、装置、设备及介质。

背景技术

随着科技的发展,固态硬盘的在生活以及工作中的出现逐渐变得频繁,对于支持逻辑设备接口规范的固态硬盘而言,具有建链能力是业务实现的基础。通常会对异常的固态硬盘的建链场景进行模拟建链。而现有技术中因主机厂商对盘片的支持情况与设计不同,所以需要对不同的主机能力进行不同的测试。但是因主机中不同能力间的相互影响,使得单个能力的查询结果缺乏准确性,且当主机类型过多,表现形式也不同时,单个排查的效率过低,导致降低对建链能力测试的效率与准确性。

发明内容

本发明实施例提供了一种主机建链能力检测方法、装置、设备及介质,旨在解决现有技术中对主机的建链能力测试效率与准确性较低的问题。

第一方面,本发明实施例提供了一种主机建链能力检测方法,其包括:获取固态硬盘所在链路的连接端口的标识信息,根据所述标识信息查询对应的配置空间信息以判断并记录所述主机是否支持热拔插;获取所述固态硬盘与所述主机当前的协商速率,通过调整所述协商速率判断并记录所述主机是否支持速率切换;将所述连接端口断开连接,根据所产生的日志信息判断并记录所述主机是否支持盘片闪断;若支持所述盘片闪断则将所述连接端口的总线号断开连接,根据所产生的所述日志信息判断并记录所述主机是否支持热复位;根据所记录的结果生成主机建链能力检测报告。

第二方面,本发明实施例还提供了一种主机建链能力检测装置,其包括:热拔插判断单元,用于获取固态硬盘所在链路的连接端口的标识信息,根据所述标识信息查询对应的配置空间信息以判断并记录所述主机是否支持热拔插;速率切换单元,用于获取所述固态硬盘与所述主机当前的协商速率,通过调整所述协商速率判断并记录所述主机是否支持速率切换;闪断单元,用于将所述连接端口断开连接,根据所产生的日志信息判断并记录所述主机是否支持盘片闪断;热复位单元,用于若支持所述盘片闪断则将所述连接端口的总线号断开连接,根据所产生的所述日志信息判断并记录所述主机是否支持热复位;生成单元,用于根据所记录的结果生成主机建链能力检测报告。

第三方面,本发明实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法。

第四方面,本发明实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现上述方法。

本发明实施例提供了一种主机建链能力检测方法、装置、设备及介质。其中,所述方法包括:获取固态硬盘所在链路的连接端口的标识信息,根据所述标识信息查询对应的配置空间信息以判断并记录所述主机是否支持热拔插;获取所述固态硬盘与所述主机当前的协商速率,通过调整所述协商速率判断并记录所述主机是否支持速率切换;将所述连接端口断开连接,根据所产生的日志信息判断并记录所述主机是否支持盘片闪断;若支持所述盘片闪断则将所述连接端口的总线号断开连接,根据所产生的所述日志信息判断并记录所述主机是否支持热复位;根据所记录的结果生成主机建链能力检测报告。本发明实施例通过将是否支持闪断以及是否支持热复位等相互影响的建链能力进行联系并进行检测,以生成主机建链能力检测报告,以提高对主机的建链能力测试效率与准确性。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的主机建链能力检测方法的流程示意图;

图2为本发明实施例提供的主机建链能力检测方法的子流程示意图;

图3为本发明实施例提供的主机建链能力检测方法的子流程示意图;

图4为本发明实施例提供的主机建链能力检测方法的子流程示意图;

图5为本发明实施例提供的主机建链能力检测方法的子流程示意图;

图6为本发明实施例提供的主机建链能力检测方法的子流程示意图;

图7为本发明实施例提供的主机建链能力检测方法的子流程示意图;

图8为本发明实施例提供的主机建链能力检测装置的示意性框图;

图9为本发明实施例提供的计算机设备的示意性框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

请参阅图1,图1为本发明实施例提供的主机建链能力检测方法的示意性流程图。本实施例中的主机建链能力检测方法可以应用于主机厂商对固态硬盘的检测中,其中,所述固态硬盘为支持逻辑设备接口规范的固态硬盘,所述主机为检测所述固态硬盘的主机服务器,通过本发明方法可提前获取所测试固态硬盘的主机能力,能够提前规避测试所发生的非固态硬盘端的问题,提高测试效率与准确性。

图1是本发明实施例提供的主机建链能力检测方法的流程示意图。如图所示,该方法包括以下步骤S110-S150。

S110、获取固态硬盘所在链路的连接端口的标识信息,根据所述标识信息查询对应的配置空间信息以判断并记录所述主机是否支持热拔插。

在本实施例中,所述固态硬盘是一种存储设备,它将数据保存在闪存中。固态硬盘用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元组成。所述链路是指在计算机网络中,用于连接存储设备和计算设备的物理链路,其中,所述存储设备可以是硬盘、固态硬盘、磁带等,而计算设备可以是服务器、计算机等。所述连接端口是每个功能设备用来连接上下游设备的端口,其中,所述连接端口可表示为DSP(Down Stream Port)或USP(Upper Stream Port)。所述标识信息是PCle(PCIE接口固态硬盘)总线中的每一个功能的唯一表示符。其中,所述标识信息包括总线号(BUS)、设备号(Device)以及功能号(Function)。可根据所述标识信息查询其对应的配置空间信息以判断并记录所述主机是否支持热拔插,例如,其配置空间信息显示hot plug为“-”,则判定所述主机不支持热拔插,并进行记录,其中,所述热拔插即带电插拔,热插拔功能就是允许用户在不关闭系统,不切断电源的情况下取出和更换损坏的硬盘、电源或板卡等部件。通过检测所述主机是否支持热拔插以了解所述主机是否能在出现意外时具有及时恢复能力、扩展性和灵活性等,避免因此对固态硬盘检测失败。

在一实施例中,如图2所示,所述步骤S110之前还包括步骤S1101-S1102。

S1101、检测所述主机是否具有磁盘卷管理设备开关与热拔插开关;

S1102、若具有则将所述磁盘卷管理设备开关与所述热拔插开关全部开启。

在本实施例中,所述磁盘卷管理设备,简称为VMD(Volume Management Device),可以理解为进化版的磁盘控制器。检测所述主机是否具有磁盘卷管理设备开关与热拔插开关,即检测所述主机是否具有设备管理能力与热拔插能力。若具有则将所述磁盘卷管理设备开关与所述热拔插开关全部开启,例如,主机开机后一直按F1或(FN+F1)进入BIOS,之后按“→”方向键,切换到“configuration”选项,然后检查“configuration”选项右侧的VMDController默认是否为enabled,如果是说明磁盘卷管理设备开启成功。通过将所述磁盘卷管理设备开关与所述热拔插开关全部开启,避免在检测所述主机是否支持热拔插功能时因其未开启而导致测试结果不准确的问题。

在一实施例中,如图3所示,所述步骤S110包括步骤S111-S112。

S111、检测所述配置空间信息中是否存在目标信息;

S112、若存在所述目标信息,则判定所述主机支持热拔插。

在本实施例中,所述目标信息为显示支持热拔插的信息。具体地,根据所述总线号(BUS)、设备号(Device)以及功能号(Function)等标识信息查询其对应的配置空间信息,可查询到所述主机的CPU(中央处理器)、内存、硬盘、主板、显卡、电源等配置信息。检索所查询的信息中是否存在目标信息,具体地,检索是否存在hotplug为“+”的信息,若存在,则说明所述主机支持热拔插。并可将其信息进行记录。通过检测所述主机是否支持热拔插可了解主机是否能在出现意外时具有及时恢复能力、扩展性和灵活性等,避免因此对固态硬盘检测失败。

S120、获取所述固态硬盘与所述主机当前的协商速率,通过调整所述协商速率判断并记录所述主机是否支持速率切换。

在本实施例中,所述协商速率是固态硬盘与主机进行数据传输的速率。获取所述固态硬盘与所述主机当前的协商速率,并将其进行调整以判断所述主机是否支持速率切换,例如,当前协商速率为三档速率,将其调整为四档,并重新进行端口连接,检测当前的速率是几档,若为三档则表示所述主机不支持速率切换。通过检测所述主机是否支持速率切换,以避免因主机的问题而造成对固态硬盘检测不准确,并提高检测效率。

在一实施例中,如图4所示,所述步骤S120包括步骤S121-S122。

S121、将当前的所述协商速率的低一档速率作为目标速率,并将所述连接端口重新连接;

S122、判断重新连接后当前的所述协商速率是否为所述目标速率,若是则判定支持速率切换。

在本实施例中,所述目标速率为修改后所述固态硬盘与所述主机之间进行数据传输的速率。将当前的所述协商速率的低一档速率作为目标速率,例如,当前的所述协商速率为三档,所述目标速率为其降低一档的二档。此时将所述连接端口重新进行连接,并再次检测所述主机与固态硬盘间的协商速率,判断所述协商速率是否为目标速率,即判断所述协商速率是否为二档,若是,则判定所述主机支持速率切换,则将其记录为支持速率切换;若仍是三档速率则说明所述主机并不支持速率切换。则将其记录为不支持速率切换。通过判断重新连接后当前的所述协商速率是否为所述目标速率以判断所述主机支持速率切换,以避免因主机的问题而造成对固态硬盘检测不准确,以提高对所述固态硬盘的检测效率。

S130、将所述连接端口断开连接,根据所产生的日志信息判断并记录所述主机是否支持盘片闪断。

在本实施例中,所述连接端口为所述链路所在的连接端口,可表示为DSP(DownStream Port);所述闪断为电路或者对通信的突然中断,也用于描述瞬间又迅速恢复的情况。将所述连接端口断开连接,具体地,可通过修改连接端口的参数信息以将其进行断开连接,例如,将所述连接端口的disable的参数修改为1,即表示将所述连接端口进行关闭,以使其断开连接。然后检测所述主机的日志,根据所述日志中的信息判断所述主机是否支持盘片闪断。例如,检测所述主机的日志中是否出现了连接断开的信息,若存在则表示器支持盘片闪断,并将其进行记录。通过检测所述主机是否支持所述盘片闪断以了解所述主机是否具有瞬间回复通信的能力,以避免因其不具备该能力而导致对所述固态硬盘检测不准确。

在一实施例中,如图5所示,所述步骤S130包括步骤S131-S132。

S131、检查所述日志信息中是否存在链接断开提示信息;

S132、若存在则将所述连接端口进行重置并检测盘片是否在位,若在位则判定支持盘片闪断。

在本实施例中,所述盘片是硬盘中承载数据存储的介质。所述链接断开提示信息为提示所述固态硬盘与所述主机进行断开连接的信息。检查所述日志信息中是否存在链接断开提示信息,例如,可检查所述日志信息中是否打印了link down的信息,若不存在,则说明所述主机与发明盘片断开连接,可直接记录所述主机不支持所述盘片闪断,若所述日志信息中打印了link down的信息,则将所述连接端口进行重置,即将其恢复至最初连接时的状态,使其重新连接,并检测盘片是否在位,若在位则判定支持盘片闪断,若不在位则判定并记录所述主机不支持盘片闪断。通过读取所述主机的日志信息,可以详细且准确性高的了解所述主机是否支持盘片闪断。

S140、若支持所述盘片闪断则将所述连接端口的总线号断开连接,根据所产生的所述日志信息判断并记录所述主机是否支持热复位。

在本实施例中,所述热复位是在不关闭主电源的情况下,产生的复位。若所述主机支持所述盘片闪断则将所述连接端口的总线号断开连接,可以理解的是,所述热复位是在支持盘片闪断的基础上所支持的能力,若所述主机不支持所述盘片闪断,则可直接则定所述主机不支持所述热复位。因此,在所述主机支持盘片闪断的情况下才会进行对热复位检测。具体地,将所述连接端口的总线号断开连接,例如,将所述连接端口的端口号的参数信息进行修改,将bus reset位置为1,并读取所述主机的日志信息以判断并记录所述主机是否支持热复位,例如,读取所述日志信息中是否打印了断开连接的信息,若未打印则判定的所述主机并不支持所述热复位并将其进行记录。通过判断并记录所述主机是否支持热复位,以避免因主机的问题而造成对固态硬盘检测不准确,以提高对固态硬盘的检测效率。

在一实施例中,如图6所示,所述步骤S140包括步骤S141-S142。

S141、检查所述日志信息中是否存在链接断开提示信息;

S142、若存在则将所述总线号进行重置并检测盘片是否在位,若在位则判定支持热复位。

在本实施例中,所述链接断开提示信息为提示所述固态硬盘与所述主机间的总线进行断开连接的信息。检查所述日志信息中是否存在链接断开提示信息,例如,可检查所述日志信息中是否打印了link down的信息,若不存在,则可直接记录所述主机不支持所述盘片闪断,若所述日志信息中打印了link down的信息,则将所述连接端口的总线号进行重置,即将其恢复至最初连接时的状态,使其重新连接,检测盘片是否在位,若在位则判定支持盘片闪断,若不在位则判定并记录所述主机不支持热复位。通过读取所述主机的日志信息,可以详细且准确性高的了解所述主机是否支持热复位。

S150、根据所记录的结果生成主机建链能力检测报告。

在本实施例中,所述主机建链能力检测报告为详细记录所述主机是否支持各能力的表格。根据所记录的结果生成主机建链能力检测报告,具体地,将所记录的所述主机的各能力进行汇总,填写至相应的表格位置处。例如,所述主机支持热拔插、支持速率切换、不支持盘片闪断、不支持热复位,则建立各表头为热拔插、速率切换、盘片闪断、热复位的表格,依次将支持、支持、支持、不支持、不支持的内容填写至所对应的位置即可。通过根据所记录的结果生成主机建链能力检测报告,可以快速且清晰地了解所述主机的各种能力,以实现对所述固态硬盘的快速检测。

在一实施例中,如图7所示,所述步骤S150包括步骤S151-S152。

S151、获取所述主机的处理器型号;

S152、根据所述主机的处理器型号以及所记录的信息生成所述主机相应的所述建链能力检测报告。

在本实施例中,所述处理器型号是指一种计算机处理器的具体型号名称,通常由数字和字母组成,例如处理器型号可表示为Intel酷睿i74710HQ,并根据所述主机的处理器型号以及所记录的信息生成所述主机相应的所述建链能力检测报告,即在表格中添加处理器型号的一列,便于将所检测的多个主机的能力进行汇总,以及为后续相同处理器型号的主机提高参考数据,以提高主机能力的检测效率,使其更快速的对固态硬盘进行检测。

图8是本发明实施例提供的一种主机建链能力检测装置200的示意性框图。如图8所示,对应于以上主机建链能力检测方法,本发明还提供一种主机建链能力检测装置。该主机建链能力检测装置包括用于执行上述主机建链能力检测方法的单元,该装置可以被配置于台式电脑、平板电脑、手提电脑、等终端中。具体地,请参阅图8,该主机建链能力检测装置包括热拔插判断单元210、速率切换单元220、闪断单元230、热复位单元240以及生成单元250。

热拔插判断单元210,用于获取固态硬盘所在链路的连接端口的标识信息,根据所述标识信息查询对应的配置空间信息以判断并记录所述主机是否支持热拔插。

在一实施例中,所述热拔插判断单元210包括第一检测单元与开启单元。

第一检测单元,用于检测所述主机是否具有磁盘卷管理设备开关与热拔插开关;

开启单元,用于若具有则将所述磁盘卷管理设备开关与所述热拔插开关全部开启。

在一实施例中,所述热拔插判断单元210包括第二检测单元与第一判定单元。

第二检测单元,用于检测所述配置空间信息中是否存在目标信息;

第一判定单元,用于若存在所述目标信息,则判定所述主机支持热拔插。

速率切换单元220,用于获取所述固态硬盘与所述主机当前的协商速率,通过调整所述协商速率判断并记录所述主机是否支持速率切换。

在一实施例中,所述速率切换单元220包括重连单元与第二判定单元。

重连单元,用于将当前的所述协商速率的低一档速率作为目标速率,并将所述连接端口重新连接;

第二判定单元,用于判断重新连接后当前的所述协商速率是否为所述目标速率,若是则判定支持速率切换。

闪断单元230,用于将所述连接端口断开连接,根据所产生的日志信息判断并记录所述主机是否支持盘片闪断。

在一实施例中,所述闪断单元230包括第一检查单元与第三判定单元。

第一检查单元,用于检查所述日志信息中是否存在链接断开提示信息;

第三判定单元,用于若存在则将所述连接端口进行重置并检测盘片是否在位,若在位则判定支持盘片闪断。

热复位单元240,用于若支持所述盘片闪断则将所述连接端口的总线号断开连接,根据所产生的所述日志信息判断并记录所述主机是否支持热复位。

在一实施例中,所述热复位单元240包括第二检查单元与第四判定单元。

第二检查单元,用于检查所述日志信息中是否存在链接断开提示信息;

第四判定单元,用于若存在则将所述总线号进行重置并检测盘片是否在位,若在位则判定支持热复位。

生成单元250,用于根据所记录的结果生成主机建链能力检测报告。

在一实施例中,所述生成单元250包括获取单元与生成子单元。

获取单元,用于获取所述主机的处理器型号;

生成子单元,用于根据所述主机的处理器型号以及所记录的信息生成所述主机相应的所述建链能力检测报告。

需要说明的是,所属领域的技术人员可以清楚地了解到,上述主机建链能力检测装置200和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。

上述主机建链能力检测装置可以实现为一种计算机程序的形式,该计算机程序可以在如图9所示的计算机设备上运行。

请参阅图9,图9是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。

参阅图9,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。

该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种主机建链能力检测方法。

该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。

该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种主机建链能力检测方法。

该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现上述方法的步骤。

应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。

因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时使处理器执行如上述方法的步骤。

所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。

本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。

该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

技术分类

06120116580850