连接服务器和控制端的方法、服务器Memory功能模块测试方法与流程

文档序号:15567203发布日期:2018-09-29 03:37阅读:568来源:国知局

本发明涉及服务器测试领域,具体是一种连接服务器和控制端的方法、服务器memory功能模块测试方法,用于服务器memory(内存)的功能模块的功能测试。



背景技术:

随着it技术的发展,服务器的安全性、可靠谱和可用性越来要重要。memory(内存)是服务器必不可少的电子器件,使用过程中因物理缺陷或电子干扰会致使其产生错误。该种错误,如果不能得到及时有效的纠正或热备份,则会影响服务器的稳定性。

为此,为确保服务器的使用安全性,在服务器的开发过程中会对服务器内存的功能模块,如sddc功能模块、ranksparing功能模块进行相应的功能测试。

但是,通用的测试内存功能模块的工具为intel的itp工具,使用itp工具测试内存功能模块时,需通过itp工具连接windows客户端和待测试服务器,之后通过运行python脚本进行各相应功能模块的功能测试验证。其中itp工具连接到待测服务器端采用的是itp接口连接方式。

而itp接口位于待测服务器的机箱内部的主板上。在使用itp连接待测服务器前,需将待测服务器的电源关闭,然后打开待测服务器的机箱进行itp接口的连接。一方面,因服务器在进行功能验证时受外界环境因素影响较大,故上述关闭待测服务器电源的操作,在一定程度上会影响待测服务器的其他测试进程,进而影响测试效率。另一方面,开关待测服务器机箱,既浪费人力和时间,且多次开合机箱,容易造成机箱损坏,进而增加测试成本。

本发明提供了一种连接服务器和控制端的方法、服务器memory功能模块测试方法,用于克服上述不足。



技术实现要素:

本发明所要解决的技术问题是,针对现有技术的不足,提供一种连接服务器和控制端的方法、服务器memory功能模块测试方法,用于提高对服务器memory功能模块的功能测试的测试效率,并用于降低测试成本。

为解决上述技术问题,本发明提供了一种连接服务器和控制端的方法,用于所述服务器的memory功能模块的功能测试,所述的控制端采用windows控制端,该连接服务器和控制端的方法包括步骤:

在所述服务器上使能dci功能;

分别采用usb连接方式,连接dci工具与上述使能dci功能的服务器以及连接dci工具与上述控制端;

在上述控制端配置用于连接该控制端及上述使能dci功能的服务器的dci配置文件。

其中,在所述服务器上使能dci功能的方法为:

编写用于使能dci功能的bios程序和me程序并分别进行编译;

将上述编译好的bios程序和me程序分别烧录到服务器的bios的存储设备中。

其中,所述的memory功能模块为memorysddc功能模块和/或memoryranksparing功能模块。

其中,所述的在上述控制端配置用于连接该控制端及上述使能dci功能的服务器的dci配置文件的方法为:

在所述控制端的intelconfigconsole中,依据所述服务器的cpu及pch型号配置上述dci工具的配置文件。

本发明还提供了一种服务器memory功能模块测试方法,包括待测服务器和windows控制端;该服务器memory功能模块测试方法包括步骤:

基于如上所述的连接服务器和控制端的方法,连接该所述的待测服务器和windows控制端;

在完成上述待测服务器和windows控制端的连接后,对上述待测服务器的memory功能模块进行相应的功能测试。

其中,所述的memory功能模块为memorysddc功能模块和/或memoryranksparing功能模块。

当所述的memory功能模块为memoryranksparing功能模块时,所述的在完成上述待测服务器和windows控制端的连接后,对上述待测服务器的memory功能模块进行相应的功能测试的方法包括步骤:

s1、使能待测服务器的memoryranksparing功能,并设置待测服务器的内存可纠正错误的阈值;

s2、在windows控制端查看待测服务器的内存,任选一状态为inactive的rank作为备份rank;

s3、在windows控制端输入相应控制指令,遍历待测服务器的除上述备份rank外的其他rank中未被注错过的rank,且每遍历一次,分别从当前遍历到的各rank中任选一个进行注错,直至注错个数达到步骤s1中所设置的内存可纠正错误的阈值;

s4、在上述步骤s3中所述的注错个数达到步骤s1中所设置的内存可纠正错误的阈值时,在windows控制端输入相应控制指令,查看各被注错rank中的内容是否完成了移植;并在windows控制端输入其他相应控制指令,查看待测服务器是否用备份rank代替了各注错后的rank。

