一种基于BMC的多路BIOS远程在线升级系统和方法与流程

    专利2026-02-10  15


    本发明属于计算机服务器领域,尤其涉及一种基于bmc的多路bios远程在线升级系统和方法。


    背景技术:

    1、服务器系统可以分为bmc和cpu两部分,基板管理控制器(baseboard managercontroller,bmc)能够监控和管理系统来保证服务器处于正常稳定的运行状态。在服务器的运行或者维护过程中,有时候需要对cpu端的bios(basic input output system)进行升级,而服务器有可能部署在远端或者浸没在液冷装置中,这样使得通过烧录器手动烧写bios的flash进行升级的方式就比较困难,需要一种能够通过bmc远程在线对bios进行升级的方式。

    2、当前很多服务器的厂商都提供了bmc对cpu端bios的升级功能,第一种方式是通过用远程工具将bios的镜像上传到bmc的后端,然后在bmc后端通过输入命令的方式去升级bios;第二种方式为提供自动化的升级方式,在bmc后端的升级脚本中,直接去操作与升级bios的flash相关的串行外围设备接口(serial peripheral interface,spi)总线控制器相关的寄存器;第三种方式为通过将bios的flash的spi驱动程序单独从linux内核中分离出来,然后编译成ko模块,通过反复加载和卸载ko模块的方式,来实现bios的flash的设备的挂载和卸载。

    3、现有的bmc对bios升级方式缺陷为:第一种方式需要登录到bmc的后端,并且要求维护人员手动输入升级命令,对客户维护人员的要求比较高,并且操作比较繁琐;第二种方式增加了bmc技术人员的开发难度,并且不利于bmc的软件维护;第三种方式即使是同一份flash的spi控制器驱动程序,也要维护两套代码,并且还需要对ko模块文件进行打包集成,增加了该功能开发的复杂性。

    4、综上描述,现有的三种bmc对bios升级方式都无法简单、方便的实现bios升级。


    技术实现思路

    1、为了弥补现有技术的缺陷,本发明提供了一种基于bmc的多路bios远程在线升级方法和系统。

    2、为了解决上述技术问题,本发明所采用的技术方案是:

    3、第一方面,提供了一种基于bmc的多路bios远程在线升级系统,包括:

    4、基板管理控制器bmc模块、cpu模块的bios单元及bios单元的flash芯片;bmc模块运行bmc软件;

    5、当需要进行bios单元升级时,bmc软件获取bios升级包;

    6、bmc软件对bios升级包进行解压缩,得到bios镜像文件、版本信息及签名验证信息;

    7、bmc软件根据版本信息及签名验证信息进行版本和签名校验;

    8、若版本和签名至少一个校验不通过,则bmc软件确定bios单元升级失败;

    9、若版本和签名都校验通过,则bmc软件将bios镜像文件刷写至bios单元的flash芯片中,实现bios单元的远程在线升级。

    10、进一步的,cpu模块具有四个,一个cpu模块对应一个bios单元,一个bios单元对应一个flash芯片;

    11、cpu模块通过串行外设接口spi引脚与对应的flash芯片连接;

    12、cpu模块的芯片型号为飞腾s2500;flash芯片的型号为spansion厂商的s25fl128p。

    13、进一步的,基于bmc的多路bios远程在线升级系统还包括:

    14、电平转换模块、复杂可编程逻辑器件cpld模块及四个引脚切换模块;

    15、bmc模块通过一路spi总线与电平转换模块连接,电平转换模块通过一个引脚切换模块与一个flash芯片连接;

    16、bmc模块通过三个通用输入输出端口gpio与cpld模块连接;

    17、cpld模块与四个引脚切换模块均连接;

    18、bmc模块通过三个gpio的电平状态控制cpld模块选择一个引脚切换模块,使得bmc模块与一个bios单元的flash芯片连接。

    19、进一步的,当系统上电时,bmc软件控制三个gpio为低电平,使得cpld模块不选择任意一个引脚切换模块,bmc模块与四个flash芯片均不连接;

    20、四个cpu模块分别引导对应的bios单元正常启动。

    21、进一步的,当系统启动完成,且需要对四个bios单元中的目标bios单元进行升级时,bmc软件确定目标bios单元标识;

    22、bmc软件根据目标bios单元标识与gpio电平状态的预置关系表,确定三个gpio的目标电平状态;

    23、bmc软件控制三个gpio输出目标电平状态;

    24、cpld模块根据目标电平状态选择与目标bios单元对应的目标引脚切换模块,使得bmc模块与目标bios单元连接。

    25、进一步的,bmc软件将spi总线的spi控制器的驱动程序集成在软件内核中。

    26、进一步的,bmc软件对spi控制器的驱动程序进行解绑和重新绑定,从而使得驱动程序重新执行,查找到目标bios单元的目标flash芯片;

    27、bmc软件将目标flash芯片挂载为bmc文件系统内的内存分区设备;

    28、bmc软件通过bmc文件系统自带的磁盘读写命令,将目标bios单元的bmc镜像文件写入到目标flash芯片中。

    29、进一步的,当目标flash芯片写入完成后,bmc软件将spi控制器的驱动程序进行解绑操作;

    30、bmc软件控制三个gpio的输出逐一对目标bios单元之外的其他bios单元分别进行远程在线升级;

    31、当所有的bios单元都升级完成时,bmc软件控制三个gpio的电平状态为低电平。

    32、第二方面,提供了一种基于bmc的多路bios远程在线升级方法,应用于以上第一方面中的基于bmc的多路bios远程在线升级系统,基于bmc的多路bios远程在线升级方法包括:

    33、当需要进行bios单元升级时,bmc软件获取bios升级包;

    34、bmc软件对bios升级包进行解压缩,得到bios镜像文件、版本信息及签名验证信息;

    35、bmc软件根据版本信息及签名验证信息进行版本和签名校验;

    36、若版本和签名至少一个校验不通过,则bmc软件确定bios单元升级失败;

    37、若版本和签名都校验通过,则bmc软件将bios镜像文件刷写至bios单元的flash芯片中,实现bios单元的远程在线升级。

    38、本发明所达到的有益效果:

    39、当需要进行bios单元升级时,bmc软件获取bios升级包;bmc软件对bios升级包进行解压缩,得到bios镜像文件、版本信息及签名验证信息;bmc软件根据版本信息及签名验证信息进行版本和签名校验;若版本和签名至少一个校验不通过,则bmc软件确定bios单元升级失败;若版本和签名都校验通过,则bmc软件将bios镜像文件刷写至bios单元的flash芯片中,实现bios单元的远程在线升级;用户可以直接通过bmc软件对bios进行远程升级,升级的过程都不需要人工手动干预,为用户操作带来了便利;

    40、采用对spi控制器的驱动程序的重新执行的方式,实现bios单元的flash芯片的卸载和挂载,同时采用bmc文件系统内的磁盘读写命令进行bmc镜像文件的写入,而不是采用直接寄存器的方式,降低了开发人员的开发难度,同时也降低了服务器的维护难度。


    技术特征:

    1.一种基于bmc的多路bios远程在线升级系统,其特征在于,包括:

    2.根据权利要求1所述的基于bmc的多路bios远程在线升级系统,其特征在于,

    3.根据权利要求2所述的基于bmc的多路bios远程在线升级系统,其特征在于,所述基于bmc的多路bios远程在线升级系统还包括:

    4.根据权利要求3所述的基于bmc的多路bios远程在线升级系统,其特征在于,

    5.根据权利要求4所述的基于bmc的多路bios远程在线升级系统,其特征在于,

    6.根据权利要求5所述的基于bmc的多路bios远程在线升级系统,其特征在于,

    7.根据权利要求6所述的基于bmc的多路bios远程在线升级系统,其特征在于,

    8.根据权利要求7所述的基于bmc的多路bios远程在线升级系统,其特征在于,

    9.一种基于bmc的多路bios远程在线升级方法,其特征在于,应用于以上权利要求1-8中任一项所述的基于bmc的多路bios远程在线升级系统,所述基于bmc的多路bios远程在线升级方法包括:


    技术总结
    本发明公开了一种基于BMC的多路BIOS远程在线升级系统和方法,系统包括:当需要进行BIOS单元升级时,BMC软件获取BIOS升级包;BMC软件对BIOS升级包进行解压缩,得到BIOS镜像文件、版本信息及签名验证信息;BMC软件根据版本信息及签名验证信息进行版本和签名校验;若版本和签名至少一个校验不通过,则BMC软件确定BIOS单元升级失败;若版本和签名都校验通过,则BMC软件将BIOS镜像文件刷写至BIOS单元的Flash芯片中,实现BIOS单元的远程在线升级。为用户操作带来了便利、降低了开发人员的开发难度及服务器的维护难度。

    技术研发人员:彭日光,周林华,龙建,王宏,杨健,胡鑫,刘明宇,魏丁,黎映相
    受保护的技术使用者:长沙湘计海盾科技有限公司
    技术研发日:
    技术公布日:2024/4/29
    转载请注明原文地址:https://wp.8miu.com/read-94958.html

    最新回复(0)