CN113760328A - 一种固件升级处理的方法、服务器系统和存储介质 - Google Patents

一种固件升级处理的方法、服务器系统和存储介质 Download PDF

Info

Publication number
CN113760328A
CN113760328A CN202110859566.XA CN202110859566A CN113760328A CN 113760328 A CN113760328 A CN 113760328A CN 202110859566 A CN202110859566 A CN 202110859566A CN 113760328 A CN113760328 A CN 113760328A
Authority
CN
China
Prior art keywords
flash memory
bmc
signal
cpld
upgrading
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.)
Granted
Application number
CN202110859566.XA
Other languages
English (en)
Other versions
CN113760328B (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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN202110859566.XA priority Critical patent/CN113760328B/zh
Publication of CN113760328A publication Critical patent/CN113760328A/zh
Application granted granted Critical
Publication of CN113760328B publication Critical patent/CN113760328B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种固件升级处理的方法、服务器系统和存储介质,服务器系统包括基板管理控制器BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件CPLD,第一闪存、第二闪存均保存原有固件文件。通过CPLD控制信号开关控制器将第一闪存的片选信号连接至BMC;通过BMC对第一闪存保存的原有固件文件进行升级;若通过CPLD检测到BMC的心跳信号异常,确定固件升级失败;通过CPLD控制信号开关控制器切换第二闪存的片选信号连接至BMC,并向BMC发送复位信号;控制BMC基于复位信号重新启动,对第二闪存保存的原有固件文件进行升级。该方式增加固件文件升级成功可能性,一定程度上避免对服务器系统正常工作的影响。

Description

一种固件升级处理的方法、服务器系统和存储介质
技术领域
本申请涉及固件升级技术领域,尤其涉及一种固件升级处理的方法、服务器系统和存储介质。
背景技术
现阶段,服务器系统中基板管理控制器(英文:Baseboard ManagementController,缩写:BMC)负责对整个系统的硬件部件进行管理,为了解决硬件部件的升级问题,一般是对闪存中保存的固件文件进行升级。
但是,发明人经过研究发现,在对固件文件升级过程中,存在升级失败的可能性,在固件文件升级失败后,需要断电关机更换主板,才能实现硬件部件的升级。该方式导致硬件部件的升级不够简单、便捷,给服务器系统的正常工作带来极大的不便。
发明内容
有鉴于此,本申请实施例提供一种固件升级处理的方法、服务器系统和存储介质,大大增加固件文件升级成功可能性,从而使得硬件部件的升级更加简单、便捷,一定程度上避免对服务器系统正常工作的影响。
第一方面,本申请实施例提供了一种固件升级处理的方法,所述服务器系统包括基板管理控制器BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件CPLD,所述第一闪存、所述第二闪存均保存原有固件文件,所述方法包括:
通过所述CPLD控制所述信号开关控制器将所述第一闪存的片选信号连接至所述BMC;
通过所述BMC对所述第一闪存保存的所述原有固件文件进行升级;
若通过所述CPLD检测到所述BMC的心跳信号异常,确定固件升级失败;通过所述CPLD控制所述信号开关控制器切换所述第二闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号;
控制所述BMC基于所述复位信号重新启动,对所述第二闪存保存的所述原有固件文件进行升级。
可选的,所述服务器系统还包括第三闪存,所述第三闪存保存所述原有固件文件;所述方法还包括:
若通过所述CPLD检测到所述BMC的心跳信号异常,确定固件升级失败;通过所述CPLD控制所述信号开关控制器切换所述第三闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号;
控制所述BMC基于所述复位信号重新启动,暂停对所述第三闪存保存的所述原有固件文件进行升级。
可选的,在所述对所述第二闪存保存的所述原有固件文件进行升级之后,所述方法还包括:
若通过CPLD检测到所述BMC的心跳信号正常,确定固件升级成功。
可选的,所述心跳信号正常包括所述心跳信号为预设频率的脉冲信号;所述心跳信号异常包括所述心跳信号为预设高电平信号或预设低电平信号。
可选的,在所述暂停对所述第三闪存保存的所述原有固件文件进行升级之后,所述方法还包括:
提示固件升级失败和下电维修信息。
第二方面,本申请实施例提供了一种服务器系统,所述系统包括:基板管理控制器BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件CPLD,所述第一闪存、所述第二闪存均保存原有固件文件;
所述CPLD,用于控制所述信号开关控制器将所述第一闪存的片选信号连接至所述BMC;
所述BMC,用于对所述第一闪存保存的所述原有固件文件进行升级;
所述CPLD,还用于若检测到所述BMC的心跳信号异常,确定固件升级失败;控制所述信号开关控制器切换所述第二闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号;
所述BMC,还用于基于所述复位信号重新启动,对所述第二闪存保存的所述原有固件文件进行升级。
可选的,所述服务器系统还包括第三闪存,所述第三闪存保存所述原有固件文件;
所述CPLD,还用于若检测到所述BMC的心跳信号异常,确定固件升级失败;控制所述信号开关控制器切换所述第三闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号;
所述BMC,还用于控制所述BMC基于所述复位信号重新启动,暂停对所述第三闪存保存的所述原有固件文件进行升级。
可选的,所述CPLD,还用于:
若检测到所述BMC的心跳信号正常,确定固件升级成功。
可选的,所述心跳信号正常包括所述心跳信号为预设频率的脉冲信号;所述心跳信号异常包括所述心跳信号为预设高电平信号或预设低电平信号。
第三方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行第一方面所述的固件升级处理的方法。
与现有技术相比,本申请至少具有以下优点:
采用本申请实施例的技术方案,服务器系统包括基板管理控制器BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件CPLD,第一闪存、第二闪存均保存原有固件文件。首先,通过CPLD控制信号开关控制器将第一闪存的片选信号连接至BMC;其次,通过BMC对第一闪存保存的原有固件文件进行升级;然后,若通过CPLD检测到BMC的心跳信号异常,确定固件升级失败;通过CPLD控制信号开关控制器切换第二闪存的片选信号连接至BMC,并向BMC发送复位信号;最后,控制BMC基于复位信号重新启动,对第二闪存保存的原有固件文件进行升级。可见,服务系统至少包括第一闪存、第二闪存,默认第一闪存的片选信号连接至BMC,在对第一闪存保存的原有固件文件升级失败的情况下,可以切换第二闪存的片选信号连接至BMC,对第二闪存保存的原有固件文件升级,该方式大大增加固件文件升级成功可能性,从而使得硬件部件的升级更加简单、便捷,一定程度上避免对服务器系统正常工作的影响。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例中一种应用场景所涉及的系统框架示意图;
图2为本申请实施例提供的一种固件升级处理的方法的流程示意图;
图3为本申请实施例提供的另一种固件升级处理的方法的流程示意图;
图4为本申请实施例提供的一种服务器系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
发明人经过研究发现,服务器系统中BMC对闪存中保存的固件文件进行升级的过程中,存在升级失败的可能性;例如,闪存异常导致升级失败。在固件文件升级失败后,需要断电关机更换主板,才能实现硬件部件的升级。该方式导致硬件部件的升级不够简单、便捷,给服务器系统的正常工作带来极大的不便。
为了解决这一问题,在本申请实施例中,服务器系统包括基板管理控制器BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件CPLD,第一闪存、第二闪存均保存原有固件文件。通过CPLD控制信号开关控制器将第一闪存的片选信号连接至BMC;通过BMC对第一闪存保存的原有固件文件进行升级;若通过CPLD检测到BMC的心跳信号异常,确定固件升级失败;通过CPLD控制信号开关控制器切换第二闪存的片选信号连接至BMC,并向BMC发送复位信号;控制BMC基于复位信号重新启动,对第二闪存保存的原有固件文件进行升级。可见,服务系统至少包括第一闪存、第二闪存,默认第一闪存的片选信号连接至BMC,在对第一闪存保存的原有固件文件升级失败的情况下,可以切换第二闪存的片选信号连接至BMC,对第二闪存保存的原有固件文件升级,该方式大大增加固件文件升级成功可能性,从而使得硬件部件的升级更加简单、便捷,一定程度上避免对服务器系统正常工作的影响。
举例来说,本申请实施例的场景之一,可以是应用到如图1所示的场景中。该场景中服务器系统100包括BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件(英文:Complex Programmable logic device,缩写:CPLD),第一闪存、第二闪存均保存原有固件文件;服务器系统100执行本申请实施例提供的固件升级处理的具体实施方式。
首先,在上述应用场景中,虽然将本申请实施例提供的实施方式的动作描述由服务器系统100执行;但是,本申请实施例在执行主体方面不受限制,只要执行了本申请实施例提供的实施方式所公开的动作即可。
其次,上述场景仅是本申请实施例提供的一个场景示例,本申请实施例并不限于此场景。
下面结合附图,通过实施例来详细说明本申请实施例中固件升级处理的方法、服务器系统和存储介质的具体实现方式。
示例性方法
参见图2,示出了本申请实施例中一种固件升级处理的方法的流程示意图。在本实施例中,服务器系统包括BMC、第一闪存、第二闪存、信号开关控制器和CPLD,所述第一闪存、所述第二闪存均保存原有固件文件,所述方法例如可以包括以下步骤:
步骤201:通过所述CPLD控制所述信号开关控制器将所述第一闪存的片选信号连接至所述BMC。
步骤202:通过所述BMC对所述第一闪存保存的所述原有固件文件进行升级。
步骤203:若通过所述CPLD检测到所述BMC的心跳信号异常,确定固件升级失败;通过所述CPLD控制所述信号开关控制器切换所述第二闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号。
步骤204:控制所述BMC基于所述复位信号重新启动,对所述第二闪存保存的所述原有固件文件进行升级。
在本申请实施例中,对闪存中保存的固件文件进行升级,为了解决存在升级失败的可能性,在固件文件升级失败后,需要断电关机更换主板,才能实现硬件部件的升级,导致硬件部件的升级不够简单、便捷,给服务器系统的正常工作带来极大不便的问题,在服务器系统中设置第一闪存和第二闪存两个闪存,第一闪存、所述第二闪存均保存原有固件文件,先对第一闪存中保存的原有固件文件进行升级,若固件升级失败,再对第二闪存中保存的原有固件文件进行升级。
其中,BMC上包括SPI信号接口,通过SPI信号总线与第一闪存、第二闪存连接,BMC上还包括片选信号接口,第一闪存、第二闪存的片选信号通过信号开关控制器连接到片选信号接口,BMC通过心跳信号与CPLD连接,CPLD通过控制信号连接信号开关控制器。
具体实施时,通过CPLD控制信号开关控制器,一般情况下,默认第一闪存的片选信号连接至BMC。则在固件升级时,先对第一闪存中保存的原有固件文件进行升级,即,第一次固件升级。此时,需要通过CPLD检测BMC是否正常工作,即,BMC的心跳信号正常还是异常,以此判断固件升级是否成功,在BMC的心跳信号异常时,表示固件升级失败,需要通过CPLD控制信号开关控制器将第一闪存的片选信号切换为第二闪存的片选信号连接至BMC,并向BMC发出复位信号,再对第二闪存中保存的原有固件文件进行升级,即,第二次固件升级。对于第一闪存异常(例如故障或损坏)导致第一次固件升级失败的情况而言,第二次固件升级成功的可能性大大增加。
当然,对第一闪存中保存的原有固件文件进行升级,通过CPLD检测到BMC的心跳信号正常时,表示固件升级成功。
此外,在本申请实施例中,在步骤204对第二闪存保存的原有固件文件进行升级之后,还可以通过CPLD检测到BMC的心跳信号正常还是异常,当BMC的心跳信号异常时,表示固件升级仍然失败,即,两次固件升级均失败,该情况下,为了能够确保服务器系统仍然正常工作,还可以预先在服务器系统中设置第三闪存,该第三闪存同理于第一闪存、第二闪存,保存有原有固件文件,以便通过CPLD控制信号开关控制器将第二闪存的片选信号切换为第三闪存的片选信号连接至BMC,并向BMC发送复位信号,以便控制BMC接收到复位信号后重新启动,并暂停对第三闪存保存的原有固件文件进行升级,等待后续有下电机会时再进行下电维修。因此,在本申请实施例一种可选的实施方式中,所述服务器系统还包括第三闪存,所述第三闪存保存所述原有固件文件;所述方法例如还可以包括以下步骤A-步骤B:
步骤A:若通过所述CPLD检测到所述BMC的心跳信号异常,确定固件升级失败;通过所述CPLD控制所述信号开关控制器切换所述第三闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号;
步骤B:控制所述BMC基于所述复位信号重新启动,暂停对所述第三闪存保存的所述原有固件文件进行升级。
其中,在暂停对第三闪存保存的原有固件文件进行升级实际情况是:之前的两次固件升级均失败,为了能够确保服务器系统仍然正常工作,暂时不对第三闪存保存的原有固件文件进行升级,但固件升级的需求仍然存在,该情况下需要提示用户固件升级失败和下电维修信息,以便用户明确固件升级并没有成功,需要在后续有下电机会时进行下电维修。因此,在本申请实施例一种可选的实施方式中,在所述步骤B之后,所述方法例如还可以包括步骤C:提示固件升级失败和下电维修信息。
当然,在本申请实施例中,对应于步骤A-步骤B,通过CPLD检测到BMC的心跳信号正常,表示固件升级成功,则可以确定第二次固件升级成功。因此,在本申请实施例一种可选的实施方式中,在所述步骤204之后,所述方法例如还可以包括以下步骤D:若通过CPLD检测到所述BMC的心跳信号正常,确定固件升级成功。
在本申请实施例中,通过CPLD检测到BMC的心跳信号正常,表示BMC处于正常工作的状态,BMC会向CPLD发出固定频率的脉冲信号,即,预设频率的脉冲信号。反之,通过CPLD检测到BMC的心跳信号异常,表示BMC处于非正常工作的状态,BMC会向CPLD发出固定的高电平信号或固定的电平信号,即,预设高电平信号或预设低电平信号。因此,在本申请实施例一种可选的实施方式中,所述心跳信号正常包括所述心跳信号为预设频率的脉冲信号;所述心跳信号异常包括所述心跳信号为预设高电平信号或预设低电平信号。
通过本实施例提供的各种实施方式,服务器系统包括基板管理控制器BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件CPLD,第一闪存、第二闪存均保存原有固件文件。首先,通过CPLD控制信号开关控制器将第一闪存的片选信号连接至BMC;其次,通过BMC对第一闪存保存的原有固件文件进行升级;然后,若通过CPLD检测到BMC的心跳信号异常,确定固件升级失败;通过CPLD控制信号开关控制器切换第二闪存的片选信号连接至BMC,并向BMC发送复位信号;最后,控制BMC基于复位信号重新启动,对第二闪存保存的原有固件文件进行升级。可见,服务系统至少包括第一闪存、第二闪存,默认第一闪存的片选信号连接至BMC,在对第一闪存保存的原有固件文件升级失败的情况下,可以切换第二闪存的片选信号连接至BMC,对第二闪存保存的原有固件文件升级,该方式大大增加固件文件升级成功可能性,从而使得硬件部件的升级更加简单、便捷,一定程度上避免对服务器系统正常工作的影响。
参见图3,示出了本申请实施例中另一种固件升级处理的方法的流程示意图。在本实施例中,服务器系统包括BMC、第一闪存、第二闪存、第三闪存、信号开关控制器和CPLD,所述第一闪存、所述第二闪存和所述第三闪存均保存原有固件文件,所述方法例如可以包括以下步骤:
步骤301:通过所述CPLD控制所述信号开关控制器将所述第一闪存的片选信号连接至所述BMC。
步骤302:通过所述BMC对所述第一闪存保存的所述原有固件文件进行升级。
步骤303:若通过所述CPLD检测到所述BMC的心跳信号异常,确定固件升级失败;通过所述CPLD控制所述信号开关控制器切换所述第二闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号。
步骤304:控制所述BMC基于所述复位信号重新启动,对所述第二闪存保存的所述原有固件文件进行升级。
步骤305:若通过所述CPLD检测到所述BMC的心跳信号异常,确定固件升级失败;通过所述CPLD控制所述信号开关控制器切换所述第三闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号。
步骤306:控制所述BMC基于所述复位信号重新启动,暂停对所述第三闪存保存的所述原有固件文件进行升级。
通过本实施例提供的各种实施方式,服务器系统包括基板管理控制器BMC、第一闪存、第二闪存、第三闪存、信号开关控制器和复杂可编程逻辑器件CPLD,第一闪存、第二闪存和第三闪存均保存原有固件文件。首先,通过CPLD控制信号开关控制器将第一闪存的片选信号连接至BMC;其次,通过BMC对第一闪存保存的原有固件文件进行升级;然后,若通过CPLD检测到BMC的心跳信号异常,确定固件升级失败;通过CPLD控制信号开关控制器切换第二闪存的片选信号连接至BMC,并向BMC发送复位信号;最后,控制BMC基于复位信号重新启动,对第二闪存保存的原有固件文件进行升级。可见,服务系统至少包括第一闪存、第二闪存和第三闪存,默认第一闪存的片选信号连接至BMC,在对第一闪存保存的原有固件文件升级失败的情况下,可以切换第二闪存的片选信号连接至BMC,对第二闪存保存的原有固件文件升级,该方式大大增加固件文件升级成功可能性,从而使得硬件部件的升级更加简单、便捷,一定程度上避免对服务器系统正常工作的影响。此外,在对第二闪存保存的原有固件文件升级失败的情况下,可以切换第三闪存的片选信号连接至BMC,暂停对第三闪存保存的原有固件文件升级,以便确保服务器系统仍然正常工作。
示例性系统
参见图4,示出了本申请实施例中一种服务器系统的结构示意图。在本实施例中,所述服务器系统例如具体可以包括:
BMC401、第一闪存402、第二闪存403、信号开关控制器404和CPLD405,所述第一闪存402、所述第二闪存403均保存原有固件文件;
所述CPLD405,用于控制所述信号开关控制器404将所述第一闪存402的片选信号连接至所述BMC401;
所述BMC401,用于对所述第一闪存402保存的所述原有固件文件进行升级;
所述CPLD405,还用于若检测到所述BMC401的心跳信号异常,确定固件升级失败;控制所述信号开关控制器404切换所述第二闪存403的片选信号连接至所述BMC401,并向所述BMC401发送复位信号;
所述BMC401,还用于基于所述复位信号重新启动,对所述第二闪存403保存的所述原有固件文件进行升级。
在本申请实施例一种可选的实施方式中,所述服务器系统还包括第三闪存,所述第三闪存保存所述原有固件文件;
所述CPLD405,还用于若检测到所述BMC401的心跳信号异常,确定固件升级失败;控制所述信号开关控制器404切换所述第三闪存的片选信号连接至所述BMC401,并向所述BMC401发送复位信号;
所述BMC401,还用于控制所述BMC401基于所述复位信号重新启动,暂停对所述第三闪存保存的所述原有固件文件进行升级。
在本申请实施例一种可选的实施方式中,所述CPLD405,还用于:
若检测到所述BMC401的心跳信号正常,确定固件升级成功。
在本申请实施例一种可选的实施方式中,所述心跳信号正常包括所述心跳信号为预设频率的脉冲信号;所述心跳信号异常包括所述心跳信号为预设高电平信号或预设低电平信号。
在本申请实施例一种可选的实施方式中,所述服务器系统还包括:
提示模块,用于提示固件升级失败和下电维修信息。
通过本实施例提供的各种实施方式,服务器系统包括基板管理控制器BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件CPLD,第一闪存、第二闪存均保存原有固件文件。首先,通过CPLD控制信号开关控制器将第一闪存的片选信号连接至BMC;其次,通过BMC对第一闪存保存的原有固件文件进行升级;然后,若通过CPLD检测到BMC的心跳信号异常,确定固件升级失败;通过CPLD控制信号开关控制器切换第二闪存的片选信号连接至BMC,并向BMC发送复位信号;最后,控制BMC基于复位信号重新启动,对第二闪存保存的原有固件文件进行升级。可见,服务系统至少包括第一闪存、第二闪存,默认第一闪存的片选信号连接至BMC,在对第一闪存保存的原有固件文件升级失败的情况下,可以切换第二闪存的片选信号连接至BMC,对第二闪存保存的原有固件文件升级,该方式大大增加固件文件升级成功可能性,从而使得硬件部件的升级更加简单、便捷,一定程度上避免对服务器系统正常工作的影响。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述,仅是本申请的较佳实施例而已,并非对本申请作任何形式上的限制。虽然本申请已以较佳实施例揭露如上,然而并非用以限定本申请。任何熟悉本领域的技术人员,在不脱离本申请技术方案范围情况下,都可利用上述揭示的方法和技术内容对本申请技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本申请技术方案的内容,依据本申请的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本申请技术方案保护的范围内。

Claims (10)

1.一种固件升级处理的方法,其特征在于,所述服务器系统包括基板管理控制器BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件CPLD,所述第一闪存、所述第二闪存均保存原有固件文件,所述方法包括:
通过所述CPLD控制所述信号开关控制器将所述第一闪存的片选信号连接至所述BMC;
通过所述BMC对所述第一闪存保存的所述原有固件文件进行升级;
若通过所述CPLD检测到所述BMC的心跳信号异常,确定固件升级失败;通过所述CPLD控制所述信号开关控制器切换所述第二闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号;
控制所述BMC基于所述复位信号重新启动,对所述第二闪存保存的所述原有固件文件进行升级。
2.根据权利要求1所述的方法,其特征在于,所述服务器系统还包括第三闪存,所述第三闪存保存所述原有固件文件;所述方法还包括:
若通过所述CPLD检测到所述BMC的心跳信号异常,确定固件升级失败;通过所述CPLD控制所述信号开关控制器切换所述第三闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号;
控制所述BMC基于所述复位信号重新启动,暂停对所述第三闪存保存的所述原有固件文件进行升级。
3.根据权利要求1所述的方法,其特征在于,在所述对所述第二闪存保存的所述原有固件文件进行升级之后,所述方法还包括:
若通过CPLD检测到所述BMC的心跳信号正常,确定固件升级成功。
4.根据权利要求3所述的方法,其特征在于,所述心跳信号正常包括所述心跳信号为预设频率的脉冲信号;所述心跳信号异常包括所述心跳信号为预设高电平信号或预设低电平信号。
5.根据权利要求2所述的方法,其特征在于,在所述暂停对所述第三闪存保存的所述原有固件文件进行升级之后,所述方法还包括:
提示固件升级失败和下电维修信息。
6.一种服务器系统,其特征在于,包括:基板管理控制器BMC、第一闪存、第二闪存、信号开关控制器和复杂可编程逻辑器件CPLD,所述第一闪存、所述第二闪存均保存原有固件文件;
所述CPLD,用于控制所述信号开关控制器将所述第一闪存的片选信号连接至所述BMC;
所述BMC,用于对所述第一闪存保存的所述原有固件文件进行升级;
所述CPLD,还用于若检测到所述BMC的心跳信号异常,确定固件升级失败;控制所述信号开关控制器切换所述第二闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号;
所述BMC,还用于基于所述复位信号重新启动,对所述第二闪存保存的所述原有固件文件进行升级。
7.根据权利要求6所述的系统,其特征在于,所述服务器系统还包括第三闪存,所述第三闪存保存所述原有固件文件;
所述CPLD,还用于若检测到所述BMC的心跳信号异常,确定固件升级失败;控制所述信号开关控制器切换所述第三闪存的片选信号连接至所述BMC,并向所述BMC发送复位信号;
所述BMC,还用于控制所述BMC基于所述复位信号重新启动,暂停对所述第三闪存保存的所述原有固件文件进行升级。
8.根据权利要求6所述的系统,其特征在于,所述CPLD,还用于:
若检测到所述BMC的心跳信号正常,确定固件升级成功。
9.根据权利要求8所述的系统,其特征在于,所述心跳信号正常包括所述心跳信号为预设频率的脉冲信号;所述心跳信号异常包括所述心跳信号为预设高电平信号或预设低电平信号。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行权利要求1-5任一项所述的固件升级处理的方法。
CN202110859566.XA 2021-07-28 2021-07-28 一种固件升级处理的方法、服务器系统和存储介质 Active CN113760328B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110859566.XA CN113760328B (zh) 2021-07-28 2021-07-28 一种固件升级处理的方法、服务器系统和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110859566.XA CN113760328B (zh) 2021-07-28 2021-07-28 一种固件升级处理的方法、服务器系统和存储介质

Publications (2)

Publication Number Publication Date
CN113760328A true CN113760328A (zh) 2021-12-07
CN113760328B CN113760328B (zh) 2023-09-15

Family

ID=78788080

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110859566.XA Active CN113760328B (zh) 2021-07-28 2021-07-28 一种固件升级处理的方法、服务器系统和存储介质

Country Status (1)

Country Link
CN (1) CN113760328B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104281479A (zh) * 2014-10-31 2015-01-14 深圳市大疆创新科技有限公司 一种固件升级方法及装置
US20180329862A1 (en) * 2017-05-11 2018-11-15 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for updating server firmware in server, and server
CN109446815A (zh) * 2018-09-30 2019-03-08 华为技术有限公司 基本输入输出系统固件的管理方法、装置和服务器
US10452386B1 (en) * 2018-07-19 2019-10-22 American Megatrends International, Llc Non-destructive update of discrete components of firmware
CN111399879A (zh) * 2020-03-12 2020-07-10 苏州浪潮智能科技有限公司 一种cpld的固件升级系统和方法
CN111966380A (zh) * 2020-08-21 2020-11-20 苏州浪潮智能科技有限公司 一种bmc固件升级方法、系统、终端及存储介质
CN112445739A (zh) * 2020-12-07 2021-03-05 苏州浪潮智能科技有限公司 一种支持bios无感升级的电路及方法
CN113094075A (zh) * 2021-03-02 2021-07-09 厦门亿联网络技术股份有限公司 固件升级方法、装置、终端设备及计算机可读存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104281479A (zh) * 2014-10-31 2015-01-14 深圳市大疆创新科技有限公司 一种固件升级方法及装置
US20180329862A1 (en) * 2017-05-11 2018-11-15 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for updating server firmware in server, and server
US10452386B1 (en) * 2018-07-19 2019-10-22 American Megatrends International, Llc Non-destructive update of discrete components of firmware
CN109446815A (zh) * 2018-09-30 2019-03-08 华为技术有限公司 基本输入输出系统固件的管理方法、装置和服务器
CN111399879A (zh) * 2020-03-12 2020-07-10 苏州浪潮智能科技有限公司 一种cpld的固件升级系统和方法
CN111966380A (zh) * 2020-08-21 2020-11-20 苏州浪潮智能科技有限公司 一种bmc固件升级方法、系统、终端及存储介质
CN112445739A (zh) * 2020-12-07 2021-03-05 苏州浪潮智能科技有限公司 一种支持bios无感升级的电路及方法
CN113094075A (zh) * 2021-03-02 2021-07-09 厦门亿联网络技术股份有限公司 固件升级方法、装置、终端设备及计算机可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
陈超: "基于CPLD的板卡硬件管理系统设计", 无线电电子学, pages 131 - 133 *
黄金棋;: "基于电子白板的中控MCU固件在线升级的研究及实现", 电子科学技术, no. 04, pages 24 - 27 *

Also Published As

Publication number Publication date
CN113760328B (zh) 2023-09-15

Similar Documents

Publication Publication Date Title
US6681390B2 (en) Upgrade of a program
EP1899814B1 (en) Firmware update for consumer electronic device
CN110209405B (zh) 分布式系统的自动化升级方法及装置
US20160132420A1 (en) Backup method, pre-testing method for environment updating and system thereof
US11314665B2 (en) Information processing system, information processing device, BIOS updating method for information processing device, and BIOS updating program for information processing device
KR100952585B1 (ko) 운영체제(os) 자동복구기능을 갖는 임베디드 시스템 및운영체제 자동복구 방법
CN103324495A (zh) 数据中心服务器开机管理方法及系统
EP2195741A1 (en) Firmware image update and management
CN111522562B (zh) 洗碗机软件烧录方法、装置及其设备
RU2602378C9 (ru) Стойка с множеством модулей управления стойкой и способ обновления встроенного программного обеспечения, используемого для стойки
CN109634638B (zh) 一种集群软件升级方法、装置、设备及介质
CN108874459B (zh) 基于虚拟化技术的快速启动方法和装置
CN108345464A (zh) 一种安卓系统的启动方法及安卓车机
CN111182033A (zh) 一种交换机还原的方法和设备
EP1983441A1 (en) Component information restoring method, component information managing method and electronic apparatus
CN106484442B (zh) 服务器系统及更新开机映像档的方法
CN111488246A (zh) 一种cpld升级方法、装置、电子设备和可读存储介质
CN113760328A (zh) 一种固件升级处理的方法、服务器系统和存储介质
RU2600101C1 (ru) Управляющий модуль узла и способ обновления встроенного программного обеспечения для этого управляющего модуля
CN111090537A (zh) 集群启动方法、装置、电子设备及可读存储介质
CN110069272A (zh) 逻辑文件升级的方法和电子设备
CN109428936B (zh) App的升级方法、装置、系统、电子设备及存储介质
CN115221092A (zh) Pci-e卡可分配的总线确定方法、装置、设备及存储介质
CN108052418A (zh) 一种用于刀片服务器的bios的备份或恢复的方法和装置
CN114237722A (zh) 一种系统的启动方法、装置、设备及工程车辆

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