CN113064757B - 一种服务器固件自恢复系统及服务器 - Google Patents

一种服务器固件自恢复系统及服务器 Download PDF

Info

Publication number
CN113064757B
CN113064757B CN202110326283.9A CN202110326283A CN113064757B CN 113064757 B CN113064757 B CN 113064757B CN 202110326283 A CN202110326283 A CN 202110326283A CN 113064757 B CN113064757 B CN 113064757B
Authority
CN
China
Prior art keywords
storage module
controller
main storage
module
starting
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.)
Active
Application number
CN202110326283.9A
Other languages
English (en)
Other versions
CN113064757A (zh
Inventor
韩红瑞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Yingxin Computer Technology Co Ltd
Original Assignee
Shandong Yingxin Computer Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shandong Yingxin Computer Technology Co Ltd filed Critical Shandong Yingxin Computer Technology Co Ltd
Priority to CN202110326283.9A priority Critical patent/CN113064757B/zh
Publication of CN113064757A publication Critical patent/CN113064757A/zh
Priority to PCT/CN2021/121423 priority patent/WO2022198973A1/zh
Priority to US18/024,809 priority patent/US20230333621A1/en
Application granted granted Critical
Publication of CN113064757B publication Critical patent/CN113064757B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering

Abstract

本发明公开了一种服务器固件自恢复系统及服务器,包括存储模块、启动控制器、修复控制器及逻辑控制器,存储模块用于存储系统固件程序;启动控制器用于在自身与存储模块建立通信连接的情况下,从存储模块中读取系统固件程序以启动系统;修复控制器用于在存储模块启动异常且自身与存储模块建立通信连接的情况下,自动对存储模块进行异常修复处理;逻辑控制器用于在初始情况下默认将存储模块与启动控制器建立通信连接;若检测到启动控制器启动系统失败,则确定存储模块启动异常,并将存储模块切换至与修复控制器建立通信连接。可见,本申请可对启动异常的存储模块自动进行异常修复处理,从而减少了运维时间,提升了运维效率,减轻了运维工作压力。

Description

一种服务器固件自恢复系统及服务器
技术领域
本发明涉及服务器运维领域,特别是涉及一种服务器固件自恢复系统及服务器。
背景技术
随着数据中心的规模越来越大,千万台级别的服务器给运维工作带来巨大的挑战。目前,服务器系统的固件程序通常存储于Flash(闪存)芯片中,通过读取Flash芯片中的固件程序以完成系统启动。但是,系统有时会因Flash芯片或其内固件程序出现问题而启动失败,但现有的运维工作只能做到将系统启动失败情况上报给运维服务器,后续还需维修人员对Flash芯片进行异常修复处理,导致运维时间较长,运维效率较低,运维工作压力较大。
因此,如何提供一种解决上述技术问题的方案是本领域的技术人员目前需要解决的问题。
发明内容
本发明的目的是提供一种服务器固件自恢复系统及服务器,可对启动异常的存储模块自动进行异常修复处理,从而减少了运维时间,提升了运维效率,减轻了运维工作压力。
为解决上述技术问题,本发明提供了一种服务器固件自恢复系统,包括:
存储模块,用于存储系统固件程序;
启动控制器,用于在自身与所述存储模块建立通信连接的情况下,从所述存储模块中读取所述系统固件程序以启动系统;
修复控制器,用于在所述存储模块启动异常且自身与所述存储模块建立通信连接的情况下,自动对所述存储模块进行异常修复处理;
分别与所述存储模块、所述启动控制器及所述修复控制器连接的逻辑控制器,用于在初始情况下默认将所述存储模块与所述启动控制器建立通信连接;若检测到所述启动控制器启动系统失败,则确定所述存储模块启动异常,并将所述存储模块切换至与所述修复控制器建立通信连接。
优选地,所述启动控制器包含ME;所述系统固件程序包括ME固件程序;
相应的,所述启动控制器具体用于在自身与所述存储模块建立通信连接的情况下,从所述存储模块中读取所述ME固件程序以使所述ME运行,且在接收到电源按键信号后利用所述ME生成上电启动状态信号;
所述逻辑控制器具体用于接收系统的电源按键信号,并将所述电源按键信号发送所述启动控制器;判断在预设时间内是否接收到所述启动控制器返回的上电启动状态信号,若是,则控制系统硬件上电以启动系统;若否,则确定所述存储模块启动异常,并将所述存储模块切换至与所述修复控制器建立通信连接。
优选地,所述逻辑控制器包括:
与所述启动控制器连接的检测模块,用于在将所述电源按键信号发送至所述启动控制器后,若在预设时间内未接收到所述启动控制器返回的上电启动状态信号,则将状态信号超时结果发送至控制模块;
第一选通端与所述存储模块连接、第一传输端与所述启动控制器连接、第二传输端与所述修复控制器连接的选通模块;
与所述修复控制器内第一通信模块连接的第二通信模块;
与所述第二通信模块连接的状态寄存器;
分别与所述检测模块、所述第二通信模块、所述状态寄存器及所述选通模块连接的控制模块,用于在初始情况下控制所述选通模块默认将所述第一选通端与所述第一传输端连通;在接收到所述状态信号超时结果后确定所述存储模块启动异常,并将所述存储模块的启动异常情况及原因记录至所述状态寄存器;
相应的,所述修复控制器还用于通过通信模块轮询所述状态寄存器,并在查询到所述存储模块的启动异常情况时,通过与所述控制模块的通信控制所述选通模块将所述第一选通端切换至与所述第二传输端连通,以基于查询到的所述存储模块的启动异常原因自动对所述存储模块进行异常修复处理。
优选地,所述逻辑控制器还包括:
与所述控制模块连接的状态记忆模块,用于存储所述选通模块最近一次的选通状态;其中,所述状态记忆模块初始默认的所述选通模块的选通状态为:所述第一选通端与所述第一传输端连通;
所述控制模块还用于在系统AC上电且自身开始工作后,从所述状态记忆模块读取所述选通模块上次的选通状态,并控制所述选通模块保持上次的选通状态。
优选地,所述存储模块包括均存储有系统固件程序的主存储模块和备用存储模块;
相应的,所述逻辑控制器具体用于在初始情况下默认将所述主存储模块与所述启动控制器建立通信连接;若检测到所述启动控制器启动系统失败,则确定所述主存储模块启动异常,将所述主存储模块切换至与所述修复控制器建立通信连接,并将所述备用存储模块与所述启动控制器建立通信连接,以使所述启动控制器重启系统。
优选地,所述逻辑控制器还用于在将所述备用存储模块与所述启动控制器建立通信连接后,若检测到所述启动控制器重启系统失败,则确定所述备用存储模块启动异常;
相应的,所述修复控制器具体用于在所述主存储模块启动异常、所述备用存储模块正常工作时,自动对所述主存储模块进行异常修复处理;在所述主存储模块和所述备用存储模块均启动异常时,依次对所述主存储模块和所述备用存储模块进行异常修复处理。
优选地,对所述主存储模块进行异常修复处理的过程,包括:
判断所述主存储模块的供电电压是否正常;
若供电电压异常,则确定所述主存储模块的周围电路异常;
若供电电压正常,则确定所述主存储模块的周围电路正常,并判断是否可正常访问到所述主存储模块;
若不可正常访问到,则确定所述主存储模块损坏;
若可正常访问到,则确定所述主存储模块正常,并判断是否可读取到所述主存储模块内的ME固件程序;
若不可读取到,则确定所述主存储模块缺失所述ME固件程序,并将备份的ME固件程序重新刷写至所述主存储模块进行自动修复,且将所述主存储模块切回至与所述启动控制器重新建立通信连接;
若可读取到,则对所述主存储模块内的ME固件程序进行校验,若校验失败,则确定所述主存储模块内的ME固件程序损坏,并将备份的ME固件程序重新刷写至所述主存储模块进行自动修复,且将所述主存储模块切回至与所述启动控制器重新建立通信连接;
若所述主存储模块依旧启动异常,则确定所述ME自身故障。
优选地,依次对所述主存储模块和所述备用存储模块进行异常修复处理的过程,包括:
判断所述主存储模块的供电电压是否正常;
若供电电压异常,则确定所述主存储模块的周围电路异常;
若供电电压正常,则确定所述主存储模块的周围电路正常,并判断是否可正常访问到所述主存储模块;
若不可正常访问到,则确定所述主存储模块损坏;
若可正常访问到,则确定所述主存储模块正常,并判断是否可读取到所述主存储模块内的ME固件程序;
若不可读取到,则确定所述主存储模块缺失所述ME固件程序,将备份的ME固件程序重新刷写至所述主存储模块进行自动修复,并在刷写完成后控制所述逻辑控制器将所述主存储模块切回至与所述启动控制器建立通信连接,且控制所述启动控制器重新启动系统,判断系统是否能够正常重启;若系统能够正常重启,则直接重新将备份的ME固件程序重新刷写至所述备用存储模块中,并在刷写完成后控制所述逻辑控制器将所述备用存储模块切回至与所述启动控制器建立通信连接,且控制所述启动控制器重新启动系统,判断系统是否可以正常重启;若系统可以正常重启,则确定所述主存储模块和所述备用存储模块已修复;
若可读取到,则对所述主存储模块内的ME固件程序进行校验,若校验失败,则确定所述主存储模块内的ME固件程序损坏,并将备份的ME固件程序重新刷写至所述主存储模块进行自动修复,并在刷写完成后控制所述逻辑控制器将所述主存储模块切回至与所述启动控制器建立通信连接,且控制所述启动控制器重新启动系统,判断系统是否能够正常重启;若系统能够正常重启,则直接重新将备份的ME固件程序重新刷写至所述备用存储模块中,并在刷写完成后控制所述逻辑控制器将所述备用存储模块切回至与所述启动控制器建立通信连接,且控制所述启动控制器重新启动系统,判断系统是否可以正常重启;若系统可以正常重启,则确定所述主存储模块和所述备用存储模块已修复;
若系统重启异常,则确定所述ME自身故障。
优选地,所述系统固件程序还包括BIOS固件程序;所述启动控制器与所述修复控制器连接;
所述启动控制器还用于在系统上电完成后,从所述存储模块中读取所述BIOS固件程序以启动BIOS;
所述修复控制器还用于在所述启动控制器启动BIOS的过程中进行BIOS启动异常判断,并在所述BIOS因所述BIOS固件程序存在问题而启动异常时,自动对所述存储模块进行BIOS固件程序异常修复处理。
优选地,所述启动控制器为CPU;所述修复控制器为BMC;所述逻辑控制器为CPLD。
为解决上述技术问题,本发明还提供了一种服务器,包括上述任一种服务器固件自恢复系统。
本发明提供了一种服务器固件自恢复系统,包括存储模块、启动控制器、修复控制器及逻辑控制器,存储模块用于存储系统固件程序;启动控制器用于在自身与存储模块建立通信连接的情况下,从存储模块中读取系统固件程序以启动系统;修复控制器用于在存储模块启动异常且自身与存储模块建立通信连接的情况下,自动对存储模块进行异常修复处理;逻辑控制器用于在初始情况下默认将存储模块与启动控制器建立通信连接;若检测到启动控制器启动系统失败,则确定存储模块启动异常,并将存储模块切换至与修复控制器建立通信连接。可见,本申请可对启动异常的存储模块自动进行异常修复处理,从而减少了运维时间,提升了运维效率,减轻了运维工作压力。
本发明还提供了一种服务器,与上述固件自恢复系统具有相同的有益效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种服务器固件自恢复系统的结构示意图;
图2为本发明实施例提供的一种服务器固件自恢复系统的具体结构示意图;
图3为本发明实施例提供的第一种选通模块的连接结构示意图;
图4为本发明实施例提供的第二种选通模块的连接结构示意图;
图5为本发明实施例提供的第三种选通模块的连接结构示意图;
图6为本发明实施例提供的第四种选通模块的连接结构示意图;
图7为本发明实施例提供的第五种选通模块的连接结构示意图;
图8为本发明实施例提供的第六种选通模块的连接结构示意图。
具体实施方式
本发明的核心是提供一种服务器固件自恢复系统及服务器,可对启动异常的存储模块自动进行异常修复处理,从而减少了运维时间,提升了运维效率,减轻了运维工作压力。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,图1为本发明实施例提供的一种服务器固件自恢复系统的结构示意图。
该服务器固件自恢复系统包括:
存储模块1,用于存储系统固件程序;
启动控制器2,用于在自身与存储模块1建立通信连接的情况下,从存储模块1中读取系统固件程序以启动系统;
修复控制器3,用于在存储模块1启动异常且自身与存储模块1建立通信连接的情况下,自动对存储模块1进行异常修复处理;
分别与存储模块1、启动控制器2及修复控制器3连接的逻辑控制器4,用于在初始情况下默认将存储模块1与启动控制器2建立通信连接;若检测到启动控制器2启动系统失败,则确定存储模块1启动异常,并将存储模块1切换至与修复控制器3建立通信连接。
具体地,本申请的服务器固件自恢复系统包括存储模块1、启动控制器2、修复控制器3及逻辑控制器4,其工作原理为:
存储模块1用于存储系统固件程序。逻辑控制器4在初始情况下默认将存储模块1与启动控制器2建立通信连接。启动控制器2在自身与存储模块建立通信连接的情况下,从存储模块1中读取系统固件程序以启动系统。逻辑控制器4检测启动控制器2启动系统的情况,若检测到启动控制器2启动系统失败,则确定存储模块1启动异常,并将存储模块1切换至与修复控制器3建立通信连接。修复控制器3在存储模块1启动异常且自身与存储模块1建立通信连接的情况下,自动对存储模块1进行异常修复处理。
可见,本申请可对启动异常的存储模块1自动进行异常修复处理,从而减少了运维时间,提升了运维效率,减轻了运维工作压力。
在上述实施例的基础上:
请参照图2,图2为本发明实施例提供的一种服务器固件自恢复系统的具体结构示意图。
作为一种可选的实施例,启动控制器2包含ME;系统固件程序包括ME固件程序;
相应的,启动控制器2具体用于在自身与存储模块1建立通信连接的情况下,从存储模块1中读取ME固件程序以使ME运行,且在接收到电源按键信号后利用ME生成上电启动状态信号;
逻辑控制器4具体用于接收系统的电源按键信号,并将电源按键信号发送启动控制器2;判断在预设时间内是否接收到启动控制器2返回的上电启动状态信号,若是,则控制系统硬件上电以启动系统;若否,则确定存储模块1启动异常,并将存储模块1切换至与修复控制器3建立通信连接。
具体地,本申请的启动控制器2包含ME(Management Engine,管理引擎),系统固件程序包括ME固件程序。基于此,启动控制器2和逻辑控制器4的工作原理为:
当服务器系统的电源按键被按下或者服务器系统接收到远程发送的开机指令时,电源按键信号的电平发生变化,此时电源按键信号被发送到逻辑控制器4。逻辑控制器4在接收系统的电源按键信号后,将电源按键信号发送启动控制器2。启动控制器2在自身与存储模块1建立通信连接的情况下,从存储模块1中读取ME固件程序以使ME运行,且在接收到电源按键信号后,利用ME生成上电启动状态信号(S3状态信号)。
考虑到若启动控制器2的ME运行异常(等同于存储模块1启动异常),启动控制器2无法发出上电启动状态信号,对应现象就是系统无法开机,即启动控制器2启动系统失败,所以逻辑控制器4从将电源按键信号发送启动控制器2时开始计时,判断在计时时间到达预设时间T0(如5s)时,启动控制器2是否发出上电启动状态信号;若启动控制器2在规定时间T0内发出上电启动状态信号,则确定启动控制器2的ME运行正常;若启动控制器2在规定时间T0内未发出上电启动状态信号,则确定启动控制器2的ME运行异常,并确定存储模块1启动异常,将存储模块1切换至与修复控制器3建立通信连接,以由修复控制器3自动对存储模块1进行异常修复处理。
作为一种可选的实施例,逻辑控制器4包括:
与启动控制器2连接的检测模块41,用于在将电源按键信号发送至启动控制器2后,若在预设时间内未接收到启动控制器2返回的上电启动状态信号,则将状态信号超时结果发送至控制模块45;
第一选通端与存储模块1连接、第一传输端与启动控制器2连接、第二传输端与修复控制器3连接的选通模块42;
与修复控制器3内第一通信模块连接的第二通信模块43;
与第二通信模块43连接的状态寄存器44;
分别与检测模块41、第二通信模块43、状态寄存器44及选通模块42连接的控制模块45,用于在初始情况下控制选通模块42默认将第一选通端与第一传输端连通;在接收到状态信号超时结果后确定存储模块1启动异常,并将存储模块1的启动异常情况及原因记录至状态寄存器44;
相应的,修复控制器3还用于通过通信模块轮询状态寄存器44,并在查询到存储模块1的启动异常情况时,通过与控制模块45的通信控制选通模块42将第一选通端切换至与第二传输端连通,以基于查询到的存储模块1的启动异常原因自动对存储模块1进行异常修复处理。
具体地,本申请的逻辑控制器4包括检测模块41、选通模块42、第二通信模块43、状态寄存器44及控制模块45,其工作原理为:
控制模块45在初始情况下控制选通模块42默认将第一选通端与第一传输端连通,即在初始情况下默认将存储模块1与启动控制器2建立通信连接。当服务器系统的电源按键被按下或者服务器系统接收到远程发送的开机指令时,电源按键信号的电平发生变化,此时电源按键信号被发送到逻辑控制器4的控制模块45。控制模块45经检测模块41将电源按键信号发送至启动控制器2。启动控制器2在自身与存储模块1建立通信连接的情况下,从存储模块1中读取ME固件程序以使ME运行,且在接收到电源按键信号后,利用ME生成上电启动状态信号。
检测模块41从将电源按键信号发送启动控制器2时开始计时,判断在计时时间到达预设时间T0时,启动控制器2是否发出上电启动状态信号;若启动控制器2在规定时间T0内发出上电启动状态信号,则确定上电启动状态信号未超时;若启动控制器2在规定时间T0内未发出上电启动状态信号,则确定上电启动状态信号超时,并将状态信号超时结果发送至控制模块45。
控制模块45在接收到状态信号超时结果后,确定存储模块1启动异常,并将存储模块1的启动异常情况及其启动异常原因(如状态信号超时)记录至状态寄存器44。修复控制器3可通过通信模块轮询(如2s)状态寄存器44,并在从状态寄存器44中查询到存储模块1的启动异常情况时,通过与控制模块45的通信控制选通模块42将第一选通端切换至与第二传输端连通,即将存储模块1切换至与修复控制器3建立通信连接,以使修复控制器3基于从状态寄存器44中查询到的存储模块1的启动异常原因,自动对存储模块1进行异常修复处理。
作为一种可选的实施例,逻辑控制器4还包括:
与控制模块45连接的状态记忆模块46,用于存储选通模块42最近一次的选通状态;其中,状态记忆模块46初始默认的选通模块42的选通状态为:第一选通端与第一传输端连通;
控制模块45还用于在系统AC上电且自身开始工作后,从状态记忆模块46读取选通模块42上次的选通状态,并控制选通模块42保持上次的选通状态。
进一步地,本申请的逻辑控制器4还包括状态记忆模块46,其工作原理为:
状态记忆模块46用于存储选通模块42最近一次的选通状态。控制模块45在系统AC(交流电)上电后开始工作,首先从状态记忆模块46中读取选通模块42上次的选通状态,然后控制选通模块42保持上次的选通状态,从而恢复选通模块42在系统下电前的最后一次选通状态。需要说明的是,状态记忆模块46初始默认的选通模块42的选通状态为:第一选通端与第一传输端连通,使得控制模块45在初始情况下从状态记忆模块46中读取初始默认的选通模块42的选通状态,以控制选通模块42将第一选通端与第一传输端连通,即在初始情况下默认将存储模块1与启动控制器2建立通信连接。
此外,状态记忆模块46还可与第二通信模块43连接,以使修复控制器3可从状态记忆模块46中查询到选通模块42最近一次的选通状态。本申请的状态记忆模块46选用非易失性存储器,状态寄存器44选用易失性存储器。
作为一种可选的实施例,存储模块1包括均存储有系统固件程序的主存储模块11和备用存储模块12;
相应的,逻辑控制器4具体用于在初始情况下默认将主存储模块11与启动控制器2建立通信连接;若检测到启动控制器2启动系统失败,则确定主存储模块11启动异常,将主存储模块11切换至与修复控制器3建立通信连接,并将备用存储模块12与启动控制器2建立通信连接,以使启动控制器2重启系统。
具体地,本申请的存储模块有两个,分别是主存储模块11和备用存储模块12,其工作原理为:
逻辑控制器4在初始情况下默认将主存储模块11与启动控制器2建立通信连接。启动控制器2在自身与主存储模块11建立通信连接的情况下,从主存储模块11中读取系统固件程序以启动系统。逻辑控制器4检测启动控制器2启动系统的情况,若检测到启动控制器2启动系统失败,则确定主存储模块11启动异常,将主存储模块11切换至与修复控制器3建立通信连接(详细工作原理可参照上述实施例),并将备用存储模块12与启动控制器2建立通信连接,以使启动控制器2重启系统。
需要说明的是,本申请的选通模块42不会将两个存储模块同时选通到同一控制器或将同一存储模块同时选通到两个控制器。具体地,选通模块42包括两个选通端和两个传输端,第一选通端与主存储模块11(Flash 1)连接、第二选通端与备用存储模块12(Flash2)连接、第一传输端与启动控制器2连接、第二传输端与修复控制器3连接,则选通模块42有6种选通状态(不包括全部断开的状态):如图3所示,第一选通端与第一传输端连通,Flash1连接到启动控制器;如图4所示,第二选通端与第二传输端连通,Flash 2连接到修复控制器;如图5所示,第一选通端与第一传输端连通,Flash 1连接到启动控制器,且第二选通端与第二传输端连通,Flash 2连接到修复控制器;如图6所示,第二选通端与第一传输端连通,Flash 2连接到启动控制器;如图7所示,第一选通端与第二传输端连通,Flash 1连接到修复控制器;如图8所示,第一选通端与第二传输端连通,Flash 1连接到修复控制器,且第二选通端与第一传输端连通,Flash 2连接到启动控制器。其中,两个存储模块均采用SPI(Serial Peripheral Interface,串行外设接口)通信协议与所连接的控制器通信。
基于此,本申请可采用编码方式表示选通模块42的选通状态,以对选通模块42进行选通控制,比如,Flash 1连接到启动控制器对应编码001;Flash2连接到修复控制器对应编码010;正向全连接对应编码011;Flash 2连接到启动控制器对应编码101;Flash 1连接到修复控制器对应编码110;交叉全连接对应编码111。
作为一种可选的实施例,逻辑控制器4还用于在将备用存储模块12与启动控制器2建立通信连接后,若检测到启动控制器2重启系统失败,则确定备用存储模块12启动异常;
相应的,修复控制器3具体用于在主存储模块11启动异常、备用存储模块12正常工作时,自动对主存储模块11进行异常修复处理;在主存储模块11和备用存储模块12均启动异常时,依次对主存储模块11和备用存储模块12进行异常修复处理。
进一步地,逻辑控制器4在将备用存储模块12与启动控制器2建立通信连接以使启动控制器2重启系统后,若检测到启动控制器2重启系统失败,则确定备用存储模块12也启动异常。修复控制器3对启动异常的存储模块进行异常修复处理。
基于上述实施例,更具体地,控制模块45在初始情况下默认将主存储模块11与启动控制器2建立通信连接。控制模块45经检测模块41将电源按键信号发送至启动控制器2。启动控制器2在自身与主存储模块11建立通信连接的情况下,从主存储模块11中读取ME固件程序以使ME运行,且在接收到电源按键信号后,利用ME生成上电启动状态信号。检测模块41判断在预设时间内启动控制器2是否发出上电启动状态信号;若否,则确定上电启动状态信号超时,并将状态信号超时结果发送至控制模块45。控制模块45在接收到状态信号超时结果后,确定主存储模块11启动异常,并将主存储模块11的启动异常情况及其启动异常原因(如状态信号超时)记录至状态寄存器44。控制模块45根据状态寄存器44的记录判断另一个存储模块是否有异常记录,若没有,则控制选通模块42将另一个存储模块连接到启动控制器2重新启动系统;若有,说明两个存储模块都存在启动异常问题。
若修复控制器3正常工作,则修复控制器3轮询逻辑控制器4的状态寄存器44,当修复控制器3从状态寄存器44中查询到有存储模块启动异常时,读取状态寄存器44记录的启动异常原因,如果是状态信号超时,则将进行故障定位和尝试修复的操作:如果状态寄存器44中只查询到主存储模块11启动异常,说明当前备用存储模块12正常工作,为定位和修复主存储模块11的问题且不影响系统工作,则修复控制器3切换选通模块42的选通状态,从备用存储模块12连接启动控制器2的模式切换到反向全连接模式(备用存储模块12连接启动控制器2、主存储模块11连接修复控制器3,需要说明的是,模式切换期间,备用存储模块12连接启动控制器2不会闪断,不影响通信),以由修复控制器3修复主存储模块11,主存储模块11修复完成后,不进行系统重启,以避免影响业务。如果状态寄存器44中查询到两个存储模块均启动异常,则修复控制器3逐个修复存储模块,如果是固件问题,修复后尝试重启,验证修复是否成功。
若修复控制器3未正常工作,则由逻辑控制器4进行修复工作,逻辑控制器4会轮流重试每个存储模块多次(如3次),尝试开机。
作为一种可选的实施例,对主存储模块进行异常修复处理的过程,包括:
判断主存储模块的供电电压是否正常;
若供电电压异常,则确定主存储模块的周围电路异常;
若供电电压正常,则确定主存储模块的周围电路正常,并判断是否可正常访问到主存储模块;
若不可正常访问到,则确定主存储模块损坏;
若可正常访问到,则确定主存储模块正常,并判断是否可读取到主存储模块内的ME固件程序;
若不可读取到,则确定主存储模块缺失ME固件程序,并将备份的ME固件程序重新刷写至主存储模块进行自动修复,且将主存储模块切回至与启动控制器重新建立通信连接;
若可读取到,则对主存储模块内的ME固件程序进行校验,若校验失败,则确定主存储模块内的ME固件程序损坏,并将备份的ME固件程序重新刷写至主存储模块进行自动修复,且将主存储模块切回至与启动控制器重新建立通信连接;
若主存储模块依旧启动异常,则确定ME自身故障。
具体地,启动控制器的ME运行异常(等同于存储模块启动异常)的原因可能是存储模块异常、存储模块的周围电路异常、存储模块缺失ME固件程序、存储模块内ME固件程序损坏、ME自身故障等情况,导致启动控制器无法给出上电启动状态信号,进而系统无法进入上电模式。基于此,对启动异常的主存储模块进行异常修复处理的过程包括:1)先读取主存储模块的供电电压是否正常,如果供电电压正常,则确定主存储模块的周围电路正常;如果供电电压异常,则确定主存储模块的周围电路异常,判定为服务器主板故障,上报告警并明确更换主板(硬件故障无法自动恢复固件)。2)如果供电电压正常,则访问主存储模块,如果访问正常,则确定主存储模块正常,如果无法访问,则确定主存储模块损坏,判定为主板故障,上报告警并明确更换主板。3)如果主存储模块正常,判断是否可读取到主存储模块内的ME固件程序,如果读取不到主存储模块内的ME固件程序,则记录本次开机异常的原因为主存储模块缺失ME固件程序,将备份的ME固件程序重新刷写至主存储模块进行自动修复,并往逻辑控制器的状态寄存器中写入主存储模块已修复,由逻辑控制器清除主存储模块的相关异常记录,且将主存储模块切回至与启动控制器重新建立通信连接,不做重启避免影响业务,同时上报运维服务器,由运维人员决定在下次重启时是否恢复到主存储模块启动。4)如果读取到主存储模块内的ME固件程序,则对其内ME固件程序进行校验,计算相关的校验值,并与系统备份的ME固件程序的校验值进行对比,如果校验值一致则对比通过,判定为主存储模块内的ME固件程序未损坏;如果校验值不一致则对比失败,判定为主存储模块内的ME固件程序损坏,将备份的ME固件程序重新刷写至主存储模块进行自动修复,并往逻辑控制器的状态寄存器中写入主存储模块已修复,由逻辑控制器清除主存储模块的相关异常记录,且将主存储模块切回至与启动控制器重新建立通信连接,不做重启避免影响业务,同时上报运维服务器,由运维人员决定在下次重启时是否恢复到主存储模块启动。5)如果主存储模块依旧启动异常,则判定为ME自身故障,并上报告警,更换ME的相关部件/或更换主板。
作为一种可选的实施例,依次对主存储模块和备用存储模块进行异常修复处理的过程,包括:
判断主存储模块的供电电压是否正常;
若供电电压异常,则确定主存储模块的周围电路异常;
若供电电压正常,则确定主存储模块的周围电路正常,并判断是否可正常访问到主存储模块;
若不可正常访问到,则确定主存储模块损坏;
若可正常访问到,则确定主存储模块正常,并判断是否可读取到主存储模块内的ME固件程序;
若不可读取到,则确定主存储模块缺失ME固件程序,将备份的ME固件程序重新刷写至主存储模块进行自动修复,并在刷写完成后控制逻辑控制器将主存储模块切回至与启动控制器建立通信连接,且控制启动控制器重新启动系统,判断系统是否能够正常重启;若系统能够正常重启,则直接重新将备份的ME固件程序重新刷写至备用存储模块中,并在刷写完成后控制逻辑控制器将备用存储模块切回至与启动控制器建立通信连接,且控制启动控制器重新启动系统,判断系统是否可以正常重启;若系统可以正常重启,则确定主存储模块和备用存储模块已修复;
若可读取到,则对主存储模块内的ME固件程序进行校验,若校验失败,则确定主存储模块内的ME固件程序损坏,并将备份的ME固件程序重新刷写至主存储模块进行自动修复,并在刷写完成后控制逻辑控制器将主存储模块切回至与启动控制器建立通信连接,且控制启动控制器重新启动系统,判断系统是否能够正常重启;若系统能够正常重启,则直接重新将备份的ME固件程序重新刷写至备用存储模块中,并在刷写完成后控制逻辑控制器将备用存储模块切回至与启动控制器建立通信连接,且控制启动控制器重新启动系统,判断系统是否可以正常重启;若系统可以正常重启,则确定主存储模块和备用存储模块已修复;
若系统重启异常,则确定ME自身故障。
具体地,依次对主存储模块和备用存储模块进行异常修复处理的过程包括:1)先读取主存储模块的供电电压是否正常,如果供电电压正常,则确定主存储模块的周围电路正常;如果供电电压异常,则确定主存储模块的周围电路异常,判定为服务器主板故障,上报告警并明确更换主板。2)如果供电电压正常,则访问主存储模块,如果访问正常,则确定主存储模块正常,如果无法访问,则确定主存储模块损坏,判定为主板故障,上报告警并明确更换主板。3)如果主存储模块正常,判断是否可读取到主存储模块内的ME固件程序,如果读取不到主存储模块内的ME固件程序,则记录本次开机异常的原因为主存储模块缺失ME固件程序,将备份的ME固件程序重新刷写至主存储模块进行自动修复,并在刷写完成后控制逻辑控制器将主存储模块切回至与启动控制器建立通信连接,且控制启动控制器重新启动系统,判断系统是否能够正常重启;若系统能够正常重启,则直接重新将备份的ME固件程序重新刷写至备用存储模块中,并在刷写完成后控制逻辑控制器将备用存储模块切回至与启动控制器建立通信连接,且控制启动控制器重新启动系统,判断系统是否可以正常重启;若系统可以正常重启,则确定主存储模块和备用存储模块已修复,并往逻辑控制器的状态寄存器中写入主存储模块和备用存储模块已修复,由逻辑控制器清除主存储模块和备用存储模块的相关异常记录,且将主存储模块切回至与启动控制器重新建立通信连接,重启系统同时上报运维服务器,完成固件自动恢复。4)如果读取到主存储模块内的ME固件程序,则对其内ME固件程序进行校验,计算相关的校验值,并与系统备份的ME固件程序的校验值进行对比,如果校验值一致则对比通过,判定为主存储模块内的ME固件程序未损坏;如果校验值不一致则对比失败,判定为主存储模块内的ME固件程序损坏,将备份的ME固件程序重新刷写至主存储模块进行自动修复,并在刷写完成后控制逻辑控制器将主存储模块切回至与启动控制器建立通信连接,且控制启动控制器重新启动系统,判断系统是否能够正常重启;若系统能够正常重启,则直接重新将备份的ME固件程序重新刷写至备用存储模块中,并在刷写完成后控制逻辑控制器将备用存储模块切回至与启动控制器建立通信连接,且控制启动控制器重新启动系统,判断系统是否可以正常重启;若系统可以正常重启,则确定主存储模块和备用存储模块已修复,并往逻辑控制器的状态寄存器中写入主存储模块和备用存储模块已修复,由逻辑控制器清除主存储模块和备用存储模块的相关异常记录,且将主存储模块切回至与启动控制器重新建立通信连接,重启系统同时上报运维服务器,完成固件自动恢复。5)如果系统重启异常,则判定为ME自身故障,并上报告警,更换ME的相关部件/或更换主板。
作为一种可选的实施例,系统固件程序还包括BIOS固件程序;启动控制器2与修复控制器3连接;
启动控制器2还用于在系统上电完成后,从存储模块中读取BIOS固件程序以启动BIOS;
修复控制器3还用于在启动控制器2启动BIOS的过程中进行BIOS启动异常判断,并在BIOS因BIOS固件程序存在问题而启动异常时,自动对存储模块进行BIOS固件程序异常修复处理。
进一步地,本申请的系统固件程序还包括BIOS(Basic Input Output System,基本输入输出系统)固件程序,启动控制器2还与修复控制器3连接,其工作原理为:
修复控制器3在启动控制器2启动BIOS的过程中进行BIOS启动异常判断,并在BIOS因BIOS固件程序存在问题而启动异常时,自动对存储模块进行BIOS固件程序异常修复处理(与ME固件程序异常修复处理原理类似,本申请在此不再赘述)。
作为一种可选的实施例,启动控制器2为CPU;修复控制器3为BMC;逻辑控制器4为CPLD。
具体地,旧版本的服务器包含PCH(Platform Controller Hub,集成南桥),ME集成在PCH中;新版本的服务器去掉了PCH,将PCH的功能集成在CPU(中央处理器)中,ME也在CPU中。
本申请的启动控制器2选用CPU,修复控制器3选用BMC(Baseboard ManagementController,基板管理控制器);逻辑控制器4选用CPLD(Complex Programmable LogicDevice,复杂可编程逻辑器件)。
此外,本申请还可在web(全球广域网)页面上对选通模块的当前选通状态、系统当前使用哪个存储模块启动、两个存储模块的状态等进行直观显示,并有用户手动切换使用哪个存储模块启动的配置、手动切换选通模块的选通状态等功能。用户还可远程透过BMC查询选通模块的当前选通状态、系统当前使用哪个存储模块启动、两个存储模块的状态等API(Application Programming Interface,应用程序接口)命令,并有用户手动切换使用哪个存储模块启动的配置、手动切换选通模块的选通状态等API命令。
本申请还提供了一种服务器,包括上述任一种服务器固件自恢复系统。
本申请提供的服务器的介绍请参考上述固件自恢复系统的实施例,本申请在此不再赘述。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种服务器固件自恢复系统,其特征在于,包括:
存储模块,用于存储系统固件程序;
启动控制器,用于在自身与所述存储模块建立通信连接的情况下,从所述存储模块中读取所述系统固件程序以启动系统;
修复控制器,用于在所述存储模块启动异常且自身与所述存储模块建立通信连接的情况下,自动对所述存储模块进行异常修复处理;
分别与所述存储模块、所述启动控制器及所述修复控制器连接的逻辑控制器,用于在初始情况下默认将所述存储模块与所述启动控制器建立通信连接;若检测到所述启动控制器启动系统失败,则确定所述存储模块启动异常,并将所述存储模块切换至与所述修复控制器建立通信连接;
所述启动控制器包含管理引擎ME;所述系统固件程序包括管理引擎ME固件程序;
相应的,所述启动控制器具体用于在自身与所述存储模块建立通信连接的情况下,从所述存储模块中读取所述管理引擎ME固件程序以使所述管理引擎ME运行,且在接收到电源按键信号后利用所述管理引擎ME生成上电启动状态信号;
所述逻辑控制器具体用于接收系统的电源按键信号,并将所述电源按键信号发送所述启动控制器;判断在预设时间内是否接收到所述启动控制器返回的上电启动状态信号,若是,则控制系统硬件上电以启动系统;若否,则确定所述存储模块启动异常,并将所述存储模块切换至与所述修复控制器建立通信连接。
2.如权利要求1所述的服务器固件自恢复系统,其特征在于,所述逻辑控制器包括:
与所述启动控制器连接的检测模块,用于在将所述电源按键信号发送至所述启动控制器后,若在预设时间内未接收到所述启动控制器返回的上电启动状态信号,则将状态信号超时结果发送至控制模块;
第一选通端与所述存储模块连接、第一传输端与所述启动控制器连接、第二传输端与所述修复控制器连接的选通模块;
与所述修复控制器内第一通信模块连接的第二通信模块;
与所述第二通信模块连接的状态寄存器;
分别与所述检测模块、所述第二通信模块、所述状态寄存器及所述选通模块连接的控制模块,用于在初始情况下控制所述选通模块默认将所述第一选通端与所述第一传输端连通;在接收到所述状态信号超时结果后确定所述存储模块启动异常,并将所述存储模块的启动异常情况及原因记录至所述状态寄存器;
相应的,所述修复控制器还用于通过通信模块轮询所述状态寄存器,并在查询到所述存储模块的启动异常情况时,通过与所述控制模块的通信控制所述选通模块将所述第一选通端切换至与所述第二传输端连通,以基于查询到的所述存储模块的启动异常原因自动对所述存储模块进行异常修复处理。
3.如权利要求2所述的服务器固件自恢复系统,其特征在于,所述逻辑控制器还包括:
与所述控制模块连接的状态记忆模块,用于存储所述选通模块最近一次的选通状态;其中,所述状态记忆模块初始默认的所述选通模块的选通状态为:所述第一选通端与所述第一传输端连通;
所述控制模块还用于在系统AC上电且自身开始工作后,从所述状态记忆模块读取所述选通模块上次的选通状态,并控制所述选通模块保持上次的选通状态。
4.如权利要求3所述的服务器固件自恢复系统,其特征在于,所述存储模块包括均存储有系统固件程序的主存储模块和备用存储模块;
相应的,所述逻辑控制器具体用于在初始情况下默认将所述主存储模块与所述启动控制器建立通信连接;若检测到所述启动控制器启动系统失败,则确定所述主存储模块启动异常,将所述主存储模块切换至与所述修复控制器建立通信连接,并将所述备用存储模块与所述启动控制器建立通信连接,以使所述启动控制器重启系统。
5.如权利要求4所述的服务器固件自恢复系统,其特征在于,所述逻辑控制器还用于在将所述备用存储模块与所述启动控制器建立通信连接后,若检测到所述启动控制器重启系统失败,则确定所述备用存储模块启动异常;
相应的,所述修复控制器具体用于在所述主存储模块启动异常、所述备用存储模块正常工作时,自动对所述主存储模块进行异常修复处理;在所述主存储模块和所述备用存储模块均启动异常时,依次对所述主存储模块和所述备用存储模块进行异常修复处理。
6.如权利要求5所述的服务器固件自恢复系统,其特征在于,对所述主存储模块进行异常修复处理的过程,包括:
判断所述主存储模块的供电电压是否正常;
若供电电压异常,则确定所述主存储模块的周围电路异常;
若供电电压正常,则确定所述主存储模块的周围电路正常,并判断是否可正常访问到所述主存储模块;
若不可正常访问到,则确定所述主存储模块损坏;
若可正常访问到,则确定所述主存储模块正常,并判断是否可读取到所述主存储模块内的管理引擎ME固件程序;
若不可读取到,则确定所述主存储模块缺失所述管理引擎ME固件程序,并将备份的管理引擎ME固件程序重新刷写至所述主存储模块进行自动修复,且将所述主存储模块切回至与所述启动控制器重新建立通信连接;
若可读取到,则对所述主存储模块内的管理引擎ME固件程序进行校验,若校验失败,则确定所述主存储模块内的管理引擎ME固件程序损坏,并将备份的管理引擎ME固件程序重新刷写至所述主存储模块进行自动修复,且将所述主存储模块切回至与所述启动控制器重新建立通信连接;
若所述主存储模块依旧启动异常,则确定所述管理引擎ME自身故障。
7.如权利要求5所述的服务器固件自恢复系统,其特征在于,依次对所述主存储模块和所述备用存储模块进行异常修复处理的过程,包括:
判断所述主存储模块的供电电压是否正常;
若供电电压异常,则确定所述主存储模块的周围电路异常;
若供电电压正常,则确定所述主存储模块的周围电路正常,并判断是否可正常访问到所述主存储模块;
若不可正常访问到,则确定所述主存储模块损坏;
若可正常访问到,则确定所述主存储模块正常,并判断是否可读取到所述主存储模块内的管理引擎ME固件程序;
若不可读取到,则确定所述主存储模块缺失所述管理引擎ME固件程序,将备份的管理引擎ME固件程序重新刷写至所述主存储模块进行自动修复,并在刷写完成后控制所述逻辑控制器将所述主存储模块切回至与所述启动控制器建立通信连接,且控制所述启动控制器重新启动系统,判断系统是否能够正常重启;若系统能够正常重启,则直接重新将备份的管理引擎ME固件程序重新刷写至所述备用存储模块中,并在刷写完成后控制所述逻辑控制器将所述备用存储模块切回至与所述启动控制器建立通信连接,且控制所述启动控制器重新启动系统,判断系统是否可以正常重启;若系统可以正常重启,则确定所述主存储模块和所述备用存储模块已修复;
若可读取到,则对所述主存储模块内的管理引擎ME固件程序进行校验,若校验失败,则确定所述主存储模块内的管理引擎ME固件程序损坏,并将备份的管理引擎ME固件程序重新刷写至所述主存储模块进行自动修复,并在刷写完成后控制所述逻辑控制器将所述主存储模块切回至与所述启动控制器建立通信连接,且控制所述启动控制器重新启动系统,判断系统是否能够正常重启;若系统能够正常重启,则直接重新将备份的管理引擎ME固件程序重新刷写至所述备用存储模块中,并在刷写完成后控制所述逻辑控制器将所述备用存储模块切回至与所述启动控制器建立通信连接,且控制所述启动控制器重新启动系统,判断系统是否可以正常重启;若系统可以正常重启,则确定所述主存储模块和所述备用存储模块已修复;
若系统重启异常,则确定所述管理引擎ME自身故障。
8.如权利要求1所述的服务器固件自恢复系统,其特征在于,所述系统固件程序还包括BIOS固件程序;所述启动控制器与所述修复控制器连接;
所述启动控制器还用于在系统上电完成后,从所述存储模块中读取所述BIOS固件程序以启动BIOS;
所述修复控制器还用于在所述启动控制器启动BIOS的过程中进行BIOS启动异常判断,并在所述BIOS因所述BIOS固件程序存在问题而启动异常时,自动对所述存储模块进行BIOS固件程序异常修复处理。
9.如权利要求1所述的服务器固件自恢复系统,其特征在于,所述启动控制器为CPU;所述修复控制器为BMC;所述逻辑控制器为CPLD。
10.一种服务器,其特征在于,包括如权利要求1-9任一项所述的服务器固件自恢复系统。
CN202110326283.9A 2021-03-26 2021-03-26 一种服务器固件自恢复系统及服务器 Active CN113064757B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202110326283.9A CN113064757B (zh) 2021-03-26 2021-03-26 一种服务器固件自恢复系统及服务器
PCT/CN2021/121423 WO2022198973A1 (zh) 2021-03-26 2021-09-28 一种服务器固件自恢复系统及服务器
US18/024,809 US20230333621A1 (en) 2021-03-26 2021-09-28 Server firmware self-recovery system and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110326283.9A CN113064757B (zh) 2021-03-26 2021-03-26 一种服务器固件自恢复系统及服务器