当所述的memory功能模块为memorysddc功能模块时,所述的在完成上述待测服务器和windows控制端的连接后,对所述待测服务器的memory功能模块进行相应的功能测试的方法包括步骤:

p1、使能待测服务器的memorysddc功能,并设置待测服务器的内存可纠正错误的阈值;

p2、在windows控制端输入相应的控制指令,查看待测服务器的内存信息,在查看到的信息为待测服务器的directorymode是off、ecc是on时,执行步骤p3;

p3、在windows控制端输入其他相应的控制指令,遍历待测服务器的未被注错过的内存颗粒,每遍历一次,分别在当前遍历到的各内存颗粒中任选一个内存颗粒作为注错内存颗粒;

p4、在windows控制端输入其他相应的控制指令,分别对上述步骤p3中选中的各注错内存颗粒进行注错,直至当前注错过的注错内存颗粒数量达到步骤p1中所设置的内存可纠正错误的阈值;

p5、在步骤p4中所述的当前注错过的注错内存颗粒数量达到上述步骤p1中所设置的内存可纠正错误的阈值时,在windows控制端输入其他相应的控制指令,判定各被注错的内存颗粒是否已经复制到eccdram中;

p6、若上述p5中判定各被注错的内存颗粒已经复制到eccdram中,继续向待测服务器的任意一内存颗粒中注入单比特数据错误,之后执行步骤p7;

p7、在windows控制端输入其他相应的控制指令,测试待测服务器是否发生宕机现象。

其中,在windows控制端配置用于连接该windows控制端及使能dci功能的待测服务器的dci配置文件的方法为:

在windows控制端的intelconfigconsole中,依据待测服务器的cpu及pch型号配置dci的配置文件。

与现有技术相比,本发明的优点在于:

(1)本发明所述连接服务器和控制端的方法的使用,使得在进行待测服务器的memory功能模块的功能测试时,能够通过usb连接方式分别实现dci工具与待测服务器之间的usb连接、以及实现dci工具与控制端之间的usb连接,继而使得本发明能够通过usb连接方式实现控制端与待测服务器间的usb连接,连接方便,既避免了现有技术中对待测服务器机箱的开合,也减少了对人力和时间的浪费,从而有助于后续提高对待测服务器memory功能模块测试的效率、降低对待测服务器memory功能模块的功能测试成本。

(2)本发明所述的服务器memory功能模块测试方法,其通过上述连接服务器和控制端的方法连接其待测服务器和windows控制端,从而具有上述连接服务器和控制端的方法的全部优点,连接方便,既避免了现有技术中对待测服务器机箱的开合,也减少了对人力和时间的浪费,从而有助于提高对待测服务器memory功能模块测试的效率、降低对待测服务器memory功能模块的功能测试成本。

由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。

附图说明

图1为本发明所述连接服务器和控制端的方法的方法流程示意图。

图2为本发明所述服务器memory功能模块测试方法的方法流程示意图。

图3为memory功能模块为memoryranksparing功能模块时,图2中所示的对待测服务器的memory功能模块进行相应的功能测试的一种方法流程示意图。

图4为memory功能模块为memorysddc功能模块时,图2中所示的对待测服务器的memory功能模块进行相应的功能测试的一种方法流程示意图。

具体实施方式

为使本发明的技术方案和优点更加清楚,下面将结合附图,对本发明的技术方案进行清楚、完整地描述。

图1为本发明所述连接服务器和控制端的方法的一种具体实施方式。该连接服务器和控制端的方法,用于所述服务器的memory功能模块的功能测试,所述的控制端采用windows控制端。在本实施方式中,该连接服务器和控制端的方法包括以下步骤a-c。

步骤a、在所述服务器上使能dci功能。

基于该步骤a,为后续基于dci进行待测服务器的memory功能模块的功能测试准备好测试环境。

其中,在本实施方式中,本发明在所述服务器上使能dci功能的方法包括步骤:编写用于使能dci功能的bios程序和me程序并分别进行编译;将上述编译好的bios程序和me程序分别烧录到服务器的bios的存储设备中。至此,待测服务器使能了dci功能。

