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

一种服务器系统管理中断的处理方法、系统、装置及介质

文献发布时间:2023-06-19 18:37:28


一种服务器系统管理中断的处理方法、系统、装置及介质

技术领域

本发明涉及计算机技术领域,更具体的说是涉及一种服务器系统管理中断的处理方法、系统、装置及介质。

背景技术

服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车系统等大型设备)提供计算或者应用服务。服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。

在当前服务器应用场景中,要求系统稳定运行无抖动延迟,尤其是运行敏感业务的时候,较长时间的系统延迟或可对正在运行的业务造成巨大损失。在服务器运行场景中偶尔会出现BMC意外重启或者故障导致BMC服务缺失,在BMC服务不可用期间,如果出现内存或PCIE CE等场景触发SMI(System Management Interrupt,系统管理中断)调用IPMI上报信息给BMC的时候,而BMC缺位造成的IPMI服务无法完成,卡在SMM服务中导致系统出现严重延迟。延迟时间大约为10秒,具体延迟原因为支持smm ipmi retry 50000次导致,retry结束才会跳出当前上报动作,恢复系统正常使用,场景耗时较长,这样就会影响到用户的业务连续性,影响工作效率和服务器使用的稳定性。

发明内容

针对以上问题,本发明的目的在于提供一种服务器系统管理中断的处理方法、系统、装置及介质,通过在不同环境中使用不同的定制驱动解决系统延迟问题。

本发明为实现上述目的,通过以下技术方案实现:一种服务器系统管理中断的处理方法,包括:

根据不同的应用场景定制不同的BIOS底层应用驱动程序;

通过调整驱动程序的IPMI retry次数,优化驱动程序的请求超时时长;

当发生系统管理中断后,根据应用场景调用驱动程序;

运行驱动程序,根据设定的IPMI retry次数中断当前IPMI上报服务。

进一步,所述根据不同的应用场景定制不同的BIOS底层应用驱动程序包括:在BIOS中创建用于BIOS post场景的DXE驱动程序,使服务器支持在BIOS post场景下使用DXE驱动程序定义的IPMI服务。

进一步,所述根据不同的应用场景定制不同的BIOS底层应用驱动程序还包括:

在BIOS中创建用于OS场景的SMM驱动程序,使服务器支持在OS场景下使用SMM驱动程序定义的IPMI服务。

进一步,所述通过调整驱动程序的IPMI retry次数,优化驱动程序的请求超时时长,包括:

将DXE驱动程序的IPMI retry次数设置为50000次。

进一步,所述通过调整驱动程序的IPMI retry次数,优化驱动程序的请求超时时长,还包括:

将SMM驱动程序的IPMI retry次数设置为1000次,使驱动程序的请求超时时长为120毫秒。

进一步,所述当发生系统管理中断后,根据应用场景调用驱动程序,包括:当发生系统管理中断后,如果当前为BIOS post场景,则调用DXE驱动程序;如果当前为OS场景,则调用SMM驱动程序。

相应的,本发明还公开了一种服务器系统管理中断的处理系统,包括:程序定制模块,用于根据不同的应用场景定制不同的BIOS底层应用驱动程序;优化模块,用于通过调整驱动程序的IPMI retry次数,优化驱动程序的请求超时时长;

调用模块,用于当发生系统管理中断后,根据应用场景调用驱动程序;

执行模块,用于运行驱动程序,根据设定的IPMI retry次数中断当前IPMI上报服务。

进一步,程序定制模块具体用于:在BIOS中创建用于BIOS post场景的DXE驱动程序,使服务器支持在BIOS post场景下使用DXE驱动程序定义的IPMI服务;在BIOS中创建用于OS场景的SMM驱动程序,使服务器支持在OS场景下使用SMM驱动程序定义的IPMI服务。

进一步,优化模块具体用于:将DXE驱动程序的IPMI retry次数设置为50000次;将SMM驱动程序的IPMI retry次数设置为1000次。

相应的,本发明公开了一种服务器系统管理中断的处理装置,包括:

存储器,用于存储服务器系统管理中断的处理程序;

处理器,用于执行所述服务器系统管理中断的处理程序时实现如上文任一项所述服务器系统管理中断的处理方法的步骤。

相应的,本发明公开了一种可读存储介质,所述可读存储介质上存储有服务器系统管理中断的处理程序,所述服务器系统管理中断的处理程序被处理器执行时实现如上文任一项所述服务器系统管理中断的处理方法的步骤。

