掌桥专利:专业的专利平台
掌桥专利
首页

一种固件版本刷新方法、装置、系统和介质

文献发布时间:2023-06-19 10:41:48


一种固件版本刷新方法、装置、系统和介质

技术领域

本发明涉及服务器测试技术领域,特别是涉及一种固件版本刷新方法、装置、系统和计算机可读存储介质。

背景技术

随着信息化时代的高速发展,互联网,人工智能等技术覆盖了社会的各个领域,这对服务器的数据处理能力及网络数据的传输能力都有了更高的要求,要想实现上述目标则需要服务器上硬件和软件相辅相成,高度结合。

一个成熟的服务器产品必定会经历反复的消除故障(Debug)的测试阶段,在这测试过程中往往会经历一个很长的周期。在出现软件方面的BUG时,一般会通过升级固件版本的方式来解决,在进行交叉验证定位问题时,则需要对前后版本的固件(Firmware,FW)来回刷新。

如图1所示为传统方式中通过烧录器刷新固件版本的示意图,为了实现对基本输入输出系统(Basic Input Output System,BIOS)和基板管理控制器(Baseboard ManagerController,BMC)固件的刷新,需要将BIOS Flash和BMC Flash颗粒从服务器上取下安装在烧录器上,并且需要用USB转接线将烧录器和PC机连接,PC机上同时需要安装相应的烧录软件,然后将相应的固件版本文件进行刷新,最后将已刷新好的BIOS Flash及BMC Flash重新安装在服务器上。每一次固件升级都需要不同固件版本的源文件,额外的烧录器及对应软件资源,且必须断电操作,导致固件刷新方式较为繁琐、费时费力。

可见,如何提升固件版本刷新的处理效率,是本领域技术人员需要解决的问题。

发明内容

本发明实施例的目的是提供一种固件版本刷新方法、装置、系统和计算机可读存储介质,可以。

为解决上述技术问题,本发明实施例提供一种固件版本刷新方法,包括:

接收控制器传输的变更指令;

将所述变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将所述差异文件记录至存储部件;

当接收到所述控制器传输的刷新指令时,从所述存储部件中读取与所述刷写指令相匹配的目标差异文件;

按照所述刷新指令对应的文件类型,向所述控制器反馈目标文件,以便于所述控制器根据所述目标文件,完成对闪存部件的固件刷新操作;其中,所述目标文件根据所述目标差异文件得到。

可选地,所述将所述变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将所述差异文件记录至存储部件包括:

接收到所述控制器传输的BIOS Flash固件变更指令时,从所述控制器中获取所述BIOS Flash固件变更指令对应的固件版本,从BIOS Flash中获取原始固件版本;

将所述差异文件记录至所述存储部件的BIOS区域。

可选地,所述将所述变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将所述差异文件记录至存储部件包括:

接收到所述控制器传输的所述BMC Flash固件变更指令时,从所述控制器中获取所述BMC Flash固件变更指令对应的固件版本,从BMC Flash中获取原始固件版本;

将所述差异文件记录至所述存储部件的BMC区域。

可选地,当所述刷新指令为固件刷新指令时,所述按照所述刷新指令对应的文件类型,向所述控制器反馈目标文件包括:

从所述存储部件中读取与所述固件刷新指令相匹配的差异文件;

依据当前的固件版本以及所述差异文件,生成目标固件版本,并向所述控制器反馈所述目标固件版本,以便于所述控制器根据所述目标固件版本,完成对所述闪存部件的固件刷新操作。

可选地,当所述刷新指令为固件跨级刷新指令时,所述按照所述刷新指令对应的文件类型,向所述控制器反馈目标文件包括:

从所述存储部件中读取与所述固件跨级刷新指令相匹配的多个差异文件,并向所述控制器反馈所述多个差异文件,以便于所述控制器根据当前的固件版本以及所述多个差异文件,生成目标固件版本;依据所述目标固件版本,完成对所述闪存部件的固件刷新操作。

本发明实施例还提供了一种固件版本刷新装置,包括接收单元、对比单元、读取单元和反馈单元;

所述接收单元,用于接收控制器传输的变更指令;

