一种实现BIOS升降级配置选项保留的方法及装置制造方法及图纸

技术编号:33632395 阅读:31 留言:0更新日期:2022-06-02 01:38
本发明专利技术提供一种实现BIOS升降级配置选项保留的方法及装置,属于BIOS固件更新技术领域,所述方法步骤如下:在BMC中预先设置第一及第二数据结构体;BMC将配置选项修改数据保存到第一数据结构体中,并将第一数据结构体的标志位置位;BIOS从第一数据结构体中读取配置选项数据,将配置选项修改数据设置到BIOS中,取消第一数据结构体的标志位置位,并执行重启;BIOS获取自身当前配置选项数据,发送给BMC以存储到第二数据结构体中;带内外通过BMC执行保留配置选项数据的BIOS固件刷新,验证刷新结果正确性。本发明专利技术使得带内及带外刷新BIOS,均能实现刷新后配置选项得以保留,保证刷新后BIOS配置选项正确性。BIOS配置选项正确性。BIOS配置选项正确性。

【技术实现步骤摘要】
一种实现BIOS升降级配置选项保留的方法及装置


[0001]本专利技术属于BIOS固件更新
,具体涉及一种实现BIOS升降级配置选项保留的方法及装置。

技术介绍

[0002]随着服务器技术的不断推广与发展,服务器性能、功能以及易用性都在不断增强,而服务器中BIOS Setup配置选项越来越多,不同的客户根据自己业务的需求可以配置不同的选项组合,但在设置过程中经常会面临如下几个问题:一、线上或产线多个节点选项设置完成后,BIOS需要升级刷新动作,会需要再进行原有选项设置的操作,浪费人力影响配置效率。二、配置完成后,需要检查选项的设置状态是否正确。
[0003]目前通过两种方案进行BIOS选项的保留。第一种是使用AFU工具对带内刷新时,BIOS选项进行保留,此中方案由于选项变量位于BIOS的NVRAM中,根据刷新的指令可以跳过该区域的刷新,实现BIOS选项的保留,但此时当BIOS前后两个版本的选项布局发生变化时,无法实现保留参数的功能,必须强制刷新整个BIOS区域。第二种是基于redfish技术进行BIOS选项的保留,此种方案BMC会存有设置选项后生成的选项集合json文件,在BIOS更新完成后,开机过程中BIOS会根据保留参数刷新的条件同步json文件,更新BIOS NVRAM中的选项变量,实现BIOS选项的保留,此种采用redfish技术,需要BIOS和BMC间导入相应的模块,但业界对于这些模块的支持上不成熟,常常会导致宕机等异常问题出现,一方面影响产品稳定性,另一方面也会明显导致开机的时间加长,降低产品的使用效果。
[0004]此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种实现BIOS升降级配置选项保留的方法及装置,是非常有必要的。

技术实现思路