在本实施方式中,上述bios的存储设备采用flashrom(闪速存储器),故使用时,上述编译好的bios程序和me程序均被烧录到待测服务器主板的biosflashrom中。具体地,在本实施方式中,上述被烧录到待测服务器的bios的flashrom中的上述编译好的bios程序和me程序,二者在烧录前先被整合成一个二进制文件(me程序位于bios程序之前),之后二者以上述二进制文件的形式,被烧录到待测服务器主板的bios的flashrom中。

步骤b、分别采用usb连接方式,连接dci工具与上述使能dci功能的服务器以及连接dci工具与上述控制端。

基于该步骤b,dci工具的一端通过usb连接方式连接到所述服务器的usb端口上,另一端通过usb连接方式连接到所述控制端的usb端口上。

步骤c、在上述控制端配置用于连接该控制端及上述使能dci功能的服务器的dci配置文件。

具体地,所述的在上述控制端配置用于连接该控制端及上述使能dci功能的服务器的dci配置文件的方法为:在所述控制端的intelconfigconsole中,依据所述服务器的cpu及pch型号配置上述dci工具的配置文件。比如当前服务器的cpu型号为skx、pch为lbg南桥型号,对应配置dci的配置文件的文件名为“skx_lbg_opendci_

dbc_only_purley”。

至此,本发明基于dci工具,实现了所述服务器与所述控制端的usb连接,避免了现有技术中对当前待测服务器机箱的开合,避免了开合服务器机箱对人力和时间的浪费,连接方便,既避免了现有技术中对待测服务器机箱的开合,也减少了对人力和时间的浪费,从而有助于后续提高对待测服务器memory功能模块测试的效率、以及降低对待测服务器memory功能模块的功能测试成本。

图2为本发明所述服务器memory功能模块测试方法的一种具体实施方式,包括待测服务器和windows控制端。在该具体实施方式中,该服务器memory功能模块测试方法包括以下步骤k1-k2。

步骤k1、基于上述连接服务器和控制端的方法,连接该所述的待测服务器和windows控制端。

可见本发明所述的服务器memory功能模块测试方法,其采用usb连接方式,分别实现了dci工具与待测服务器之间、以及所述dci工具与windows控制端之间的usb连接,连接方便。

步骤k2、在完成上述待测服务器和windows控制端的连接后,对上述待测服务器的memory功能模块进行相应的功能测试。

其中,在本实施方式中,在windows控制端配置用于连接该windows控制端及使能dci功能的待测服务器的dci配置文件的方法为:在windows控制端的intelconfigconsole中,依据待测服务器的cpu及pch型号配置dci的配置文件。同样地,若当前待测服务器的cpu型号为skx、pch为lbg南桥型号,对应配置dci的配置文件的文件名为“skx_lbg_opendci_dbc_only_purley”。

其中,所述的memory功能模块可以为待测服务器的memorysddc功能模块,也可以为待测服务器的memoryranksparing功能模块,还可以为待测服务器的memorysddc功能模块和memoryranksparing功能模块。

图3中给出了一种在完成上述待测服务器和windows控制端的连接后,对上述待测服务器的memory功能模块进行相应的功能测试的方法流程示意图,包括步骤s1-s4,具体如下文所示。其中,该图3中对应的memory功能模块为memoryranksparing功能模块。

s1、使能待测服务器的memoryranksparing功能,并设置待测服务器的内存可纠正错误的阈值。

s2、在windows控制端查看待测服务器的内存,任选一状态为inactive的rank作为备份rank。

具体地,在windows控制端运行mc.dimminfo(socket=0)命令并查看待测服务器的内存,任选一状态为inactive的rank作为备份rank。

s3、在windows控制端输入相应控制指令,遍历待测服务器的除上述备份rank外的其他rank中未被注错过的rank,且每遍历一次,分别从当前遍历到的各rank中任选一个进行注错,直至注错个数达到步骤s1中所设置的内存可纠正错误的阈值。

具体地,在windows控制端运行“ei.injectmemerror(0x0)”命令,在地址为0的地方注错,直到到达阈值;注错直到到达上述步骤s1中所设置的内存可纠正错误的阈值。

s4、在上述步骤s3中所述的注错个数达到步骤s1中所设置的内存可纠正错误的阈值时,在windows控制端输入相应控制指令,查看各被注错rank中的内容是否完成了移植;并在windows控制端输入其他相应控制指令,查看待测服务器是否用备份rank代替了各注错后的rank。

具体地,在windows控制端运行命令“sv.socket0.uncore0.imc0