所述对比单元,用于将所述变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将所述差异文件记录至存储部件;

所述读取单元,用于当接收到所述控制器传输的刷新指令时,从所述存储部件中读取与所述刷写指令相匹配的目标差异文件;

所述反馈单元,用于按照所述刷新指令对应的文件类型,向所述控制器反馈目标文件,以便于所述控制器根据所述目标文件,完成对闪存部件的固件刷新操作;其中,所述目标文件根据所述目标差异文件得到。

可选地,所述对比单元用于接收到所述控制器传输的BIOS Flash固件变更指令时,从所述控制器中获取所述BIOS Flash固件变更指令对应的固件版本,从BIOS Flash中获取原始固件版本;将所述差异文件记录至所述存储部件的BIOS区域。

可选地,所述对比单元用于接收到所述控制器传输的所述BMC Flash固件变更指令时,从所述控制器中获取所述BMC Flash固件变更指令对应的固件版本,从BMC Flash中获取原始固件版本;将所述差异文件记录至所述存储部件的BMC区域。

可选地,当所述刷新指令为固件刷新指令时,所述反馈单元用于从所述存储部件中读取与所述固件刷新指令相匹配的差异文件;依据当前的固件版本以及所述差异文件,生成目标固件版本,并向所述控制器反馈所述目标固件版本,以便于所述控制器根据所述目标固件版本,完成对所述闪存部件的固件刷新操作。

可选地,当所述刷新指令为固件跨级刷新指令时,所述反馈单元用于从所述存储部件中读取与所述固件跨级刷新指令相匹配的多个差异文件,并向所述控制器反馈所述多个差异文件,以便于所述控制器根据当前的固件版本以及所述多个差异文件,生成目标固件版本;依据所述目标固件版本,完成对所述闪存部件的固件刷新操作。

本发明实施例还提供了一种固件版本刷新系统,包括逻辑处理部件和存储部件;其中,所述逻辑处理部件分别与控制器以及闪存部件连接;

所述逻辑处理部件,用于接收所述控制器传输的变更指令,将所述变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将所述差异文件记录至所述存储部件;当接收到所述控制器传输的刷新指令时,从所述存储部件中读取与所述刷写指令相匹配的目标差异文件,并按照所述刷新指令对应的文件类型,向所述控制器反馈目标文件;其中,所述目标文件根据所述目标差异文件得到;

所述控制器与所述闪存部件连接,用于根据所述逻辑处理部件反馈的目标文件,完成对所述闪存部件的固件刷新操作。

可选地,所述闪存部件包括BIOS Flash和BMC Flash。

可选地,当所述变更指令为BIOS Flash固件变更指令时;相应的,所述逻辑处理部件,用于在接收到所述控制器传输的所述BIOS Flash固件变更指令时,从所述控制器中获取所述BIOS Flash固件变更指令对应的固件版本,从所述BIOS Flash中获取原始固件版本;并将所述差异文件记录至所述存储部件的BIOS区域;

当所述变更指令为BMC Flash固件变更指令时;相应的,所述逻辑处理部件,用于在接收到所述控制器传输的所述BMC Flash固件变更指令时,从所述控制器中获取所述BMCFlash固件变更指令对应的固件版本,从所述BMC Flash中获取原始固件版本,并将所述差异文件记录至所述存储部件的BMC区域。

可选地,当所述刷新指令为固件刷新指令时,所述逻辑处理部件,用于从所述存储部件中读取与所述固件刷新指令相匹配的差异文件,依据当前的固件版本以及所述差异文件,生成目标固件版本,并向所述控制器反馈所述目标固件版本;

相应的,所述控制器用于根据所述逻辑处理部件反馈的所述目标固件版本,完成对所述闪存部件的固件刷新操作。

可选地,当所述刷新指令为固件跨级刷新指令时,所述逻辑处理部件,用于从所述存储部件中读取与所述固件跨级刷新指令相匹配的多个差异文件,并向所述控制器反馈所述多个差异文件;

相应的,所述控制器用于接收所述逻辑处理部件反馈的多个差异文件,根据当前的固件版本以及所述多个差异文件,生成目标固件版本;依据所述目标固件版本,完成对所述闪存部件的固件刷新操作。

本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述固件版本刷新方法的步骤。

由上述技术方案可以看出,接收控制器传输的变更指令;将变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将差异文件记录至存储部件。差异文件中包含的是两个版本之间存在差异的数据,当接收到控制器传输的刷新指令时,从存储部件中读取与刷写指令相匹配的目标差异文件;按照刷新指令对应的文件类型,向控制器反馈目标文件,其中,目标文件是根据目标差异文件得到的文件。控制器根据目标文件,可以完成对闪存部件的固件刷新操作。在该技术方案中,通过记录不同版本之间的差异文件,根据刷写指令相匹配的目标差异文件便可以得到本次刷新所需的固件版本,固件刷新方式简单易操作,在实现闪存部件的固件刷新操作时不需要额外的烧录器,不需要针对每次刷新都生成新的固件版本,解决了在进行软件Debug测试中反复刷新固件版本费时费力的问题,有效的提升了固件版本刷新的处理效率。

附图说明

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为传统方式提供的一种通过烧录器刷新固件版本的示意图;

图2为本发明实施例提供的一种固件版本刷新方法的流程图;

图3为本发明实施例提供的一种固件版本刷新系统的硬件结构示意图;

图4为本发明实施例提供的一种基于差异文件实现固件版本刷新的示意图;

图5为本发明实施例提供的一种固件版本刷新装置的结构示意图;

图6为本发明实施例提供的一种固件版本刷新系统的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

接下来,详细介绍本发明实施例所提供的一种固件版本刷新方法。图2为本发明实施例提供的一种固件版本刷新方法的流程图,该方法包括:

S201:接收控制器传输的变更指令。

本发明实施例提供的固件版本刷新方法适用于对各种常用的闪存部件的固件升级。其中,闪存部件可以包括BIOS Flash和BMC Flash。为方便后续介绍,均以BIOS Flash和BMC Flash为例展开说明。

在实际应用中,可以设置逻辑处理部件和存储部件,通过逻辑处理部件与控制部件的交互,完成对闪存部件的固件刷新。其中,逻辑处理部件可以采用现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA),存储部件可以采用带电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM),控制器可以采用BMC。

当需要对固件进行变更时,控制器可以向逻辑处理部件发送变更指令。

S202:将变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将差异文件记录至存储部件。

为了降低每次执行固件刷新操作时生成固件花费的时间,可以在存储部件中存储不同版本的差异文件。差异文件中包含的是两个版本之间存在差异的数据。

在本发明实施例中,为了便于描述,可以将固件及其对应的版本简称为固件版本。

考虑到实际应用中,对于同一类闪存部件而言,最新一次的固件版本往往是在前一次的固件版本的基础上进行修改完善得到,因此,差异文件可以是相邻的两个固件版本之间的差异数据。

以三个不同版本的固件为例,包括第一固件版本、第二固件版本和第三固件版本,相应的,差异文件可以包括第二固件版本与第一固件版本之间的差异数据,以及第三固件版本与第二固件版本之间的差异数据。

对于不同的闪存部件,有其各自对应的固件版本。相应的,各闪存部件在存储部件中有其对应的存储区域。在本发明实施例中,可以将用于存储BIOS Flash的差异文件的区域称作BIOS区域,可以将用于存储BMC Flash的差异文件的区域称作BMC区域。

以BIOS Flash为例,当需要对BIOS Flash的固件进行变更时,控制器可以向逻辑处理部件发送BIOS Flash固件变更指令,逻辑处理部件接收到控制器发送的BIOS Flash固件变更指令后,可以从从控制器中获取BIOS Flash固件变更指令对应的固件版本,从BIOSFlash中获取原始固件版本;将差异文件记录至存储部件的BIOS区域。

以BMC Flash为例,当需要对BMC Flash的固件进行变更时,控制器可以向逻辑处理部件发送BMC Flash固件变更指令,逻辑处理部件接收到控制器发送的BMC Flash固件变更指令后,可以从控制器中获取BMC Flash固件变更指令对应的固件版本,从BMC Flash中获取原始固件版本;将差异文件记录至存储部件的BMC区域。

S203:当接收到控制器传输的刷新指令时,从存储部件中读取与刷写指令相匹配的目标差异文件。

刷新操作可以包括对闪存部件上的固件执行升级操作或者对闪存部件上的固件执行降级操作。

当控制器需要对闪存部件上的固件执行刷新操作时,逻辑处理部件可以获取到当前闪存部件上存储的固件版本,根据刷新指令所需升级或降级到的版本,可以确定出与刷写指令相匹配的目标差异文件。

例如,当前闪存部件上存储的固件版本为第一固件版本,刷新指令中指示固件需要升级至第二版本,此时逻辑处理部件可以从存储部件中读取出第二固件版本与第一固件版本所对应的差异文件,该差异文件即为目标差异文件。

S204:按照刷新指令对应的文件类型,向控制器反馈目标文件,以便于控制器根据目标文件,完成对闪存部件的固件刷新操作。

考虑到固件升级或降级时,可以直接升级或降级到相邻的一级,也可以跨越多个级别进行固件升级或降级。

控制器会向逻辑处理部件下发刷新指令,从而获取到固件升级或降低所需的目标文件。为了便于区分不同类型的刷新指令,在本发明实施例中,可以将直接升级或降级到相邻的一级操作对应的指令称作固件刷新指令,将跨越多个级别进行固件升级或降级操作对应的指令称作固件跨级刷新指令。

以刷新指令为固件刷新指令为例,逻辑处理部件可以从存储部件中读取与固件刷新指令相匹配的差异文件;依据当前的固件版本以及差异文件,生成目标固件版本,并向控制器反馈目标固件版本,以便于控制器根据目标固件版本,完成对闪存部件的固件刷新操作。

以刷新指令为固件跨级刷新指令为例,为了降低对逻辑处理部件的处理性能的要求,逻辑处理部件可以从存储部件中读取到与固件跨级刷新指令相匹配的多个差异文件后,直接将多个差异文件反馈值控制器,以便于控制器根据当前的固件版本以及多个差异文件,生成目标固件版本;依据目标固件版本,完成对闪存部件的固件刷新操作。

图3是以闪存部件包括BIOS Flash和BMC Flash,BMC作为控制器,FPGA作为逻辑处理部件,EEPROM作为存储部件为例的一种固件版本刷新系统的硬件结构示意图。假设,目前服务器的FW版本为1.0,现需要将FW版本升级至2.0,利用BMC Web界面在线升级进行操作,当BMC存在FW版本刷新请求时,BMC会提前将1.FW Change信号作为变更指令发送给FPGA芯片,FPGA芯片通过识别FW Change信号高低电平来判断是对BIOS Flash执行固件版本的变更、还是对BMC Flash执行固件版本的变更。在实际应用中,可以用低电平表示对BIOSFlash执行固件版本的变更,高电平表示对BMC Flash执行固件版本的变更。

FPGA通过1.FW Change信号的高低电平来选择选通的区域,若1.FW Change信号为低电平,则可以通过信号2.BIOS Select选通BIOS Flash,FPGA从BIOS Flash中获取1.0FW文件,反之,若1.FW Change信号为高电平,则可以通过信号3.BMC Select选通BMC Flash,FPGA从BMC Flash中获取1.0FW文件,同时FPGA通过信号8.FPGA I2C从BMC获取FW版本为2.0的文件,随后在FPGA芯片内部将这两个版本文件进行比较运算,将两个版本不同的内容以差异文件的形式进行保存。

在执行差异文件的保存时,FPGA可以通过1.FW Change信号的高低电平来选择差异文件的保存区域,若1.FW Change信号为低电平,将BIOS不同版本的差异文件通过信号4.BIOS Save保存至BIOS存储区域,反之若1.FW Change信号为高电平,将BMC不同版本的差异文件通过信号4.BMC Save保存至BMC存储区域。对比文件保存完成后,存储部件可以发送信号7.FW Compare Done信号给BMC,BMC完成FW2.0版本的刷新操作。

在本发明实施例中,每进行一个版本FW升级,都会生成一个差异文件,如图4为本发明实施例提供的一种基于差异文件实现固件版本刷新的示意图,假设固件版本包括四个版本,依次为1.0-2.0-3.0-4.0,会对应生成△T1,△T2,△T3三个差异文件,在进行FW版本的Debug测试中,若想要从4.0版本BIOS降低至3.0版本BIOS,BMC会向存储芯片发送信号6.FW Change Request激活该存储部件,并通过信号9.FW I2C将BIOS存储区域中的差异文件△T3传输给FPGA,FPGA根据对比文件将目前版本为4.0的修改至3.0,并通过8.FPGA I2C信号将修改后的3.0目标文件传递给BMC,最后通过BIOS SPI完成对BIOS Flash 3.0版本的FW刷新。

若需要将FW4.0的版本降至2.0,需要把存储部件中的两个差异文件△T2,△T3同时发送给BMC,BMC首先根据△T3的对比文件将4.0版本降至3.0,随后根据△T2的对比文件将3.0降至2.0,这样就实现了跨越版本的FW刷新。

同样的,对在已刷新过的FW中需要进行升级操作时,操作与上述方法类似,在此不再赘述。

由上述技术方案可以看出,接收控制器传输的变更指令;将变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将差异文件记录至存储部件。差异文件中包含的是两个版本之间存在差异的数据,当接收到控制器传输的刷新指令时,从存储部件中读取与刷写指令相匹配的目标差异文件;按照刷新指令对应的文件类型,向控制器反馈目标文件,其中,目标文件是根据目标差异文件得到的文件。控制器根据目标文件,可以完成对闪存部件的固件刷新操作。在该技术方案中,通过记录不同版本之间的差异文件,根据刷写指令相匹配的目标差异文件便可以得到本次刷新所需的固件版本,固件刷新方式简单易操作,在实现闪存部件的固件刷新操作时不需要额外的烧录器,不需要针对每次刷新都生成新的固件版本,解决了在进行软件Debug测试中反复刷新固件版本费时费力的问题,有效的提升了固件版本刷新的处理效率。

图5为本发明实施例提供的一种固件版本刷新装置的结构示意图,包括接收单元51、对比单元52、读取单元53和反馈单元54;

接收单元51,用于接收控制器传输的变更指令;

对比单元52,用于将变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将差异文件记录至存储部件;

读取单元53,用于当接收到控制器传输的刷新指令时,从存储部件中读取与刷写指令相匹配的目标差异文件;

反馈单元54,用于按照刷新指令对应的文件类型,向控制器反馈目标文件,以便于控制器根据目标文件,完成对闪存部件的固件刷新操作;其中,目标文件根据目标差异文件得到。

可选地,对比单元用于接收到控制器传输的BIOS Flash固件变更指令时,从控制器中获取BIOS Flash固件变更指令对应的固件版本,从BIOS Flash中获取原始固件版本;将差异文件记录至存储部件的BIOS区域。

可选地,对比单元用于接收到控制器传输的BMC Flash固件变更指令时,从控制器中获取BMC Flash固件变更指令对应的固件版本,从BMC Flash中获取原始固件版本;将差异文件记录至存储部件的BMC区域。

可选地,当刷新指令为固件刷新指令时,反馈单元用于从存储部件中读取与固件刷新指令相匹配的差异文件;依据当前的固件版本以及差异文件,生成目标固件版本,并向控制器反馈目标固件版本,以便于控制器根据目标固件版本,完成对闪存部件的固件刷新操作。

可选地,当刷新指令为固件跨级刷新指令时,反馈单元用于从存储部件中读取与固件跨级刷新指令相匹配的多个差异文件,并向控制器反馈多个差异文件,以便于控制器根据当前的固件版本以及多个差异文件,生成目标固件版本;依据目标固件版本,完成对闪存部件的固件刷新操作。

图5所对应实施例中特征的说明可以参见图2所对应实施例的相关说明,这里不再一一赘述。

