[发明专利]一种BMC启动固件回滚方法、装置、BMC及存储介质在审
申请号: | 202010093604.0 | 申请日: | 2020-02-14 |
公开(公告)号: | CN111324366A | 公开(公告)日: | 2020-06-23 |
发明(设计)人: | 张旭 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F8/654 | 分类号: | G06F8/654;G06F8/71 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 牛亭亭 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 bmc 启动 固件回滚 方法 装置 存储 介质 | ||
本申请公开了一种BMC启动固件回滚方法,区别于现有技术在Flash两个存储空间总是存储相同的启动固件镜像的方案,本申请在每次接收到BMC启动固件更新指令时,总是将最新版启动固件轮流的存储在第一存储空间或第二存储空间,以使同一时刻两个存储空间总是存储有高低两个版本的启动固件。存储的不同版本的启动固件满足了启动固件回滚的前提和要求,同时,在最新版启动固件不可用时,还可以另一可用的较低版本启动固件对其进行回顾,使得总能够保障Flash中存储有两个可用的启动固件,增加了BMC启动的可靠性。本申请还同时公开了一种BMC启动固件回滚装置、一种BMC以及可读存储介质,具有上述有益效果。
技术领域
本申请涉及BMC启动技术领域,特别涉及一种应用于BMC的BMC启动固件回滚方法、装置以及一种BMC及可读存储介质。
背景技术
BMC,执行伺服器远端管理控制器,英文全称为Baseboard ManagementController,是一种可以实现服务器的相关控制、信息监督等功能,是直观呈现服务器信息的平台。BMC的固件一般存在一片Flash中,BMC的升级操作分为两个过程即将Flash原信息擦除和新信息的再次写入。固件中包含uboot、内核、文件系统、各应用进程等信息,任何一个部分写失败均会造成BMC启动失败及功能不生效问题。
BMC升级过程中会概率性出现写入Flash的镜像损坏现象(Flash写文件造成),若镜像损坏则会造成BMC启动失败或功能缺失,现有方案将Flash划分成两个部分,升级时将固件重复写入两个部分,得到相同的镜像1和镜像2。若任一镜像不可用,剩余的单一可用镜像将导致可靠性降低,而且若是两个新版本镜像还存在运行问题,由于镜像相同还将导致无法回溯。
因此,如何克服上述现有技术存在的各项技术缺陷,是本领域技术人员亟待解决的问题。
发明内容
本申请提供了一种应用于BMC的BMC启动固件回滚方法、装置以及一种BMC和可读存储介质,旨在为BMC启动提供更高的可靠性和增加高低版本固件之间的回滚能力。
为实现上述目的,本申请提供了一种应用于BMC的BMC启动固件回滚方法,包括:
根据每次接收到的BMC启动固件版本更新指令,将最新版启动固件轮流存储在Flash中的第一存储空间和第二存储空间;其中,所述第一存储空间和所述第二存储空间在同一时刻分别存储有高低两个版本的启动固件,总是首先使用最新版启动固件尝试启动BMC;
若当前的最新版启动固件不可用时,使用另一较低版本启动固件将不可用的最新版启动固件回滚为所述较低版本启动固件。
可选的,在所述Falsh首次使用时,还包括:
将相同版本的启动固件分别存储至所述第一存储空间和所述第二存储空间。
可选的,将最新版启动固件轮流存储在Flash中的第一存储空间和第二存储空间,包括:
分别从所述第一存储空间和所述第二存储空间获取其存储的启动固件的版本号;
将存储较低版本号的启动固件的存储空间确定为当前的目标存储空间;
将所述最新版启动固件覆盖存储至所述目标存储空间。
可选的,将最新版启动固件轮流存储在Flash中的第一存储空间和第二存储空间,包括:
分别查询所述第一存储空间和所述第二存储空间的预设字段;
将在所述预设字段下附加有固件更新标识的存储空间确定为当前的目标存储空间;其中,仅有上一次进行了覆盖存储的存储空间会被附加所述固件更新标识;
将所述最新版启动固件覆盖存储至所述目标存储空间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010093604.0/2.html,转载请声明来源钻瓜专利网。