Publications (2)

Publication Number Publication Date
CN113064757A CN113064757A (zh) 2021-07-02
CN113064757B true CN113064757B (zh) 2023-02-28

Family

ID=76564071

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110326283.9A Active CN113064757B (zh) 2021-03-26 2021-03-26 一种服务器固件自恢复系统及服务器

Country Status (3)

Country Link
US (1) US20230333621A1 (zh)
CN (1) CN113064757B (zh)
WO (1) WO2022198973A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113064757B (zh) * 2021-03-26 2023-02-28 山东英信计算机技术有限公司 一种服务器固件自恢复系统及服务器
CN113672306B (zh) * 2021-10-20 2022-02-18 苏州浪潮智能科技有限公司 服务器组件自检异常恢复方法、装置、系统及介质
CN115576747B (zh) * 2022-11-21 2023-06-16 苏州浪潮智能科技有限公司 基板管理控制器固件故障恢复方法、系统、设备及介质
CN116501409B (zh) * 2023-04-27 2024-05-07 合芯科技(苏州)有限公司 一种基于双Flash的服务器启动方法、计算机设备及存储介质
CN116302011B (zh) * 2023-05-24 2023-08-18 广东电网有限责任公司佛山供电局 一种电缆监测设备固件升级方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1523509A (zh) * 2002-12-27 2004-08-25 欧姆龙株式会社 可编程控制器单元及存储器自动复原方法
CN102200933A (zh) * 2010-03-23 2011-09-28 深圳华北工控股份有限公司 一种基于双SPI Flash的系统BIOS自动修复方法
CN103246579A (zh) * 2012-02-06 2013-08-14 鸿富锦精密工业(深圳)有限公司 基板管理控制器系统
CN108304299A (zh) * 2018-03-02 2018-07-20 郑州云海信息技术有限公司 服务器上电状态监测系统及方法、计算机存储器及设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4940967B2 (ja) * 2007-01-30 2012-05-30 富士通株式会社 ストレージシステム、ストレージ装置、ファームウェアの活性交換方法、ファームウェアの活性交換プログラム
CN101916216B (zh) * 2010-09-08 2012-11-07 神州数码网络(北京)有限公司 一种嵌入式操作系统中bootrom的自动修复装置和控制方法
CN102722423A (zh) * 2011-03-29 2012-10-10 比亚迪股份有限公司 一种便携式终端及其自行修复的方法
CN103246583A (zh) * 2012-02-09 2013-08-14 鸿富锦精密工业(深圳)有限公司 具有bmc固件修复功能的电子装置及修复方法
CN109446012A (zh) * 2018-11-01 2019-03-08 郑州云海信息技术有限公司 一种目标部件的上电启动方法、装置及设备
CN109992316A (zh) * 2019-04-10 2019-07-09 苏州浪潮智能科技有限公司 一种双bios控制系统及其控制方法、装置、设备、介质
CN111143132B (zh) * 2019-12-30 2022-06-10 山东英信计算机技术有限公司 一种bios恢复方法、装置、设备及可读存储介质
CN113064757B (zh) * 2021-03-26 2023-02-28 山东英信计算机技术有限公司 一种服务器固件自恢复系统及服务器

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1523509A (zh) * 2002-12-27 2004-08-25 欧姆龙株式会社 可编程控制器单元及存储器自动复原方法
CN102200933A (zh) * 2010-03-23 2011-09-28 深圳华北工控股份有限公司 一种基于双SPI Flash的系统BIOS自动修复方法
CN103246579A (zh) * 2012-02-06 2013-08-14 鸿富锦精密工业(深圳)有限公司 基板管理控制器系统
CN108304299A (zh) * 2018-03-02 2018-07-20 郑州云海信息技术有限公司 服务器上电状态监测系统及方法、计算机存储器及设备