对比现有技术,本发明有益效果在于:本发明公开了一种服务器系统管理中断的处理方法、系统、装置及介质,基于BIOS基本原理,在BIOS中创建DXE和SMM两支IPMI驱动,支持BIOS post场景下使用DXE驱动定义的IPMI服务,在OS场景下使用定义的SMM的IPMI驱动。其中在SMM驱动中定义经过验证的安全且可靠的IPMI服务超时时间,在遇到BMC服务中断且发生SMI上报的场景时,尽快中断当前IPMI上报服务,使系统尽快恢复正常,缩短系统因SMI上报导致的延迟时间,使服务器在更短的时间内恢复业务运行。

使用本发明后,再处理类似场景中SMI上报服务,仅需要耗费120毫秒,延迟时间实现了量级的减小,给业务敏感客户带了稳定安全的业务运行环境。解决了客户的痛点,提高了服务器的使用效率和实用性。

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

附图说明

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

图1是本发明具体实施方式的方法流程图。

图2是本发明具体实施方式的系统结构图。

图中,1、程序定制模块;2、优化模块;3、调用模块;4、执行模块。

具体实施方式

本发明的核心是提供一种服务器系统管理中断的处理方法,现有技术中,在BMC服务不可用期间,如果出现内存或PCIE CE等场景触发SMI调用IPMI上报信息给BMC的时候,而BMC缺位造成的IPMI服务无法完成,卡在SMM服务中导致系统出现严重延迟。延迟时间大约为10秒,具体延迟原因为支持smm ipmi retry 50000次导致,retry结束才会跳出当前上报动作,恢复系统正常使用,场景耗时较长,这样就会影响到用户的业务连续性,影响工作效率和服务器使用的稳定性。

而本发明提供的服务器系统管理中断的处理方法,首先,根据不同的应用场景定制不同的BIOS底层应用驱动程序。然后,通过调整驱动程序的IPMI retry次数,优化驱动程序的请求超时时长。当发生系统管理中断后,根据应用场景调用驱动程序。最后,运行驱动程序,根据设定的IPMI retry次数中断当前IPMI上报服务。由此可见,本发明通过在不同环境中使用不同的定制驱动解决系统延迟问题,处理类似场景中SMI上报服务时,仅需要耗费120毫秒,延迟时间实现了量级的减小,给业务敏感客户带了稳定安全的业务运行环境。解决了客户的痛点,提高了服务器的使用效率和实用性。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一:

如图1所示,本实施例提供了一种服务器系统管理中断的处理方法,包括如下步骤:

S1:根据不同的应用场景定制不同的BIOS底层应用驱动程序。

具体的,在BIOS中创建用于BIOS post场景的DXE驱动程序,使服务器支持在BIOSpost场景下使用DXE驱动程序定义的IPMI服务。在BIOS中创建用于OS场景的SMM驱动程序,使服务器支持在OS场景下使用SMM驱动程序定义的IPMI服务。

S2:通过调整驱动程序的IPMI retry次数,优化驱动程序的请求超时时长。

具体来说,将DXE驱动程序的IPMI retry次数设置为50000次。将SMM驱动程序的IPMI retry次数设置为1000次,使驱动程序的请求超时时长为120毫秒。

在本步骤中,根据实际场景中的应用,优化驱动中timeout时间设定(timout时间由IPMI retry次数决定),因BIOS post场景和OS场景中对时间敏感度不一样,特设计将BIOS post场景下的驱动程序中的IPMI retry次数定义为50000次,将OS场景下的驱动程序中的IPMI retry次数定义为1000次,并经过反复验证稳定可靠。达到既不影响实际SMI信息上报准确率,又能在发生BMC服务异常情况下避免SMI信息上报导致的系统延迟。

S3:当发生系统管理中断后,根据应用场景调用驱动程序。

具体的,当发生系统管理中断后,如果当前为BIOS post场景,则调用DXE驱动程序;如果当前为OS场景,则调用SMM驱动程序。

S4:运行驱动程序,根据设定的IPMI retry次数中断当前IPMI上报服务。

由此可见,本方法根据不同场景中调用的驱动类型,定制不同的超时时间,实现由目前发生BMC异常时系统延迟10秒,到本方法中的延迟达到120毫秒。以上系统延迟时间是IPMI retry次数决定,在120毫秒的BMC异常SMI上报场景中的延迟,可忽略不计,基本规避了系统延迟带来的抖动风险。

本实施例提供了一种服务器系统管理中断的处理方法,在BIOS中创建DXE和SMM两支IPMI驱动,支持BIOS post场景下使用DXE驱动定义的IPMI服务,在OS场景下使用定义的SMM的IPMI驱动。其中在SMM驱动中定义经过验证的安全且可靠的IPMI服务超时时间,在遇到BMC服务中断且发生SMI上报的场景时,尽快中断当前IPMI上报服务,使系统尽快恢复正常,缩短系统因SMI上报导致的延迟时间,使服务器在更短的时间内恢复业务运行。。