_sparing_patrol_status.show”,查看各被注错rank中(即错误内存)的内容是否完成了移植。如果完成了移植,该命令“sv.socket0.uncore0.imc0_sparing_patrol_status.show”下的copy_complete会置1,如果各被注错rank中的内存内容正在移植,上述命令“sv.socket0.uncore0.imc0_sparing_patrol_status.sho

w”下的copy_in_progress会置1;此时在windows控制端运行“mc.dimminfo()”命令,查看待测服务器的内存信息,此时上述备份rank属性为activate,各被注错的rank属性为inactive。

基于上述步骤s1-s4,完成对当前待测服务器的memoryranksparing功能模块的功能测试。

图4中给出了一种在完成上述待测服务器和windows控制端的连接后,对上述待测服务器的memory功能模块进行相应功能测试的另一种方法流程示意图,包括步骤p1-p7。其中,该图4中对应的memory功能模块为memorysddc功能模块。所述的步骤p1-p7如下所示。

p1、使能待测服务器的memorysddc功能,并设置待测服务器的内存可纠正错误的阈值。之后执行步骤p2。

p2、在windows控制端输入相应的控制指令,查看待测服务器的内存信息,在查看到的信息为待测服务器的directorymode是off、ecc是on时,执行步骤p3。

p3、在windows控制端输入其他相应的控制指令,遍历待测服务器的未被注错过的内存颗粒,每遍历一次,分别在当前遍历到的各内存颗粒中任选一个内存颗粒作为注错内存颗粒。

具体地,可以在windows控制端运行“ei.memdevs(dev0=2)”命令,选择内存条上dram02,即第三个内存颗粒进行注错。

p4、在windows控制端输入其他相应的控制指令,分别对上述步骤p3中选中的各注错内存颗粒进行注错,直至当前注错过的注错内存颗粒数量达到步骤p1中所设置的内存可纠正错误的阈值。

具体地,在windows控制端运行“ei.injectmemerror(socket=0,

channel=0,dimm=0,rank=0,errtype=”x4sddc”)”命令,对内存上的dram02进行sddc注错。注错直到达到步骤p1中所述的阈值后,执行go命令,将各注错的注错内存颗粒copy到备份的内存颗粒中。

p5、在步骤p4中所述的当前注错过的注错内存颗粒数量达到上述步骤p1中所设置的内存可纠正错误的阈值时,在windows控制端输入其他相应的控制指令,判定各被注错的内存颗粒是否已经复制到eccdram中。

具体地,在windows控制端运行“ras.adddc_status_check(

socket=0,mc=0)”命令,若sddc_sparing的值置为1且copy_complete的值置为1,则出错的dram的内容已经复制到eccdram中。

p6、若上述p5中判定各被注错的内存颗粒已经复制到eccdram中,继续向待测服务器的任意一内存颗粒中注入单比特数据错误,之后执行步骤p7。

具体地,在windows控制端运行“ei.injectmemerror(socket=0,

channel=0,dimm=0,rank=0,errtype=”x4sddc”)”命令再次注错,测试结果则不会再产生错误(因dram02已从内存映射中删除)。

p7、在windows控制端输入其他相应的控制指令,测试待测服务器是否发生宕机现象。

具体地,在windows控制端先运行ei.memdevs(dev0=3,dev0msk=

0x2,dev1=0,dev1msk=0)命令,向dram3上注单比特数据错误;之后再运行“ei.injectmemerror(socke=0,channel=0,dimm=0,rank=0,errtype=“x4sddc”)”命令,待测服务器系统不宕机,内存模式为sddc+1,可见单比特位数据错误已被校正。

至此,基于上述步骤p1-p7,完成对当前待测服务器的memorysddc功能模块的功能测试。

需要说明的是,本领域技术人员还可使用其他方法对上述待测服务器的memory功能模块进行相应的功能测试,譬如可以依据实际情况,选择使用现有技术中便于本发明进行所述待测服务器的memory的相应功能模块(比如所述的memorysddc功能模块和/或memoryranksparing功能模块)的功能测试的任意的相应方法,为简化说明书,在此不再赘述。

综上,本发明所述的服务器memory功能模块测试方法,其分别通过usb连接方式实现了dci工具与待测服务器之间、以及所述dci工具与windows控制端之间的usb连接,连接方便,这既避免了测试时对待测服务器机箱的开合,也减少了开合机箱对人力和时间的浪费,从而提高了对待测服务器的memory功能模块的功能测试效率、降低了对待测服务器的memory功能模块的测试成本。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1