Also Published As

Publication number Publication date
WO2022198973A1 (zh) 2022-09-29
CN113064757A (zh) 2021-07-02
US20230333621A1 (en) 2023-10-19

Similar Documents

Publication Publication Date Title
CN113064757B (zh) 一种服务器固件自恢复系统及服务器
US20240012706A1 (en) Method, system and apparatus for fault positioning in starting process of server
US7941658B2 (en) Computer system and method for updating program code
US20110099544A1 (en) Information processing apparatus and system setting method
CN111158599B (zh) 一种写数据的方法、装置、设备及存储介质
JP2014130585A (ja) ファームウェアアップグレードエラー検出および自動ロールバック
CN113360347B (zh) 一种服务器及其控制方法
CN110750309B (zh) 可远程控制电子设备的系统及方法
CN111143132B (zh) 一种bios恢复方法、装置、设备及可读存储介质
CN114116280B (zh) 交互式bmc自恢复方法、系统、终端及存储介质
US11073893B2 (en) System and method capable of remotely controlling electronic apparatus
CN111552592A (zh) 一种双备份启动方法及系统
CN116501409B (zh) 一种基于双Flash的服务器启动方法、计算机设备及存储介质
US6363493B1 (en) Method and apparatus for automatically reintegrating a module into a computer system
CN111917576A (zh) 存储集群的控制方法和装置
CN110928726A (zh) 一种基于看门狗及pxe的嵌入式系统自恢复方法及系统
TWI808362B (zh) 可自我監視及恢復作業系統運作的電腦系統及方法
CN114510374A (zh) 一种外设挂载失败自动恢复系统及方法
CN113835971A (zh) 一种服务器背板异常点灯的监测方法及相关组件
JP6911591B2 (ja) 情報処理装置、制御装置および情報処理装置の制御方法
JP2010198314A (ja) 情報管理装置
CN111623554B (zh) 一种热泵机组的异常掉电检测方法及其装置、和热泵机组
CN114655140B (zh) 一种车辆启动控制方法和相关装置
CN114218010B (zh) 一种数据备份与恢复方法、系统、终端设备及存储介质
CN113608603A (zh) 一种修复PCIe故障设备的方法、系统、设备和存储介质

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
GR01 Patent grant
GR01 Patent grant