CN114816565A - 固件加载方法、装置及电子设备 - Google Patents

固件加载方法、装置及电子设备 Download PDF

Info

Publication number
CN114816565A
CN114816565A CN202210364224.5A CN202210364224A CN114816565A CN 114816565 A CN114816565 A CN 114816565A CN 202210364224 A CN202210364224 A CN 202210364224A CN 114816565 A CN114816565 A CN 114816565A
Authority
CN
China
Prior art keywords
loaded
server
firmware
firmware file
file
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
Application number
CN202210364224.5A
Other languages
English (en)
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.)
Shenzhen Yunbao Intelligent Co ltd
Original Assignee
Shenzhen Yunbao Intelligent 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 Shenzhen Yunbao Intelligent Co ltd filed Critical Shenzhen Yunbao Intelligent Co ltd
Priority to CN202210364224.5A priority Critical patent/CN114816565A/zh
Publication of CN114816565A publication Critical patent/CN114816565A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请提供了一种固件加载方法、装置及电子设备。该方法在加载固件文件时,控制器与远程存储有待加载固件文件的指定服务器建立网络连接;从指定服务器中获取待加载固件文件,并将待加载固件文件存储在目标服务器的指定内存中;向AP发送待加载固件文件的存储地址,以使AP基于存储地址加载并运行所述待加载固件文件。可见,本申请提供的固件加载方法不会再将待加载固件文件刷写在FLASH芯片上,能够避免固件升级需要刷写FLASH芯片的刷写时间,降低服务器下电频率,提高固件升级效率。

Description

固件加载方法、装置及电子设备
技术领域
本申请涉及软件升级技术,特别涉及一种固件加载方法、装置及电子设备。
背景技术
随着全球数据中心的大规模扩张,通用标准化的固件越来越不能满足不同用户的业务需求。这就使得越来越多的用户根据自身的业务需求定制了专属固件。而这种专属固件在对数据中心需求巨大的大型互联网公司中尤为常见。
服务器在生命周期中需要频繁升级固件以增加功能或修复安全漏洞。如用于引导***启动的Uefi(Unified Extensible Firmware Interface,可扩展固件接口)固件,尤其是服务器Uefi固件,包含了各种定制功能及定制的板卡固件,这使得运行的Uefi固件文件的大小由原始的2Mb逐渐发展到现在的256Mb。在对该Uefi固件进行升级时,当前通常采用的技术方案为:在出厂阶段,统一将Uefi固件刷写在主板的FLASH芯片上。如果客户需要升级Uefi固件以修复问题或者添加新功能,则需要把服务器下电,通过带外工具把新版本Uefi固件文件刷写到主板Flash,再启动生效。然而,目前把Uefi固件存储于服务器主板的FLASH芯片的方案,随着Uefi固件功能需求的增多以及发展变化,待升级的Uefi固件文件越来越大,FLASH芯片容量也需要随之增大,从而导致成本增加。另外,把待升级的Uefi固件文件刷写到FLASH芯片的时间以及从FLASH芯片加载Uefi固件文件的时间也会随之变长,进而造成服务器下线时间也会过长。
发明内容
本申请提供了一种固件加载方法、装置及电子设备,无需把待升级的Uefi固件文件刷写到FLASH芯片,可以节省FLASH容量以及节省刷写和加载Uefi固件文件的时间。
本申请提供的技术方案包括:
第一方面,本申请实施例提供了一种固件升级方法,应用于目标服务器的控制器,该方法包括:
与远程的指定服务器建立网络连接;所述指定服务器内存储有待加载固件文件;
向指定服务器发送请求,以从所述指定服务器中获取所述待加载固件文件,接收并将所述待加载固件文件存储在所述目标服务器的指定内存中;
向所述AP发送所述待加载固件文件的存储地址,并对所述AP解复位,以使所述AP基于所述存储地址加载并运行所述待加载固件文件。
第二方面,本申请实施例又提供了一种固件加载方法,应用于存储有待加载固件文件的指定服务器,该方法包括:
与远程的目标服务器建立网络连接;
在所述网络连接成功之后,接收所述目标服务器发送的用于获取待加载固件文件的文件请求;
响应于所述文件请求,向所述目标服务器发送待加载固件文件,以使所述目标服务器从用于存储待加载固件文件的指定内存中加载以及运行所述待加载固件文件。
第三方面,本申请实施例提供了一种固件升级装置,其特征在于,应用于目标服务器中的控制器,该装置包括:
网络连接单元,用于与远程的指定服务器建立网络连接;所述指定服务器内存储有待加载固件文件;
文件获取单元,用于向指定服务器发送请求,以从所述指定服务器中获取所述待加载固件文件,接收并将所述待加载固件文件存储在所述目标服务器的指定内存中;
文件运行单元,用于向所述目标服务器中的应用处理器AP发送所述待加载固件文件的存储地址,并对所述AP解复位,以使所述AP基于所述存储地址加载并运行所述待加载固件文件。
第四方面,本申请实施例又提供了一种固件加载装置,应用于存储有待加载固件文件的指定服务器,该装置包括:
第二网络连接单元,用于与远程的目标服务器建立网络连接;
文件请求接收单元,用于在所述网络连接成功之后,接收所述目标服务器发送的用于获取待加载固件文件的文件请求;
文件发送单元,用于响应于所述文件请求,向所述目标服务器发送待加载固件文件,以使所述目标服务器从用于存储待加载固件文件的指定内存中加载以及运行所述待加载固件文件。
第五方面,本申请实施例提供了一种电子设备,包括处理器和计算机可读存储介质,所述计算机可读存储介质存储有能够被所述处理器执行的计算机可执行指令;所述处理器用于执行计算机可执行指令,以实现上述第一方面或第二方面提供的实施例所述的方法步骤。
第六方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面或第二方面提供的方法的步骤。
第七方面,本申请还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面或第二方面提供的方法的步骤。
由以上技术方案可以看出,本申请提供的固件加载方法在加载固件文件时,控制器与远程存储有待加载固件文件的指定服务器建立网络连接;从指定服务器中获取待加载固件文件,并将待加载固件文件存储在目标服务器的指定内存中;向AP发送待加载固件文件的存储地址,以使AP基于存储地址加载并运行所述待加载固件文件。可见,本申请实施例提供的技术方案不会再将待加载固件文件刷写在FLASH芯片上,能够避免固件升级需要刷写FLASH芯片的刷写时间,即使需要更新固件版本时,也不再需要通过带外工具对固件进行版本升级,而是通过从远程服务器上获取已更新的待加载固件文件并存储,以通过AP加载并运行该待加载固件文件,避免了因使用带外工具升级造成的服务器下电。基于此,本申请提供的技术方案能够降低服务器下电频率,提高固件升级效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本申请提供的一种固件加载方法的流程示意图;
图2为本申请提供的又一种固件加载方法的流程示意图;
图3为本申请提供的一种固件加载***的示意图;
图4为本申请提供的一种固件加载装置的示意图;
图5为本申请提供的又一种固件加载装置的示意图;
图6为本申请提供的一种电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
参见图1,图1为本申请提供的一种固件加载方法的流程图。该方法应用于目标服务器的控制器,该目标服务器为需要运行最新版本的固件的服务器,目标服务器还包括AP(应用处理器,Application Processor),AP是在低功耗CPU(Central Processing Unit,中央处理器)的基础上扩展音视频功能和专用接口的超大规模集成电路。若目标服务器使用的是AMD平台,则AMD平台上的控制器为MCU(微控制器,Microcontroller Unit),若目标服务器内使用的是ARM平台,则ARM平台上的控制器为SCP(***控制处理器,System ControllProcessor),基于此,作为一个实施例,控制器为SCP或MCU。
如图1所示,本申请提供的固件加载方法可包括以下步骤:
步骤101,与远程的指定服务器建立网络连接;所述指定服务器内存储有待加载固件文件。
本实施例中,指定服务器和目标服务器通过网络建立连接,以能够进行网络通信,使得目标服务器能够从指定服务器中随时获取待加载固件文件。
指定服务器内存储的待加载固件文件可以理解为升级后的固件文件,该升级后的固件文件可以为目标服务器定制的固件文件,也可以是对之前版本的固件进行修复的固件文件,本实施例对此并不限定。
另外,待加载固件文件可以是指定服务器下载获得,也可以通过移动介质搬运获得,本实施例对此也不进行限定。
需要说明的是,本实施例提供的待加载固件文件是放置在远程的指定服务器中,而不是如现有技术那样将固件刷写在FLASH芯片中,可以避免固件的文件大小受限于FLASH芯片容量的技术问题。
步骤102,向指定服务器发送请求,以从所述指定服务器中获取所述待加载固件文件,接收并将所述待加载固件文件存储在所述目标服务器的指定内存中。
在本实施例中,指定内存是事先设置好用于存储待加载固件文件的存储位置。
需要说明的是,目标服务器下电后,指定内存缓存的待加载固件文件会自动清除,以释放指定内存的缓存空间。
步骤103,向所述AP发送所述待加载固件文件的存储地址,以使所述AP基于所述存储地址加载并运行所述待加载固件文件。
控制器向AP发送待加载固件文件的存储地址之后,AP便能够依据存储地址从指定内存中加载缓存的待加固件文件,并运行待加固件文件内的程序,如该待加载固件文件为Uefi,以在运行Uefi的过程中,引导***开机。
需要说明的是,相对于读取FLASH芯片上刷写的固件文件的速度,本实施例直接通过网络连接从指定服务器获得待加载固件文件的速度更快,进而能够优化待加载固件的启动流程。
作为一个实施例,在步骤103中向AP发送待加载固件文件的存储地址时,还可以对AP解复位,以触发AP基于存储地址加载并运行待加载固件文件。
由以上技术方案可以看出,由以上技术方案可以看出,本申请提供的固件加载方法在加载固件文件时,控制器与远程存储有待加载固件文件的指定服务器建立网络连接;从指定服务器中获取待加载固件文件,并将待加载固件文件存储在目标服务器的指定内存中;向AP发送待加载固件文件的存储地址,以使AP基于存储地址加载并运行所述待加载固件文件。可见,本申请实施例提供的技术方案不会再将待加载固件文件刷写在FLASH芯片上,能够避免固件升级需要刷写FLASH芯片的刷写时间,即使需要更新固件版本时,也不再需要通过带外工具对固件进行版本升级,而是通过从远程服务器上获取已更新的待加载固件文件并存储,以通过AP加载并运行该待加载固件文件,避免了因使用带外工具升级造成的服务器下电。基于此,本申请提供的技术方案能够在无需扩充FLASH容量的前提下,降低服务器下电频率,提高固件升级效率。
作为一个实施例,指定服务器和目标服务器设有相同的网络服务协议,以使得指定服务器通过自身部署的网络服务协议和目标服务器部署的同一网络服务协议建立网络通信,该网络服务协议可以为https服务协议或者TFTP服务协议。实现步骤101的具体实现方式可以包括如下步骤A1~步骤A2:
步骤A1,初始化所述目标服务器中的网卡。
步骤A2,加载所述网卡的网络服务协议,以通过所述网络服务协议与远程的指定服务器建立网络连接。
本实施例中,加载网卡驱动,通过网卡驱动的网络服务协议与指定服务器建立网络连接,并进行网络通信。
作为另一个实施例,在步骤102中从所述指定服务器中获取所述待加载固件文件之后,还包括如下步骤B1~B3:
步骤B1,对所述待加载固件文件进行校验;若检验成功,则执行步骤B2,若校验失败,则步骤B3。
步骤B2,返回步骤102中将所述待加载固件文件存储在所述目标服务器的指定内存中的步骤。
本步骤只有在校验成功,才会将待加载固件缓存在指定内存中,以增加待加载固件文件运行的成功几率。
步骤B3,丢弃所述待加载固件文件,并向所述指定服务器发送用于标识校验所述待加载固件文件失败的提示信息。
本步骤在确定待加载固件文件校验不成功之后,丢弃获取的待加载固件文件,以避免占有内存空间,同时向指定服务器发出提示信息,以使得用户依据提示信息,能够及时维护该待加载固件文件,减小目标服务器获取并运行的时间。
参见图2,图2为本申请提供的又一种固件加载方法的流程图。该方法应用于存储有待加载固件文件的指定服务器。
如图2所示,本申请提供的固件加载方法可包括以下步骤:
步骤201,与远程的目标服务器建立网络连接。
本实施例中,目标服务器向指定服务器发送网络连接请求,目标服务器基于该网络连接请求与该目标服务器建立网络连接。
作为一个实施例,若网络连接成功,指定服务器向目标服务器发送用于表示连接成功的响应信息;若网络连接失败,指定服务器向目标服务器发送用于表示连接失败的提示信息,该提示信息可以包括连接失败的故障信息。
步骤202,接收所述目标服务器发送的用于获取待加载固件文件的文件请求。
本步骤中,目标服务器在确定与指定服务器网络连接成功之后,向指定服务器发送该文件请求。
步骤203,响应于所述文件请求,向所述目标服务器发送待加载固件文件,以使所述目标服务器从用于存储待加载固件文件的指定内存中加载以及运行所述待加载固件文件。
作为一个实施例,目标服务器可以按照步骤101~步骤103实现固件文件的加载。
由以上技术方案可以看出,由以上技术方案可以看出,本申请提供的固件加载方法在加载固件文件时,存储有待加载固件文件的指定服务器在与远程的目标服务器网络连接建立成功之后,接收目标服务器发送的用于获取待加载固件文件的文件请求;响应于所述文件请求,向目标服务器发送待加载固件文件,以使目标服务器从用于存储待加载固件文件的指定内存中加载以及运行待加载固件文件。可见,本申请实施例提供的技术方案直接从指定服务器中获取待加载固件文件,而不再将待加载固件文件刷写在FLASH芯片上,能够避免固件升级需要刷写FLASH芯片的刷写时间,即使需要更新固件版本时,也不再需要通过带外工具对固件进行版本升级,而是通过从远程服务器上获取已更新的待加载固件文件并存储,以加载并运行该待加载固件文件,避免了因使用带外工具升级造成的服务器下电。基于此,本申请提供的技术方案能够在无需扩充FLASH容量的前提下,降低服务器下电频率,提高固件升级效率。
作为一个实施例,指定服务器和目标服务器设有相同的网络服务协议,以使得指定服务器通过自身部署的网络服务协议和目标服务器部署的同一网络服务协议建立网络通信,该网络服务协议可以为https服务协议或者TFTP服务协议。实现步骤201的具体实现方式可以包括如下步骤C1~步骤C2:
步骤C1,接收所述目标服务器发送的用于建立网络连接的连接请求。
本实施例中,远程的目标服务器在需要加载固件文本时,向本指定服务器发送连接请求,该连接请求可以包括用于识别目标服务器唯一的标识,以使指定服务器依据该标识确定是该目标服务器发送的连接请求,以与该目标服务器建立网络连接。该标识可以为MAC地址标识或设备标识。
步骤C2,响应于所述连接请求,通过所述网络服务协议与远程的目标服务器建立网络连接。
本实施例中,通过指定服务器的网络服务协议与目标服务器建立网络连接,并进行网络通信。
作为一个实施例,本申请提供的固件加载方法还可包括:指定服务器可以更新并存储固件文件。固件的使用者可以通过在线或离线的方式在指定服务器上更新固件文件。
为了使得上述实施例更加容易理解,现举一示例进行具体描述,具体为:
如图3所示,待加载固件为Uefi固件文件,指定服务器200内存储有Uefi固件文件(图3中的Uefi),该Uefi可以为原有Uefi版本的更新,如通过对指定服务器中原有的Uefi修正或增加功能,以及,新版本的发布后获得的,也可以专门定制的专属固件,目标服务器100包括微控制器MCU、内存Memory和应用处理器AP,目标服务器100需要加载Uefi时,MCU初始化目标服务器100中的网卡;加载网卡的网络服务协议(图3示出的https),并向指定服务器200发送用于建立网络连接的连接请求,指定服务器200在接收目标服务器100发送的连接请求,并响应于该连接请求,通过网络服务协议与远程的目标服务器100建立网络连接,目标服务器100在确定网络连接成功之后,向指定服务器200发送用于获取Uefi固件文件的文件请求,指定服务器200响应于该文件请求,向所述目标服务器发送Uefi固件文件,目标服务器100的MCU将Uefi固件文件存储在内存的指定内存(图3中放置Uefi的区域)中,对Uefi固件文件进行校验;若校验失败,则丢弃Uefi固件文件,并向指定服务器200发送用于标识校验Uefi固件文件失败的提示信息。若检验成功,则将存放Uefi固件文件的指定内存的存储地址发送至AP,之后,对AP解复位,AP基于存储地址从指定内存中加载并运行Uefi固件文件,以引导***进入操作***OS。
下面对本申请提供的装置进行描述:
参见图4,图4为本申请提供的一种固件加载装置,应用于目标服务器100中的控制器101,该装置包括:
第一网络连接单元1011,用于与远程的指定服务器建立网络连接;所述指定服务器内存储有待加载固件文件;
文件获取单元1012,用于向指定服务器发送请求,以从所述指定服务器中获取所述待加载固件文件,接收并将所述待加载固件文件存储在所述目标服务器的指定内存中;
文件运行单元1013,用于向所述目标服务器中的应用处理器AP发送所述待加载固件文件的存储地址,以使所述AP基于所述存储地址加载并运行所述待加载固件文件。
作为一个实施例,所述指定服务器和所述目标服务器设有相同的网络服务协议,所述第一网络连接单元1011,具体用于:
初始化所述目标服务器中的网卡;
加载所述网卡的网络服务协议,以通过所述网络服务协议与远程的指定服务器建立网络连接。
作为一个实施例,所述网络服务协议为https服务协议或者TFTP服务协议。
作为一个实施例,该装置还包括:
校验单元,用于对所述待加载固件文件进行校验;若检验成功,则执行所述将所述待加载固件文件存储在所述目标服务器的指定内存中的步骤;若校验失败,则丢弃所述待加载固件文件,并向所述指定服务器发送用于标识校验所述待加载固件文件失败的提示信息。
作为一个实施例,该装置还包括:复位单元,用于对所述AP解复位。
由此可见,在本申请实施例的技术方案中,本申请提供的固件加载方法在加载固件文件时,控制器与远程存储有待加载固件文件的指定服务器建立网络连接;从指定服务器中获取待加载固件文件,并将待加载固件文件存储在目标服务器的指定内存中;向AP发送待加载固件文件的存储地址,以使AP基于存储地址加载并运行所述待加载固件文件。可见,本申请实施例提供的技术方案不会再将待加载固件文件刷写在FLASH芯片上,能够避免固件升级需要刷写FLASH芯片的刷写时间,即使需要更新固件版本时,也不再需要通过带外工具对固件进行版本升级,而是通过从远程服务器上获取已更新的待加载固件文件并存储,以通过AP加载并运行该待加载固件文件,避免了因使用带外工具升级造成的服务器下电。基于此,本申请提供的技术方案能够在无需扩充FLASH容量的前提下,降低服务器下电频率,提高固件升级效率。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
参见图5,图5为本申请还提供的一种固件加载装置,应用于存储有待加载固件文件的指定服务器200,该装置包括:
第二网络连接单元2011,用于与远程的目标服务器建立网络连接;
文件请求接收单元2012,用于接收所述目标服务器发送的用于获取待加载固件文件的文件请求;
文件发送单元2013,用于响应于所述文件请求,向所述目标服务器发送待加载固件文件,以使所述目标服务器从用于存储待加载固件文件的指定内存中加载以及运行所述待加载固件文件。
作为一个实施例,所述指定服务器和所述目标服务器设有相同的网络服务协议,所述第二网络连接单元2011,具体用于:
接收所述目标服务器发送的用于建立网络连接的连接请求;
响应于所述连接请求,通过所述网络服务协议与远程的目标服务器建立网络连接。
作为一个实施例,所述网络服务协议为https服务协议或者TFTP服务协议。
由以上技术方案可以看出,由以上技术方案可以看出,本申请提供的固件加载方法在加载固件文件时,存储有待加载固件文件的指定服务器在与远程的目标服务器网络连接建立成功之后,接收目标服务器发送的用于获取待加载固件文件的文件请求;响应于所述文件请求,向目标服务器发送待加载固件文件,以使目标服务器从用于存储待加载固件文件的指定内存中加载以及运行待加载固件文件。可见,本申请实施例提供的技术方案直接从指定服务器中获取待加载固件文件,而不再将待加载固件文件刷写在FLASH芯片上,能够避免固件升级需要刷写FLASH芯片的刷写时间,即使需要更新固件版本时,也不再需要通过带外工具对固件进行版本升级,而是通过从远程服务器上获取已更新的待加载固件文件并存储,以加载并运行该待加载固件文件,避免了因使用带外工具升级造成的服务器下电。基于此,本申请提供的技术方案能够在无需扩充FLASH容量的前提下,降低服务器下电频率,提高固件升级效率。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
本申请实施例提供的电子设备,从硬件层面而言,硬件架构示意图可以参见图6所示。包括:计算机可读存储介质和处理器,其中:所述计算机可读存储介质存储有能够被所述处理器执行的计算机可执行指令;所述处理器用于执行计算机可执行指令,以实现上述示例公开的固件加载方法。
本申请实施例提供的计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,所述计算机可执行指令促使所述处理器实现上述示例公开的固件加载方法。
本申请实施例还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述实施例所述的固件加载方法的步骤。
本实施例中,上述电子设备可以是目标服务器,也可以是指定服务器,如果上述电子设备是目标服务器,计算机可读存储介质存储的计算机可执行指令为实现上述针对应用于目标服务器的任一实施例公开的固件加载方法,相应地,处理器执行的计算机可执行指令也为实现上述针对应用于目标服务器的任一实施例公开的固件加载方法。
如果上述电子设备是指定服务器,计算机可读存储介质存储的计算机可执行指令为实现上述针对应用于指定服务器的任一实施例公开的固件加载方法,相应地,处理器执行的计算机可执行指令也为实现上述针对应用于指定服务器的任一实施例公开的固件加载方法。
作为一个实施例,多个电子设备构成一个服务器集群,多个电子设备中一个电子设备被指定为指定服务器,余下的电子设备被指定为实现上述任一方法实施例的目标服务器,上述指定服务器存储待加载固件文件。
每一目标服务器可以与指定服务器通过网络服务协议建立网络连接,以在需要最新的固件文件版本时,则从指定服务器中直接获取该待加载的固件文件。
针对集群中的各目标服务器而言,无需针对每一目标服务器进行逐一定制固件或修改固件,只需要在指定服务器中统一定制固件或是修改固件,相应地,新版本固件发布只需更新指定服务器上的一个固件文件。便可为各目标服务器提供最新版本的固件文件,节省升级所带来的不确定性,很大程度节省升级时间,保障集群的稳定性。
作为另外一个实施例,一个所述目标服务器被指定作为备用指定服务器,用于在所述指定服务器出现故障的情况下,所述备用指定服务器替换故障的指定服务器作为指定服务器,所述备选指定服务器存储有待加载固件文件。可见,本实施例提供的技术方案能够在指定服务器存在故障的情况下,备选备用指定服务器作为新的指定服务器继续为余下各目标服务器提供待加载固件文件,以进一步保障集群的稳定性。
这里,计算机可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,计算机可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个计算机,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (19)

1.一种固件加载方法,其特征在于,应用于目标服务器的控制器,所述目标服务器还包括应用处理器AP,该方法包括:
与远程的指定服务器建立网络连接;所述指定服务器内存储有待加载固件文件;
向指定服务器发送请求,以从所述指定服务器中获取所述待加载固件文件,接收并将所述待加载固件文件存储在所述目标服务器的指定内存中;
向所述目标服务器的应用处理器AP发送所述待加载固件文件的存储地址,以使所述AP基于所述存储地址加载并运行所述待加载固件文件。
2.根据权利要求1所述的方法,其特征在于,所述指定服务器和所述目标服务器设有相同的网络服务协议,所述与远程的指定服务器建立网络连接,包括:
初始化所述目标服务器中的网卡;
加载所述网卡的网络服务协议,以通过所述网络服务协议与远程的指定服务器建立网络连接。
3.根据权利要求2所述的方法,其特征在于,所述网络服务协议为https服务协议或者TFTP服务协议。
4.根据权利要求1所述的方法,其特征在于,在所述从所述指定服务器中获取所述待加载固件文件之后,还包括:
对所述待加载固件文件进行校验;
若检验成功,则执行所述将所述待加载固件文件存储在所述目标服务器的指定内存中的步骤;
若校验失败,则丢弃所述待加载固件文件,并向所述指定服务器发送用于标识校验所述待加载固件文件失败的提示信息。
5.一种固件加载方法,其特征在于,应用于存储有待加载固件文件的指定服务器,该方法包括:
与远程的目标服务器建立网络连接;
接收所述目标服务器发送的用于获取待加载固件文件的文件请求;
响应于所述文件请求,向所述目标服务器发送待加载固件文件,以使所述目标服务器从用于存储待加载固件文件的指定内存中加载以及运行所述待加载固件文件。
6.根据权利要求5所述的方法,其特征在于,所述指定服务器和所述目标服务器设有相同的网络服务协议,所述与远程的指定服务器建立网络连接,包括:
接收所述目标服务器发送的用于建立网络连接的连接请求;
响应于所述连接请求,通过所述网络服务协议与远程的目标服务器建立网络连接。
7.根据权利要求6所述的方法,其特征在于,所述网络服务协议为https服务协议或者TFTP服务协议。
8.根据权利要求5所述的方法,其特征在于,还包括:更新并存储固件文件。
9.一种固件加载装置,其特征在于,应用于目标服务器中的控制器,该装置包括:
第一网络连接单元,用于与远程的指定服务器建立网络连接;所述指定服务器内存储有待加载固件文件;
文件获取单元,用于向指定服务器发送请求,以从所述指定服务器中获取所述待加载固件文件,接收并将所述待加载固件文件存储在所述目标服务器的指定内存中;
文件运行单元,用于向所述目标服务器中的应用处理器AP发送所述待加载固件文件的存储地址,以使所述AP基于所述存储地址加载并运行所述待加载固件文件。
10.根据权利要求9所述的装置,其特征在于,所述指定服务器和所述目标服务器设有相同的网络服务协议,所述第一网络连接单元,具体用于:
初始化所述目标服务器中的网卡;
加载所述网卡的网络服务协议,以通过所述网络服务协议与远程的指定服务器建立网络连接。
11.根据权利要求10所述的装置,其特征在于,所述网络服务协议为https服务协议或者TFTP服务协议。
12.根据权利要求9所述的装置,其特征在于,该装置还包括:
校验单元,用于对所述待加载固件文件进行校验;若检验成功,则执行所述将所述待加载固件文件存储在所述目标服务器的指定内存中的步骤;若校验失败,则丢弃所述待加载固件文件,并向所述指定服务器发送用于标识校验所述待加载固件文件失败的提示信息。
13.一种固件加载装置,其特征在于,应用于存储有待加载固件文件的指定服务器,该装置包括:
第二网络连接单元,用于与远程的目标服务器建立网络连接;
文件请求接收单元,用于接收所述目标服务器发送的用于获取待加载固件文件的文件请求;
文件发送单元,用于响应于所述文件请求,向所述目标服务器发送待加载固件文件,以使所述目标服务器从用于存储待加载固件文件的指定内存中加载以及运行所述待加载固件文件。
14.根据权利要求13所述的装置,其特征在于,所述指定服务器和所述目标服务器设有相同的网络服务协议,所述第二网络连接单元,具体用于:
接收所述目标服务器发送的用于建立网络连接的连接请求;
响应于所述连接请求,通过所述网络服务协议与远程的目标服务器建立网络连接。
15.根据权利要求14所述的装置,其特征在于,所述网络服务协议为https服务协议或者TFTP服务协议。
16.根据权利要13所述的装置,其特征在于,还包括:更新单元,用于更新并存储固件文件。
17.一种电子设备,其特征在于,包括处理器和计算机可读存储介质,所述计算机可读存储介质存储有能够被所述处理器执行的计算机可执行指令;所述处理器用于执行计算机可执行指令,以实现权利要求1-4任一所述的方法步骤,或者,以实现权利要求5-8任一所述的方法步骤。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤,或者,所述计算机程序被处理器执行时实现权利要求5至8中任一项所述的方法的步骤。
19.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤,或者,该计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
CN202210364224.5A 2022-04-08 2022-04-08 固件加载方法、装置及电子设备 Pending CN114816565A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210364224.5A CN114816565A (zh) 2022-04-08 2022-04-08 固件加载方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210364224.5A CN114816565A (zh) 2022-04-08 2022-04-08 固件加载方法、装置及电子设备

Publications (1)

Publication Number Publication Date
CN114816565A true CN114816565A (zh) 2022-07-29

Family

ID=82534713

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210364224.5A Pending CN114816565A (zh) 2022-04-08 2022-04-08 固件加载方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN114816565A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110784348A (zh) * 2019-10-23 2020-02-11 迈普通信技术股份有限公司 一种固件升级方法、装置、电子设备及存储介质
CN112506539A (zh) * 2020-11-26 2021-03-16 浪潮电子信息产业股份有限公司 一种固件更新方法、装置及电子设备和存储介质
CN112615747A (zh) * 2020-12-23 2021-04-06 浪潮思科网络科技有限公司 一种网络设备自动部署配置的方法及装置
CN114124917A (zh) * 2021-11-23 2022-03-01 四川易智停科技有限公司 一种地锁固件远程升级方法、设备、***和介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110784348A (zh) * 2019-10-23 2020-02-11 迈普通信技术股份有限公司 一种固件升级方法、装置、电子设备及存储介质
CN112506539A (zh) * 2020-11-26 2021-03-16 浪潮电子信息产业股份有限公司 一种固件更新方法、装置及电子设备和存储介质
CN112615747A (zh) * 2020-12-23 2021-04-06 浪潮思科网络科技有限公司 一种网络设备自动部署配置的方法及装置
CN114124917A (zh) * 2021-11-23 2022-03-01 四川易智停科技有限公司 一种地锁固件远程升级方法、设备、***和介质

Similar Documents

Publication Publication Date Title
US9507604B2 (en) Boot method and boot system
CN103150231B (zh) 计算机开机的方法与计算机***
CN109634645B (zh) 固件升级方法及终端
US8539471B2 (en) Updating firmware of an electronic device
CN109032846A (zh) 设备远程备份升级方法、装置、计算机存储介质及设备
CN110825563B (zh) ***恢复方法、装置以及电子设备
CN105144074A (zh) 使用混合存储器设备的块存储
US11314665B2 (en) Information processing system, information processing device, BIOS updating method for information processing device, and BIOS updating program for information processing device
CN112612524A (zh) Linux***启动的方法、装置、设备及存储介质
EP3113018A1 (en) Method and apparatus for running version file
CN108170456B (zh) 电子设备的固件升级方法及装置
CN114780019A (zh) 电子设备的管理方法、装置、电子设备及存储介质
CN112860291B (zh) 固件升级方法及装置
TWI764454B (zh) 韌體損壞恢復技術
CN114675902B (zh) 基于嵌入式设备的软件版本的管理方法与管理装置
CN114816565A (zh) 固件加载方法、装置及电子设备
CN114995852A (zh) 一种设备升级方法、设备及计算机可读存储介质
CN113515291A (zh) 设备在线升级方法和装置
CN112667444A (zh) 一种***升级方法、存储介质及终端设备
CN103473081A (zh) 终端进行***升级后生效的方法及该终端
CN114968297A (zh) Ota升级方法、电子设备及芯片***
CN113190244A (zh) 无线模组升级的方法、装置、计算机设备和存储介质
CN110007973B (zh) 一种信息处理方法及电子设备
CN112905218B (zh) 一种固件升级方法、装置及设备
CN117112313B (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