CN115309589A - 一种基板管理控制器恢复暂存区域的方法、***及装置 - Google Patents
一种基板管理控制器恢复暂存区域的方法、***及装置 Download PDFInfo
- Publication number
- CN115309589A CN115309589A CN202211050323.2A CN202211050323A CN115309589A CN 115309589 A CN115309589 A CN 115309589A CN 202211050323 A CN202211050323 A CN 202211050323A CN 115309589 A CN115309589 A CN 115309589A
- Authority
- CN
- China
- Prior art keywords
- area
- temporary storage
- storage area
- management controller
- verification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 239000000758 substrate Substances 0.000 title claims abstract description 17
- 238000011084 recovery Methods 0.000 claims abstract description 49
- 238000012795 verification Methods 0.000 claims abstract description 47
- 230000000694 effects Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1417—Boot up procedures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基板管理控制器恢复暂存区域的方法、***及装置。方法包括服务器上电后,对基板管理控制器的暂存区域进行校验;若校验不通过,则将基板管理控制器活动区域内的文件压缩至所述暂存区域。本发明在服务器上电时,增加对基板管理控制器BMC的暂存区域的校验,在暂存区域校验失败时,通过活动区域或恢复区域对其恢复,保障暂存区域始终可用,保证了BMC的正常启动和服务器的正常开机。
Description
技术领域
本发明涉及服务器技术领域,尤其是一种基板管理控制器恢复暂存区域的方法、***及装置。
背景技术
目前,具有PFR(Platform Firmware Resilience,平台固件恢复力)功能的服务器BMC(Baseboard Manager Controller,基板管理控制器)分为active(活动)区域、recovery(恢复)区域和stag(暂存)区域。active区域中存放的是未经压缩的、直接执行的固件程序,BMC从此区域启动,recovery区域中存放的是BMC镜像的压缩文件,stag区域是通过BMC升级时BMC存放升级镜像的区域。
当服务器每次上电时,CPLD会校验active区域和recovery区域,当active区域损坏时,CPLD会使用recovery区域恢复active区域。当recovery区域损坏或recovery区域和active区域同时损坏时,CPLD就会使用stag区域恢复recovery区域,再用recovery区域恢复active区域。因此stag区域是BMC可以正常启动的最后保障,但是只有通过BMC进行升级操作时才会对其进行更新。
stag区域和active区域保存在同一个flash存储芯片,active区域被破坏的情况下,很难保证stag区域不被破坏。由于目前没有自动恢复stag区域的方法,stag被清空或者破坏的情况下,recovery区域也被破坏,recovery区域将无法恢复,active区域也同时被破坏,服务器将无法启动。
发明内容
本发明提供了一种基板管理控制器恢复暂存区域的方法、***及装置,用于解决现有目前在BMC的stage区域破坏后,缺乏恢复机制,影响服务器正常启动的问题。
为实现上述目的,本发明采用下述技术方案:
本发明第一方面提供了一种基板管理控制器恢复暂存区域的方法,所述方法包括以下步骤:
服务器上电后,对基板管理控制器的暂存区域进行校验;
若校验不通过,则将基板管理控制器活动区域内的文件压缩至所述恢复区域。
进一步地,所述对基板管理控制器的恢复区域进行校验具体为:
对所述暂存区域进行哈希运算,将运算结果与预存结果比较,若一致,则校验通过,否则校验不通过。
进一步地,所述校验不通过包括暂存区域内的文件被破坏或为空。
进一步地,所述方法还包括步骤:
若校验不通过,则将基板管理控制器恢复区域的文件复制至所述暂存区域。
进一步地,所述方法在检验不通过之后还包括步骤:
查看活动区域的校验结果,若活动区域校验不通过,则使用恢复区域恢复所述活动区域,将恢复后活动区域内的文件压缩至所述暂存区域。
本发明第二方面提供了一种基板管理控制器恢复暂存区域的***,所述***包括:
校验单元,用于在服务器上电后,对基板管理控制器的暂存区域进行校验;
第一数据恢复单元,在校验不通过时,将基板管理控制器活动区域内的文件压缩至所述暂存区域。
进一步地,所述***还包括:
第二数据恢复单元,在校验不通过时,将基板管理控制器恢复区域的文件复制至所述暂存区域。
进一步地,所述第一数据恢复单元还包括数据恢复子单元,所述数据恢复子单元查看活动区域的校验结果,若活动区域校验不通过,则使用恢复区域恢复所述活动区域,将恢复后活动区域内的文件压缩至所述暂存区域。
本发明第三方面提供了一种基板管理控制器恢复暂存区域的装置,所述装置包括复杂可编程逻辑器件CPLD和基板管理控制器BMC,所述复杂可编程逻辑器件CPLD上部署有所述的***。
本发明第四方面提供了一种计算机存储介质,所述计算机存储介质中存储有计算机指令,所述计算机指令在***上运行时,使所述***执行所述方法的步骤。
本发明第二方面的所述恢复暂存区域的***能够实现第一方面及第一方面的各实现方式中的方法,并取得相同的效果。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
本发明在服务器上电时,增加对基板管理控制器BMC的暂存区域的校验,在暂存区域校验失败时,通过活动区域或恢复区域对其恢复,保障暂存区域始终可用,保证了BMC的正常启动和服务器的正常开机。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明所述方法实施例的流程示意图;
图2是本发明所述方法实施例中其一实现方式的流程示意图;
图3是本发明所述***实施例的结构示意图;
图4是本发明所述装置实施例的结构示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
如图1所示,本发明实施例提供了一种基板管理控制器恢复暂存区域的方法,包括以下步骤:
S1,服务器上电后,对基板管理控制器的暂存区域进行校验;
S2,若校验不通过,则将基板管理控制器活动区域内的文件压缩至所述暂存区域。
步骤S1中,所述对基板管理控制器的暂存区域进行校验具体为:
对所述暂存区域内的文件进行哈希运算,将运算结果与预存结果比较,若一致,则校验通过,否则校验不通过。其中预存结果为暂存区域正常时的哈希值。本实施例中哈希运算具有两种操作模式:SHA-only模式和ECDSA+SHA模式。在SHA-only模式下,校验执行SHA-256摘要,生成运算结果,并与预存结果比较;在ECDSA+SHA模式下,校验执行SHA2-256摘要生成,然后进行签名验证,得到运算结果,与预存结果比较。在选用不同的操作模式进行校验时,预存结果也与之对应,即若选用SHA-only模式校验,则预存结果也是通过SHA-only模式基于正常暂存区域文件计算得到。
以SHA-only操作模式为例,对校验操作进行说明:在运行哈希运算前,首先通过数据长度寄存器配置数据长度以及通过状态控制寄存器设置SHA计算的起始位;在进行校验时,将负载数据写入数据寄存器并判断剩余数据长度,在剩余数据长度为0时,停止数据写入,然后通过读取控制状态寄存器轮询SHA的完成位,在所述完成位为1时,哈希运算结束,从SHA结果寄存器中获取运算结果,将该运算结果与预存结果进行比较。
其中,所述校验不通过包括暂存区域内的文件被破坏或为空。
本发明所述方法实施例的其一实现方式中,所述方法还包括步骤:
若校验不通过,则将基板管理控制器恢复区域的文件复制至所述暂存区域。
本发明所述方法实施例的其一实现方式中,所述方法在检验不通过之后还包括步骤:
查看活动区域的校验结果,若活动区域校验不通过,则使用恢复区域恢复所述活动区域,将恢复后活动区域内的文件压缩至所述暂存区域。
需要说明的是,正常情况下恢复区域和暂存区域内存储了相同的镜像压缩文件,而活动区域内存储了所述镜像压缩文件解压后的文件,因此三者在理论上能够实现相互恢复,本申请上述实施例的技术手段得以实现。
如图2所示,在服务器上电后,通过复杂可编程逻辑器件CPLD对BMC的暂存区域stage进行校验,若校验通过,则BMC正常启动,否则判断基板管理控制器BMC的活动区域是否校验通过,若通过,则使用活动区域恢复暂存区域,否则使用恢复区域恢复活动区域,然后使用恢复后的活动区域恢复暂存区域,保证基板管理控制器BMC的正常启动。
基于本发明上述实施例记载,对基板管理控制器内部区域进行恢复时,数据来源无需依赖外部元件(如基本输入输出***BIOS等),仅通过基板管理控制器内部不同区域间的数据交互即可实现。
如图3所示,本发明实施例还提供了一种基板管理控制器恢复暂存区域的***,包括校验单元1和第一数据恢复单元2。
校验单元1用于在服务器上电后,对基板管理控制器的暂存区域进行校验;第一数据恢复单元2在校验不通过时,将基板管理控制器活动区域内的文件压缩至所述暂存区域。
本发明所述***实施例的其一实现方式中,所述***还包括第二数据恢复单元3。
第二数据恢复单元3在校验不通过时,将基板管理控制器恢复区域的文件复制至所述暂存区域。
本发明所述***实施例的其一实现方式中,所述第一数据恢复单元1还包括数据恢复子单元21,所述数据恢复子单元21查看活动区域的校验结果,若活动区域校验不通过,则使用恢复区域恢复所述活动区域,将恢复后活动区域内的文件压缩至所述暂存区域。
如图4所示,本发明实施例还提供了一种基板管理控制器恢复暂存区域的装置,所述装置包括复杂可编程逻辑器件CPLD和基板管理控制器BMC,所述复杂可编程逻辑器件CPLD上部署有上述实施例所述的***。
本发明实施例还提供了一种计算机存储介质,所述计算机存储介质中存储有计算机指令,所述计算机指令在***上运行时,使所述***执行所述方法的步骤。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (10)
1.一种基板管理控制器恢复暂存区域的方法,其特征是,所述方法包括以下步骤:
服务器上电后,对所述基板管理控制器的暂存区域进行校验;
若校验不通过,则将所述基板管理控制器活动区域内的文件压缩至所述暂存区域。
2.根据权利要求1所述基板管理控制器恢复暂存区域的方法,其特征是,所述对基板管理控制器的暂存区域进行校验具体为:
对所述暂存区域进行哈希运算,将运算结果与预存结果比较,若一致,则校验通过,否则校验不通过。
3.根据权利要求1所述基板管理控制器恢复暂存区域的方法,其特征是,所述校验不通过包括所述暂存区域内的文件被破坏或为空。
4.根据权利要求1所述基板管理控制器恢复暂存区域的方法,其特征是,所述方法还包括步骤:
若校验不通过,则将所述基板管理控制器恢复区域的文件复制至所述暂存区域。
5.根据权利要求1所述基板管理控制器恢复暂存区域的方法,其特征是,所述方法在检验不通过之后还包括步骤:
查看所述活动区域的校验结果,若所述活动区域校验不通过,则使用恢复区域恢复所述活动区域,将恢复后所述活动区域内的文件压缩至所述暂存区域。
6.一种基板管理控制器恢复暂存区域的***,其特征是,所述***包括:
校验单元,用于在服务器上电后,对基板管理控制器的暂存区域进行校验;
第一数据恢复单元,在校验不通过时,将基板管理控制器活动区域内的文件压缩至所述暂存区域。
7.根据权利要求6所述基板管理控制器恢复暂存区域的***,其特征是,所述***还包括:
第二数据恢复单元,在校验不通过时,将基板管理控制器恢复区域的文件复制至所述暂存区域。
8.根据权利要求6所述基板管理控制器恢复暂存区域的***,其特征是,所述第一数据恢复单元还包括数据恢复子单元,所述数据恢复子单元查看活动区域的校验结果,若活动区域校验不通过,则使用恢复区域恢复所述活动区域,将恢复后活动区域内的文件压缩至所述暂存区域。
9.一种基板管理控制器恢复暂存区域的装置,其特征是,所述装置包括复杂可编程逻辑器件CPLD和基板管理控制器,所述复杂可编程逻辑器件CPLD上部署有权利要求6-8任一项所述的***。
10.一种计算机存储介质,所述计算机存储介质中存储有计算机指令,其特征是,所述计算机指令在权利要求6-8***上运行时,使所述***执行如权利要求1-5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211050323.2A CN115309589A (zh) | 2022-08-30 | 2022-08-30 | 一种基板管理控制器恢复暂存区域的方法、***及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211050323.2A CN115309589A (zh) | 2022-08-30 | 2022-08-30 | 一种基板管理控制器恢复暂存区域的方法、***及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115309589A true CN115309589A (zh) | 2022-11-08 |
Family
ID=83864012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211050323.2A Pending CN115309589A (zh) | 2022-08-30 | 2022-08-30 | 一种基板管理控制器恢复暂存区域的方法、***及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115309589A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI839136B (zh) * | 2023-03-02 | 2024-04-11 | 神雲科技股份有限公司 | 基板管理控制器的下游裝置的韌體更新方法 |
WO2024113683A1 (zh) * | 2022-11-29 | 2024-06-06 | 苏州元脑智能科技有限公司 | Flash器件切换方法、装置、计算机设备和存储介质 |
-
2022
- 2022-08-30 CN CN202211050323.2A patent/CN115309589A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024113683A1 (zh) * | 2022-11-29 | 2024-06-06 | 苏州元脑智能科技有限公司 | Flash器件切换方法、装置、计算机设备和存储介质 |
TWI839136B (zh) * | 2023-03-02 | 2024-04-11 | 神雲科技股份有限公司 | 基板管理控制器的下游裝置的韌體更新方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115309589A (zh) | 一种基板管理控制器恢复暂存区域的方法、***及装置 | |
US6665813B1 (en) | Method and apparatus for updateable flash memory design and recovery with minimal redundancy | |
CN102084350B (zh) | 数据的远程副本的验证 | |
US10114655B2 (en) | Rapid start up method for electronic equipment | |
US6990611B2 (en) | Recovering data from arrays of storage devices after certain failures | |
US20100169709A1 (en) | System Of Updating Firmware And Method Thereof, And Method Of Creating Firmware | |
US20060056321A1 (en) | Recovery of duplex data system after power failure | |
CN111143132B (zh) | 一种bios恢复方法、装置、设备及可读存储介质 | |
US7689981B1 (en) | Mobile handset with efficient interruption point detection during a multiple-pass update process | |
CN111813753A (zh) | 保存文件的方法、恢复文件的方法、装置及终端设备 | |
CN108737153B (zh) | 区块链灾备***、方法、服务器和计算机可读存储介质 | |
WO2024113685A1 (zh) | 一种raid阵列的数据恢复方法及相关装置 | |
EP0886211A2 (en) | Initial program load | |
CN114579971A (zh) | 一种安全控制模组的启动方法及相关装置 | |
CN112559059A (zh) | 一种bios选项配置方法及相关装置 | |
CN115309577A (zh) | 一种嵌入式装置及其启动及恢复方法 | |
CN113448760B (zh) | 一种硬盘异常状态的恢复方法、***、设备以及介质 | |
TW201617861A (zh) | 韌體更新方法及其電子裝置 | |
CN111611000B (zh) | 一种高可靠的固件空中升级方法及*** | |
JP2000330778A (ja) | 修正ロードモジュール置換後の復旧方法ならびに装置 | |
CN111176902A (zh) | 一种使用BMC Flash备份Controller Device韧体的装置和方法 | |
KR20140032071A (ko) | 컴퓨팅 디바이스의 파일 시스템 관리 장치 및 방법 | |
CN109408287B (zh) | 一种数据可靠性的存储及恢复方法、***及装置 | |
CN115421974A (zh) | 一种基于pfr的bios恢复方法、装置、设备、介质 | |
US10942810B2 (en) | Start-up processing for information processing apparatus and method, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |