本发明涉及存储产品诊断技术领域,具体为一种中背板sas地址烧录实现方法及系统。
背景技术:
在存储产品的诊断过程中,烧录sas(serialattachedscsi)地址是一个必要的过程,该sas地址为vpd信息的其中一项,用于硬件之间的识别和通信。
目前,在存储产品中,sas的烧录过程为:在整机的linux系统下执行“$%&*2”命令,控制进入中板的oses环境,在此oses环境下执行相应命令来烧录sas信息,其中,每一条命令只能烧录一条信息,这种烧录方式存在效率低下,容易出错,浪费人力等技术问题。
技术实现要素:
为了克服上述所指出的现有技术的缺陷,本发明人对此进行了深入研究,在付出了大量创造性劳动后,从而完成了本发明。
具体而言,本发明所要解决的技术问题是:提供一种中背板sas地址烧录实现方法,旨在解决现有技术中在oses环境下执行相应命令来烧录sas信息,每一条命令只能烧录一条信息,这种烧录方式存在效率低下,容易出错,浪费人力等技术问题的技术问题。
为解决上述技术问题,本发明的技术方案是:
一种中背板sas地址烧录实现方法,所述方法包括下述步骤:
当初始化操作完成后,调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息,并将生成的sas地址信息存储到对应的数据库中;
接收测试人员输入的sas地址烧录开始指令;
根据接收到的所述测试人员输入的sas地址烧录开始指令,调用预先生成的sas地址烧录脚本程序工具;
执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中。
作为一种改进的方案,所述当初始化操作完成后,调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息,并将生成的地址信息存包到对应的数据库中的步骤之前还包括下述步骤:
对sas烧录过程进行初始化操作;
所述对sas烧录过程进行初始化操作的步骤具体包括下述步骤:
在sas烧录地址的设备上安装centos系统,且所述centos系统支持sg_senddiag命令;
在与所述烧录sas地址的设备同一个局域网的另外的设备上安装数据库;
其中,在所述数据库中,sas地址的状态使用flag标识位进行标识,当所述flag标识为0时标识sas地址未使用,当当所述flag标识为2时标识sas地址正使用,当所述flag标识为2时标识sas地址已使用。
作为一种改进的方案,所述对sas烧录过程进行初始化操作的步骤之前还包括下述步骤:
预先设置sas地址生成脚本程序工具和sas地址烧录脚本程序工具,其中,所述sas地址生成脚本程序工具用于生成若干个保存到所述数据库中的sas地址,所述sas地址烧录脚本程序工具用于控制将从所述数据库中选取的sas地址烧录到中背板中。
作为一种改进的方案,所述执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中的步骤具体包括下述步骤:
执行调用的所述sas地址烧录脚本程序工具;
当执行所述sas地址烧录脚本程序工具时,从所述数据库中读取flag为0的sas地址;
将读取到的sas地址烧录到对应的中背板中,同时将从所述数据库中读取到的flag的标识位由0置为1;
当将sas地址烧录到中背板中后,将从所述数据库中读取到的flag的标识位由1置为2。
作为一种改进的方案,所述执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中的步骤之后还包括下述步骤:
判断所述数据库中生成的sas地址的flag的标识位是否均为2;
当判定数据库中生成的sas地址的flag的标识位均为2,则返回执行所述调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息,并将生成的sas地址信息存储到对应的数据库中。
本发明的另一目的在于提供一种中背板sas地址烧录实现系统,所述系统包括:
sas地址信息生成模块,用于当初始化操作完成后,调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息;
地址信息保存模块,用于将生成的sas地址信息存储到对应的数据库中;
开始指令接收模块,用于接收测试人员输入的sas地址烧录开始指令;
sas地址烧录脚本程序工具调用模块,用于根据接收到的所述测试人员输入的sas地址烧录开始指令,调用预先生成的sas地址烧录脚本程序工具;
地址烧录控制模块,用于执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中。
作为一种改进的方案,所述系统还包括:
初始化操作模块,用于对sas烧录过程进行初始化操作;
所述初始化操作模块具体包括:
系统安装模块,用于在sas烧录地址的设备上安装centos系统,且所述centos系统支持sg_senddiag命令;
数据库安装模块,用于在与所述烧录sas地址的设备同一个局域网的另外的设备上安装数据库;
其中,在所述数据库中,sas地址的状态使用flag标识位进行标识,当所述flag标识为0时标识sas地址未使用,当当所述flag标识为2时标识sas地址正使用,当所述flag标识为2时标识sas地址已使用。
作为一种改进的方案,所述系统还包括骤:
脚本工具预先设置模块,用于预先设置sas地址生成脚本程序工具和sas地址烧录脚本程序工具,其中,所述sas地址生成脚本程序工具用于生成若干个保存到所述数据库中的sas地址,所述sas地址烧录脚本程序工具用于控制将从所述数据库中选取的sas地址烧录到中背板中。
作为一种改进的方案,所述地址烧录控制模块具体包括:
sas地址烧录脚本程序工具执行模块,用于执行调用的所述sas地址烧录脚本程序工具;
地址读取模块,用于当执行所述sas地址烧录脚本程序工具时,从所述数据库中读取flag为0的sas地址;
烧录操作模块,用于将读取到的sas地址烧录到对应的中背板中;
第一标识位配置模块,用于将从所述数据库中读取到的flag的标识位由0置为1;
第二标识位配置模块,用于当将sas地址烧录到中背板中后,将从所述数据库中读取到的flag的标识位由1置为2。
作为一种改进的方案,所述系统还包括:
判断模块,用于判断所述数据库中生成的sas地址的flag的标识位是否均为2;
返回执行控制模块,用于当判定数据库中生成的sas地址的flag的标识位均为2,则返回执行所述调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息,并将生成的sas地址信息存储到对应的数据库中。
在本发明实施例中,当初始化操作完成后,调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息,并将生成的sas地址信息存储到对应的数据库中;接收测试人员输入的sas地址烧录开始指令;根据接收到的所述测试人员输入的sas地址烧录开始指令,调用预先生成的sas地址烧录脚本程序工具;执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中,从而实现基于中背板的sas地址的自动烧录,减少人为参与,简化了测试流程,降低测试人员的工作量,提高测试效率。
附图说明
图1是本发明提供的中背板sas地址烧录实现方法的实现流程图;
图2是本发明提供的对sas烧录过程进行初始化操作的实现流程图;
图3是本发明提供的执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中的实现流程图;
图4是本发明提供的中背板sas地址烧录实现系统的结构框图。
具体实施方式
下面结合具体的实施例对本发明进一步说明。但这些例举性实施方式的用途和目的仅用来例举本发明,并非对本发明的实际保护范围构成任何形式的任何限定,更非将本发明的保护范围局限于此。
图1示出了本发明提供的中背板sas地址烧录实现方法的实现流程图,其具体包括下述步骤:
在步骤s101中,当初始化操作完成后,调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息,并将生成的sas地址信息存储到对应的数据库中。
在步骤s102中,接收测试人员输入的sas地址烧录开始指令。
其中,该sas地址烧录开始指令可以由系统的软操作触发形成,当然可以通过常见的物理开关触发实现,在此不再赘述。
在步骤s103中,根据接收到的所述测试人员输入的sas地址烧录开始指令,调用预先生成的sas地址烧录脚本程序工具。
在步骤s104中,执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中。
在该实施例中,在执行上述步骤s101之前还需要执行下述步骤:
对sas烧录过程进行初始化操作;
如图2所示,对sas烧录过程进行初始化操作的步骤具体包括下述步骤:
在步骤s201中,在sas烧录地址的设备上安装centos系统,且所述centos系统支持sg_senddiag命令;
在步骤s202中,在与所述烧录sas地址的设备同一个局域网的另外的设备上安装数据库;
其中,在所述数据库中,sas地址的状态使用flag标识位进行标识,当所述flag标识为0时标识sas地址未使用,当当所述flag标识为2时标识sas地址正使用,当所述flag标识为2时标识sas地址已使用。
在该实施例中,该数据库中存储sas地址的内容如下:
idvaluesnflag
488156c92bfa007929002185083942
488256c92bfa007929802185084012
488356c92bfa00792a002185083952
488456c92bfa00792a802185083912
488556c92bfa00792b002185084021
488656c92bfa00792b800
488756c92bfa00792c000
488856c92bfa00792c80
488956c92bfa00792d00
表中:value表示真正的sas地址,flag为0表示sas地址未使用,sn表示使用该sas地址的设备的sn号。
在本发明实施例中,在执行上述步骤s101之前还需要执行下述步骤:
预先设置sas地址生成脚本程序工具和sas地址烧录脚本程序工具,其中,所述sas地址生成脚本程序工具用于生成若干个保存到所述数据库中的sas地址,所述sas地址烧录脚本程序工具用于控制将从所述数据库中选取的sas地址烧录到中背板中。
如图3所示,执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中的步骤具体包括下述步骤:
在步骤s301中,执行调用的所述sas地址烧录脚本程序工具。
在步骤s302中,当执行所述sas地址烧录脚本程序工具时,从所述数据库中读取flag为0的sas地址。
在步骤s303中,将读取到的sas地址烧录到对应的中背板中,同时将从所述数据库中读取到的flag的标识位由0置为1。
在步骤s304中,当将sas地址烧录到中背板中后,将从所述数据库中读取到的flag的标识位由1置为2。
当将数据库中sas地址的flag标识为2时,则该sas地址已经被使用,不允许再次被使用。
在本发明实施例中,对中背板的sas地址的烧录是一个自动执行的过程,当执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中的步骤之后还包括下述步骤:
(1)判断所述数据库中生成的sas地址的flag的标识位是否均为2;
(2)当判定数据库中生成的sas地址的flag的标识位均为2,则返回执行所述调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息,并将生成的sas地址信息存储到对应的数据库中。
当判定数据库中生成的sas地址的flag的标识位为1或0,则表明数据库中还存在可以使用的sas地址,继续使用即可,在此不再赘述。
图4示出了本发明提供的中背板sas地址烧录实现系统的结构框图,为了便于说明,图中仅给出了与本发明实施例相关的部分。
中背板sas地址烧录实现系统包括:
sas地址信息生成模块11,用于当初始化操作完成后,调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息;
地址信息保存模块12,用于将生成的sas地址信息存储到对应的数据库中;
开始指令接收模块13,用于接收测试人员输入的sas地址烧录开始指令;
sas地址烧录脚本程序工具调用模块14,用于根据接收到的所述测试人员输入的sas地址烧录开始指令,调用预先生成的sas地址烧录脚本程序工具;
地址烧录控制模块15,用于执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中。
在该实施例中,所述系统还包括:
初始化操作模块16,用于对sas烧录过程进行初始化操作;
所述初始化操作模块16具体包括:
系统安装模块17,用于在sas烧录地址的设备上安装centos系统,且所述centos系统支持sg_senddiag命令;
数据库安装模块18,用于在与所述烧录sas地址的设备同一个局域网的另外的设备上安装数据库;
其中,在所述数据库中,sas地址的状态使用flag标识位进行标识,当所述flag标识为0时标识sas地址未使用,当当所述flag标识为2时标识sas地址正使用,当所述flag标识为2时标识sas地址已使用。
在本发明实施例中,所述系统还包括骤:
脚本工具预先设置模块19,用于预先设置sas地址生成脚本程序工具和sas地址烧录脚本程序工具,其中,所述sas地址生成脚本程序工具用于生成若干个保存到所述数据库中的sas地址,所述sas地址烧录脚本程序工具用于控制将从所述数据库中选取的sas地址烧录到中背板中。
在本发明实施例中,所述地址烧录控制模块15具体包括:
sas地址烧录脚本程序工具执行模块20,用于执行调用的所述sas地址烧录脚本程序工具;
地址读取模块21,用于当执行所述sas地址烧录脚本程序工具时,从所述数据库中读取flag为0的sas地址;
烧录操作模块22,用于将读取到的sas地址烧录到对应的中背板中;
第一标识位配置模块23,用于将从所述数据库中读取到的flag的标识位由0置为1;
第二标识位配置模块24,用于当将sas地址烧录到中背板中后,将从所述数据库中读取到的flag的标识位由1置为2。
在本发明实施例中,所述系统还包括:
判断模块25,用于判断所述数据库中生成的sas地址的flag的标识位是否均为2;
返回执行控制模块26,用于当判定数据库中生成的sas地址的flag的标识位均为2,则返回执行所述调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息,并将生成的sas地址信息存储到对应的数据库中。
上述各个模块的功能如上述方法实施例所记载,在此不再赘述。
在本发明实施例中,当初始化操作完成后,调用预先生成的sas地址生成脚本程序工具,生成若干个sas地址信息,并将生成的sas地址信息存储到对应的数据库中;接收测试人员输入的sas地址烧录开始指令;根据接收到的所述测试人员输入的sas地址烧录开始指令,调用预先生成的sas地址烧录脚本程序工具;执行所述sas地址烧录脚本程序工具,依次从所述数据库中选取一条地址烧录到对应的中背板中,从而实现基于中背板的sas地址的自动烧录,减少人为参与,简化了测试流程,降低测试人员的工作量,提高测试效率。
应当理解,这些实施例的用途仅用于说明本发明而非意欲限制本发明的保护范围。此外,也应理解,在阅读了本发明的技术内容之后,本领域技术人员可以对本发明作各种改动、修改和/或变型,所有的这些等价形式同样落于本申请所附权利要求书所限定的保护范围之内。