一种BMC固件的刷新方法及相关装置制造方法及图纸

技术编号:30757451 阅读:51 留言:0更新日期:2021-11-10 12:11
本申请公开了一种BMC固件的刷新方法,包括:监测BMC启动过程中各运行阶段的运行状态;当监测到uboot运行阶段完成且BMC系统运行阶段异常时,将所述BMC切换到备ROM中运行;在所述BMC在所述备ROM中运行的过程中,将备ROM镜像同步刷新到主ROM。该方法通过监测BMC启动过程中各运行阶段的运行状态,来识别是否发生uboot运行阶段完成且BMC系统运行阶段异常的情况,并在发生uboot运行阶段完成且BMC系统运行阶段异常的情况下,协助切换BMC在备ROM中运行,能够有效提高BMC固件升级的成功率。本申请还公开了一种BMC固件的刷新装置、设备以及计算机可读存储介质,均具有上述技术效果。均具有上述技术效果。均具有上述技术效果。

【技术实现步骤摘要】
一种BMC固件的刷新方法及相关装置


[0001]本申请涉及服务器
,特别涉及一种BMC固件的刷新方法;还涉及一种BMC固件的刷新装置、设备以及计算机可读存储介质。

技术介绍

[0002]目前,BMC(Baseboard Manager Controller,基板管理控制器)的刷新方式主要包括两种:带内刷新和带外刷新。并且为了防止BMC运行途中挂掉,设计上又分为了主ROM(Read

Only Memory,只读存储器)与备ROM,以及主镜像与备镜像。一旦主镜像运行时挂掉,可以通过看门狗切换到备镜像继续运行。如果主ROM整个挂掉或者损坏,会通过看门狗切换到备ROM继续运行,保证了BMC运行的可持续性。然而,实际操作中,在BMC刷新中途,可能会遇到kernel panic或者其他原因导致BMC刷新失败的情况,这时uboot运行阶段已经完成,镜像中的部分block刷新损坏或者刷新失败,导致BMC无法通过看门狗切换到备镜像或者备ROM,此时会继续进入uboot运行当前镜像,只能通过烧录器烧写ROM来重新恢复,由此严重影响了BMC固件升级的成功率,在产线或者客户机房如果遇到此问题将会非常棘手。
[0003]有鉴于此,如何提高BMC固件升级的成功率已成为本领域技术人员亟待解决的技术问题。

技术实现思路