由上述技术方案可以看出,接收控制器传输的变更指令;将变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将差异文件记录至存储部件。差异文件中包含的是两个版本之间存在差异的数据,当接收到控制器传输的刷新指令时,从存储部件中读取与刷写指令相匹配的目标差异文件;按照刷新指令对应的文件类型,向控制器反馈目标文件,其中,目标文件是根据目标差异文件得到的文件。控制器根据目标文件,可以完成对闪存部件的固件刷新操作。在该技术方案中,通过记录不同版本之间的差异文件,根据刷写指令相匹配的目标差异文件便可以得到本次刷新所需的固件版本,固件刷新方式简单易操作,在实现闪存部件的固件刷新操作时不需要额外的烧录器,不需要针对每次刷新都生成新的固件版本,解决了在进行软件Debug测试中反复刷新固件版本费时费力的问题,有效的提升了固件版本刷新的处理效率。

图6为本发明实施例提供的一种固件版本刷新系统60的结构示意图,包括逻辑处理部件661和存储部件62;其中,逻辑处理部件61分别与控制器63以及闪存部件66连接;

逻辑处理部件61,用于接收控制器63传输的变更指令,将变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将差异文件记录至存储部件62;当接收到控制器63传输的刷新指令时,从存储部件62中读取与刷写指令相匹配的目标差异文件,并按照刷新指令对应的文件类型,向控制器63反馈目标文件;其中,目标文件根据目标差异文件得到;

控制器63与闪存部件66连接,用于根据逻辑处理部件61反馈的目标文件,完成对闪存部件66的固件刷新操作。

可选地,闪存部件包括BIOS Flash和BMC Flash。

可选地,当变更指令为BIOS Flash固件变更指令时;相应的,逻辑处理部件,用于在接收到控制器传输的BIOS Flash固件变更指令时,从控制器中获取BIOS Flash固件变更指令对应的固件版本,从BIOS Flash中获取原始固件版本;并将差异文件记录至存储部件的BIOS区域;

当变更指令为BMC Flash固件变更指令时;相应的,逻辑处理部件,用于在接收到控制器传输的BMC Flash固件变更指令时,从控制器中获取BMC Flash固件变更指令对应的固件版本,从BMC Flash中获取原始固件版本,并将差异文件记录至存储部件的BMC区域。

可选地,当刷新指令为固件刷新指令时,逻辑处理部件,用于从存储部件中读取与固件刷新指令相匹配的差异文件,依据当前的固件版本以及差异文件,生成目标固件版本,并向控制器反馈目标固件版本;

相应的,控制器用于根据逻辑处理部件反馈的目标固件版本,完成对闪存部件的固件刷新操作。

可选地,当刷新指令为固件跨级刷新指令时,逻辑处理部件,用于从存储部件中读取与固件跨级刷新指令相匹配的多个差异文件,并向控制器反馈多个差异文件;

相应的,控制器用于接收逻辑处理部件反馈的多个差异文件,根据当前的固件版本以及多个差异文件,生成目标固件版本;依据目标固件版本,完成对闪存部件的固件刷新操作。

图6所对应实施例中特征的说明可以参见图2所对应实施例的相关说明,这里不再一一赘述。

由上述技术方案可以看出,接收控制器传输的变更指令;将变更指令对应的固件版本与原始固件版本进行对比,以得到差异文件,并将差异文件记录至存储部件。差异文件中包含的是两个版本之间存在差异的数据,当接收到控制器传输的刷新指令时,从存储部件中读取与刷写指令相匹配的目标差异文件;按照刷新指令对应的文件类型,向控制器反馈目标文件,其中,目标文件是根据目标差异文件得到的文件。控制器根据目标文件,可以完成对闪存部件的固件刷新操作。在该技术方案中,通过记录不同版本之间的差异文件,根据刷写指令相匹配的目标差异文件便可以得到本次刷新所需的固件版本,固件刷新方式简单易操作,在实现闪存部件的固件刷新操作时不需要额外的烧录器,不需要针对每次刷新都生成新的固件版本,解决了在进行软件Debug测试中反复刷新固件版本费时费力的问题,有效的提升了固件版本刷新的处理效率。

本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述任意实施例所述的固件版本刷新方法的步骤。

以上对本发明实施例所提供的一种固件版本刷新方法、装置、系统和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

相关技术
  • 一种固件版本刷新方法、装置、系统和介质
  • 一种固件刷新方法、系统、电子设备及计算机可读存储介质
技术分类

06120112641294