实施例二:

基于实施例一,如图2所示,本发明还公开了一种服务器系统管理中断的处理系统,包括:程序定制模块1、优化模块2、调用模块3和执行模块4。

程序定制模块1,用于根据不同的应用场景定制不同的BIOS底层应用驱动程序。程序定制模块1具体用于:在BIOS中创建用于BIOS post场景的DXE驱动程序,使服务器支持在BIOS post场景下使用DXE驱动程序定义的IPMI服务;在BIOS中创建用于OS场景的SMM驱动程序,使服务器支持在OS场景下使用SMM驱动程序定义的IPMI服务。

优化模块2,用于通过调整驱动程序的IPMI retry次数,优化驱动程序的请求超时时长。优化模块2具体用于:将DXE驱动程序的IPMI retry次数设置为50000次;将SMM驱动程序的IPMI retry次数设置为1000次。

调用模块3,用于当发生系统管理中断后,根据应用场景调用驱动程序。

执行模块4,用于运行驱动程序,根据设定的IPMI retry次数中断当前IPMI上报服务。

本实施例提供了一种服务器系统管理中断的处理系统,实现了处理场景中SMI上报服务时,需要耗费120毫秒。延迟时间实现了量级的减小,给业务敏感客户带了稳定安全的业务运行环境。解决客户的痛点,提高了服务器的使用效率和实用性。

实施例三:

本实施例公开了一种服务器系统管理中断的处理装置,包括处理器和存储器;其中,所述处理器执行所述存储器中保存的服务器系统管理中断的处理程序时实现以下步骤:

1、根据不同的应用场景定制不同的BIOS底层应用驱动程序。

2、通过调整驱动程序的IPMI retry次数,优化驱动程序的请求超时时长。

3、当发生系统管理中断后,根据应用场景调用驱动程序。

4、运行驱动程序,根据设定的IPMI retry次数中断当前IPMI上报服务。

进一步的,本实施例中的服务器系统管理中断的处理装置,还可以包括:

输入接口,用于获取外界导入的服务器系统管理中断的处理程序,并将获取到的服务器系统管理中断的处理程序保存至所述存储器中,还可以用于获取外界终端设备传输的各种指令和参数,并传输至处理器中,以便处理器利用上述各种指令和参数展开相应的处理。本实施例中,所述输入接口具体可以包括但不限于USB接口、串行接口、语音输入接口、指纹输入接口、硬盘读取接口等。

输出接口,用于将处理器产生的各种数据输出至与其相连的终端设备,以便于与输出接口相连的其他终端设备能够获取到处理器产生的各种数据。本实施例中,所述输出接口具体可以包括但不限于USB接口、串行接口等。

通讯单元,用于在服务器系统管理中断的处理装置和外部服务器之间建立远程通讯连接,以便于服务器系统管理中断的处理装置能够将镜像文件挂载到外部服务器中。本实施例中,通讯单元具体可以包括但不限于基于无线通讯技术或有线通讯技术的远程通讯单元。

键盘,用于获取用户通过实时敲击键帽而输入的各种参数数据或指令。

显示器,用于运行服务器供电线路短路定位过程的相关信息进行实时显示。

鼠标,可以用于协助用户输入数据并简化用户的操作。

实施例四:

本实施例还公开了一种可读存储介质,这里所说的可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动硬盘、CD-ROM或技术领域内所公知的任意其他形式的存储介质。可读存储介质中存储有服务器系统管理中断的处理程序,所述服务器系统管理中断的处理程序被处理器执行时实现以下步骤:

1、根据不同的应用场景定制不同的BIOS底层应用驱动程序。

2、通过调整驱动程序的IPMI retry次数,优化驱动程序的请求超时时长。

3、当发生系统管理中断后,根据应用场景调用驱动程序。

4、运行驱动程序,根据设定的IPMI retry次数中断当前IPMI上报服务。

综上所述,本发明通过在不同环境中使用不同的定制驱动解决系统延迟问题,处理类似场景中SMI上报服务时,仅需要耗费120毫秒,延迟时间实现了量级的减小,给业务敏感客户带了稳定安全的业务运行环境。解决了客户的痛点,提高了服务器的使用效率和实用性。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的方法而言,由于其与实施例公开的系统相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

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

在本发明所提供的几个实施例中,应该理解到,所揭露的系统、系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。

同理,在本发明各个实施例中的各处理单元可以集成在一个功能模块中,也可以是各个处理单元物理存在,也可以两个或两个以上处理单元集成在一个功能模块中。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的服务器系统管理中断的处理方法、系统、装置及可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

技术分类

06120115638252