[0004]本申请的目的是提供一种BMC固件的刷新方法,能够有效提高BMC固件升级的成功率。本申请的另一个目的是提供一种BMC固件的刷新装置、设备以及计算机可读存储介质,均具有上述技术效果。
[0005]为解决上述技术问题,本申请提供了一种BMC固件的刷新方法,包括:
[0006]监测BMC启动过程中各运行阶段的运行状态;
[0007]当监测到uboot运行阶段完成且BMC系统运行阶段异常时,将所述BMC切换到备ROM中运行;
[0008]在所述BMC在所述备ROM中运行的过程中,将备ROM镜像同步刷新到主ROM。
[0009]可选的,所述监测BMC启动过程中各运行阶段的运行状态包括:
[0010]在BMC启动过程中,读取预设端口的电平状态,并根据所述预设端口的电平状态以及电平状态与运行状态的预设对应关系,得到各所述运行阶段的运行状态。
[0011]可选的,所述读取预设端口的电平状态,并根据所述预设端口的电平状态以及电平状态与运行状态的预设对应关系,得到各所述运行阶段的运行状态包括:
[0012]读取第一GPIO端口与第二GPIO端口的电平状态;
[0013]当所述第一GPIO端口为第一电平,所述第二GPIO端口为第二电平时,所述uboot运行阶段完成且所述BMC系统运行阶段异常。
[0014]可选的,所述第一电平为低电平,所述第二电平为高电平。
[0015]可选的,所述将所述BMC切换到备ROM中运行包括:
[0016]触发预设电路,以通过所述预设电路将所述BMC切换到所述备ROM中运行。
[0017]为解决上述技术问题,本申请还提供了一种BMC固件的刷新装置,包括:
[0018]监测模块,用于监测BMC启动过程中各运行阶段的运行状态;
[0019]切换模块,用于当监测到uboot运行阶段完成且BMC系统运行阶段异常时,将所述BMC切换到备ROM中运行;
[0020]同步模块,用于在所述BMC在所述备ROM中运行的过程中,将备ROM镜像同步刷新到主ROM。
[0021]可选的,所述监测模块具体用于在BMC启动过程中,读取预设端口的电平状态,并根据所述预设端口的电平状态以及电平状态与运行状态的预设对应关系,得到各所述运行阶段的运行状态。
[0022]可选的,所述切换模块具体用于触发预设电路,以通过所述预设电路将所述BMC切换到所述备ROM中运行。
[0023]为解决上述技术问题,本申请还提供了一种BMC固件的刷新设备,包括:
[0024]存储器,用于存储计算机程序;
[0025]处理器,用于执行所述计算机程序时实现如上任一项所述的BMC固件的刷新方法的步骤。
[0026]为解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述的BMC固件的刷新方法的步骤。
[0027]本申请所提供的BMC固件的刷新方法,包括:监测BMC启动过程中各运行阶段的运行状态;当监测到uboot运行阶段完成且BMC系统运行阶段异常时,将所述BMC切换到备ROM中运行;在所述BMC在所述备ROM中运行的过程中,将备ROM镜像同步刷新到主ROM。
[0028]可见,本申请所提供的BMC固件的刷新方法,通过监测BMC启动过程中各运行阶段的运行状态,来识别是否发生uboot运行阶段完成且BMC系统运行阶段异常的情况,并在发生uboot运行阶段完成且BMC系统运行阶段异常的情况下,协助切换BMC,将BMC切换到备用ROM中运行,同时在所述BMC在所述备ROM中运行的过程中,将备ROM镜像同步刷新到主ROM,如此使BMC固件成功刷新,提高BMC固件刷新的成功率,尤其在产线和客户机房等大批量机器升级的场景下,可以极大的提高BMC固件的刷新成功率。
[0029]本申请所提供的BMC固件的刷新装置、设备以及计算机可读存储介质均具有上述技术效果。
附图说明
[0030]为了更清楚地说明本申请实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0031]图1为本申请实施例所提供的一种BMC固件的刷新方法的流程示意图;
[0032]图2为本申请实施例所提供的一种BMC固件的刷新装置的示意图;
[0033]图3为本申请实施例所提供的一种BMC固件的刷新设备的示意图。
具体实施方式
[0034]本申请的核心是提供一种BMC固件的刷新方法,能够有效提高BMC固件升级的成功率。本申请的另一个核心是提供一种BMC固件的刷新装置、设备以及计算机可读存储介质,均具有上述技术效果。
[0035]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0036]请参考图1,图1为本申请实施例所提供的一种BMC固件的刷新方法的流程示意图,参考图1所示,该方法主要包括:
[0037]S101:监测BMC启动过程中各运行阶段的运行状态;
[0038]具体的,本申请针对的主要是uboot运行阶段已经完成本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种BMC固件的刷新方法,其特征在于,包括:监测BMC启动过程中各运行阶段的运行状态;当监测到uboot运行阶段完成且BMC系统运行阶段异常时,将所述BMC切换到备ROM中运行;在所述BMC在所述备ROM中运行的过程中,将备ROM镜像同步刷新到主ROM。2.根据权利要求1所述的BMC固件的刷新方法,其特征在于,所述监测BMC启动过程中各运行阶段的运行状态包括:在BMC启动过程中,读取预设端口的电平状态,并根据所述预设端口的电平状态以及电平状态与运行状态的预设对应关系,得到各所述运行阶段的运行状态。3.根据权利要求2所述的BMC固件的刷新方法,其特征在于,所述读取预设端口的电平状态,并根据所述预设端口的电平状态以及电平状态与运行状态的预设对应关系,得到各所述运行阶段的运行状态包括:读取第一GPIO端口与第二GPIO端口的电平状态;当所述第一GPIO端口为第一电平,所述第二GPIO端口为第二电平时,所述uboot运行阶段完成且所述BMC系统运行阶段异常。4.根据权利要求3所述的BMC固件的刷新方法,其特征在于,所述第一电平为低电平,所述第二电平为高电平。5.根据权利要求1所述的BMC固件的刷新方法,其特征在于,所述将所述BMC切换到备ROM中运行包括:触发预设电...

【专利技术属性】
技术研发人员:林玉兵鞠荣荣靳先奇
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1