[0005]针对现有技术的上述部分配置选项修改的应用场景,现有使用AFU工具的方式无法在BIOS刷新前后布局变化时保留选项参数,而现有采用redfish技术的方案需要导入的模块降低产品稳定性的缺陷,本专利技术提供一种实现BIOS升降级配置选项保留的方法及装置,以解决上述技术问题。
[0006]第一方面,本专利技术提供一种实现BIOS升降级配置选项保留的方法,包括如下步骤:
[0007]S1.在BMC中预先设置第一数据结构体和第二数据结构体;
[0008]S2.BMC接收到用户发送的配置选项修改数据时,将配置选项修改数据保存到第一数据结构体中,并将第一数据结构体的标志位置位;
[0009]S3.BIOS获知第一数据结构体的标志位置位后,从第一数据结构体中读取配置选项数据,将配置选项修改数据设置到BIOS中,取消第一数据结构体的标志位置位,并执行重启;
[0010]S4.BIOS获取自身当前配置选项数据,并将当前配置选项数据发送给BMC以存储到第二数据结构体中;
[0011]S5.带内通过AFU工具以及带外通过BMC执行保留配置选项数据的BIOS固件刷新,验证刷新结果正确性,同时将BMC第二数据结构体中数据复制到第一数据结构体中,并将第一数据结构体的标志位置位。
[0012]进一步地,步骤S1具体步骤如下:
[0013]S11.在BMC中预先设置用于存储配置选项数据的第一数据结构体和第二数据结构体,并在第一数据结构体及第二数据结构体的标头中分别设置标志位;
[0014]S12.在BMC网页中设置保留参数可选项;
[0015]S13.在BIOS中预先设置选项组合结构体,并在选项组合结构体中设置偏移量和数值。第一数据结构体用于存储需要修改的BIOS配置选项,而第二数据结构体用于存储当前BIOS配置选项;BMC网页中保留参数可用于进行保留原有BIOS配置选项的选择。
[0016]进一步地,步骤S2具体步骤如下:
[0017]S21.用户通过IPMI写命令向BMC发送需要修改的配置选项及修改数据到BMC;
[0018]S22.BMC将需要修改的配置选项及修改数据保存到第一数据结构体中,并将第一数据结构体的标志位置位。第一数据结构体中标志位用于指示是否需要对BIOS配置选项进行修改。
[0019]进一步地,步骤S3具体步骤如下:
[0020]S31.BIOS开机后,通过IPMI读命令从BMC的第一数据结构体读取标志位,并判断标志位是否置位;
[0021]若是,进入步骤S32;
[0022]若否,进入步骤S4;
[0023]S32.BIOS从BMC第一数据结构体中读取需要修改的配置选项及修改数据,并进行配置选项修改;
[0024]S33.BIOS通过IPMI写命令将第一数据结构体的标志位置位取消,并执行重启;
[0025]S34.BMC检查第一数据结构体中标志位是否置位;
[0026]若是,进入步骤S4;
[0027]若否,将第一数据结构体中数据清除。BIOS开机后通过第一数据结构体标志位判断是否需要进行配置选项修改,当需要修改时,获取配置选项修改数据进行BIOS配置选项修改,并在修改完后,取消标志位的置位,防止后续误判断。
[0028]进一步地,步骤S4具体步骤如下:
[0029]S41.BIOS收集自身当前配置选项数据,并通过IPMI设置命令发送给BMC;
[0030]S42.BMC将BIOS当前配置选项数据存储到第二数据结构体中;
[0031]S43.在BMC设置配置选项查询接口,用户可通过IPMI获取命令从第二数据结构体中查询BIOS当前配选项。BIOS通过第二数据结构体保存当前配置选项,用于进行配置选项的保留。
[0032]进一步地,步骤S41具体步骤如下:
[0033]S411.BIOS获取自身当前配置选项数据,并将当前配置选项数据存储在选项组合结构体中,其中,数据值中存储当前配置选项数据,偏移量中存储选项组合结构体地址;
[0034]S412.BIOS通过IPMI命令将选项组合结构体中数据发送到BMC;
[0035]S413.BMC创建临时结构体,存储选项组合结构体中数据,并通过偏移量获取选项
组合结构体中数据值,从而得到BIOS当前配置选项数据。选项组合结构体与临时结构体实现BIOS与BMC中数据结构体中数据的对接。
[0036]进一步地,步骤S5具体步骤如下:
[0037]S51.判断对BIOS执行带内刷新还是带外刷新;
[0038]若是带内刷新,进入步骤S52;
[0039]若否带外刷新,进入步骤S54;
[0040]S52.在操作系统下,用户带内发送IPMI命令给BMC;
[0041]S53.BMC将第二数据结构体中数据复制到第一数据结构体中,并将第一数据结构体标志位置位,再通过AFU工具执行强刷BIOS指令,进入步骤S56;
[0042]S54.在操作系统下,用通过带外发送IPMI命令给BMC,或者在BMC网页中选择保留参数可选项;
[0043]S5本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实现BIOS升降级配置选项保留的方法,其特征在于,包括如下步骤:S1.在BMC中预先设置第一数据结构体和第二数据结构体;S2.BMC接收到用户发送的配置选项修改数据时,将配置选项修改数据保存到第一数据结构体中,并将第一数据结构体的标志位置位;S3.BIOS获知第一数据结构体的标志位置位后,从第一数据结构体中读取配置选项数据,将配置选项修改数据设置到BIOS中,取消第一数据结构体的标志位置位,并执行重启;S4.BIOS获取自身当前配置选项数据,并将当前配置选项数据发送给BMC以存储到第二数据结构体中;S5.带内通过AFU工具以及带外通过BMC执行保留配置选项数据的BIOS固件刷新,验证刷新结果正确性,同时将BMC第二数据结构体中数据复制到第一数据结构体中,并将第一数据结构体的标志位置位。2.如权利要求1所述的实现BIOS升降级配置选项保留的方法,其特征在于,步骤S1具体步骤如下:S11.在BMC中预先设置用于存储配置选项数据的第一数据结构体和第二数据结构体,并在第一数据结构体及第二数据结构体的标头中分别设置标志位;S12.在BMC网页中设置保留参数可选项;S13.在BIOS中预先设置选项组合结构体,并在选项组合结构体中设置偏移量和数值。3.如权利要求2所述的实现BIOS升降级配置选项保留的方法,其特征在于,步骤S2具体步骤如下:S21.用户通过IPMI写命令向BMC发送需要修改的配置选项及修改数据到BMC;S22.BMC将需要修改的配置选项及修改数据保存到第一数据结构体中,并将第一数据结构体的标志位置位。4.如权利要求3所述的实现BIOS升降级配置选项保留的方法,其特征在于,步骤S3具体步骤如下:S31.BIOS开机后,通过IPMI读命令从BMC的第一数据结构体读取标志位,并判断标志位是否置位;若是,进入步骤S32;若否,进入步骤S4;S32.BIOS从BMC第一数据结构体中读取需要修改的配置选项及修改数据,并进行配置选项修改;S33.BIOS通过IPMI写命令将第一数据结构体的标志位置位取消,并执行重启;S34.BMC检查第一数据结构体中标志位是否置位;若是,进入步骤S4;若否,将第一数据结构体中数据清除。5.如权利要求4所述的实现BIOS升降级配置选项保留的方法,其特征在于,步骤S4具体步骤如下:S41.BIOS收集自身当前配置选项数据,并通过IPMI设置命令发送给BMC;S42.BMC将BIOS当前配置选项数据存储到第二数据结构体中;S43.在BMC设置配置选项查询接口,用户可通过IPMI获取命令从第二数据结构体中查
询BIOS当前配选项。6.如权利要求5所述的实现BIOS升降级配置选项保留的方法,其特征在于,步骤S41具体步骤如下:S411.BIOS获取自身当前配置选项数据,并将当前配置选项数据存储在选项组合结构体中,其中,数据值中存储当前配置选项数据,偏移量中存储选项组合结构体地址;S412.BIOS通过IPMI命令将选项组合结构体中数据发送到BMC;S413.BMC创建临时结构体,存储选项组合结构体中数据,并通过偏移量获取选项组合结构体中数据值,从而得到BIOS当前配置选项数据。7.如权利要求5所述的实现BIOS升降级配置选项保留的方法,其特征在于,步骤S5具体步骤如下:S51.判断对BIOS执行带内刷新还是带外刷新;若是带内刷新,进入步骤S52;若否带外刷新,进入步骤S54;S52.在操作系统下,用户带内发送IPMI命令给BMC;S53.BMC将第二数据结构体中数据复制到第一数据结构体中,并将第一数据结构体标志位置位,再通过AFU工具执行强刷BIOS指令,进入步骤S56;S54.在操作系统下,用通过带外发送IPMI命令给BMC,或者在BMC网页中选择保留参数可选项;S55.BMC将第二数据结构体中数据复制到第一数据结构体中,并将第一数据结构体标志位置位,通知BIOS执行固件刷新;S56.BMC验证刷新结果正确性。8.如权利要求7所述的实现BIOS升降级配置选项保留的方法,其特征在于,步骤S56具体步骤如下:S561.BIOS固件刷新完成,进入操作系统;S562.BMC获取第二数据结构体...

【专利技术属性】
技术研发人员:芦飞艾山彬王优博
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1