固件升级方法、装置、设备和存储介质制造方法及图纸

技术编号:28134217 阅读:25 留言:0更新日期:2021-04-19 12:01
本申请公开了一种固件升级方法、装置、设备和存储介质,涉及数据处理技术领域,尤其涉及物联网技术。该固件升级方法,应用于设置有固件分区和附属分区的计算设备;附属分区的存储空间小于固件分区的存储空间,包括:在固件分区中的系统程序运行过程中,基于固件分区设置的OTA模块向OTA服务器发送升级请求;若请求通过,则基于附属分区设置的OTA模块从OTA服务器中下载升级数据,并根据升级数据对固件分区中的原始固件进行刷写。本申请仅需附属分区中的OTA模块进行升级数据的下载和对原始固件的升级,无需附属分区存储完整的固件系统,因此对附属分区的存储空间要求较小,提高了固件升级方法在不同存储空间大小的计算设备的通用性。性。性。

【技术实现步骤摘要】
固件升级方法、装置、设备和存储介质


[0001]本申请涉及数据处理
,尤其涉及物联网技术。

技术介绍

[0002]计算设备例如嵌入式设备,在使用过程中,由于缺陷修复、兼容性问题、功能优化或功能新增等需求,通常存在需要对计算设备中的固件进行升级的情况。
[0003]现有技术通常会预先在计算设备中设置两个固件分区用于分别运行完整系统,并在需要升级时通过当前使用固件分区刷写另一固件分区,并在升级完成之后进行固件分区的切换使用。
[0004]然而上述方式仅适用于硬件资源丰富的计算设备,无法适用于硬件资源有限的计算设备,通用性较差。

技术实现思路

[0005]本申请提供了一种通用性更好的固件升级方法、装置、设备和存储介质。
[0006]根据本申请的一方面,提供了一种固件升级方法,应用于计算设备,所述计算设备设置有固件分区和附属分区;其中,所述附属分区的存储空间小于所述固件分区的存储空间,所述方法包括:
[0007]在所述固件分区中的系统程序运行过程中,基于所述固件分区设置的空中下载OTA模块向OTA服务器发送升级请求;
[0008]若请求通过,则基于所述附属分区设置的OTA模块从所述OTA服务器中下载升级数据,并根据所述升级数据对所述固件分区中的原始固件进行刷写。
[0009]根据本申请的另一方面,提供了还一种固件升级装置,配置于计算设备,所述计算设备设置有固件分区和附属分区;其中,所述附属分区的存储空间小于所述固件分区的存储空间,所述装置包括:
[0010]升级请求发送模块,用于在所述固件分区中的系统程序运行过程中,基于所述固件分区设置的空中下载OTA模块向OTA服务器发送升级请求;
[0011]固件升级模块,用于若请求通过,则基于所述附属分区设置的OTA模块从所述OTA服务器中下载升级数据,并根据所述升级数据对所述固件分区中的原始固件进行刷写。
[0012]根据本申请的另一方面,提供了还一种计算设备,包括:
[0013]至少一个处理器;以及
[0014]与所述至少一个处理器通信连接的存储器;其中,
[0015]所述存储器中设置有固件分区和附属分区;所述附属分区的存储空间小于所述固件分区的存储空间;
[0016]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请实施例提供的任意一种固件升级方法。
[0017]根据本申请的另一方面,提供了还一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行本申请实施例提供的任意一种固件升级方法。
[0018]根据本申请的另一方面,提供了还一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本申请实施例提供的任意一种固件升级方法。
[0019]应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0020]附图用于更好地理解本方案,不构成对本申请的限定。其中:
[0021]图1是本申请提供的一种现有的固件升级系统的结构示意图;
[0022]图2是本申请实施例提供的一种固件升级系统的结构示意图;
[0023]图3是本申请实施例提供的一种固件升级方法的流程图;
[0024]图4是本申请实施例提供的一种附件分区的结构示意图;
[0025]图5是本申请实施例提供的另一种固件升级系统的结构示意图;
[0026]图6是本申请实施例提供的另一种固件升级系统的结构示意图;
[0027]图7是本申请实施例提供的一种固件升级装置的结构图;
[0028]图8是用来实现本申请实施例的固件升级方法的电子设备的框图。
具体实施方式
[0029]以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0030]为了便于对本申请技术方案的理解,首先对现有技术中的固件升级方式进行详细说明。
[0031]参见图1所示的一种现有的固件升级系统的结构示意图,其中,该固件升级系统包括计算设备10和OTA服务器20。
[0032]在该计算设备10中包括固件分区11和固件分区12,并设置有BootLoader(引导装载程序)。
[0033]其中,固件分区11和固件分区12中分别设置有系统固件,使得两个固件分区均可以运行完整系统。该计算设备10的运行升级机制如下:
[0034]①
、计算设备10开启,BootLoader控制计算设备10进入当前启动分区固件分区11运行系统;
[0035]②
、系统运行过程中需要进行固件升级时,通过固件分区11中设置的OTA(On the Air,空中下载)模块向OTA服务器20发生发送升级请求,并在请求通过后下载升级数据;
[0036]③
、OTA模块根据升级数据对固件分区12中的原始固件进行刷写,以生成目标固件;
[0037]④
、固件升级完成后,BootLoader将下次启动分区切换至固件分区12,以在计算设
备10下次启动后,通过BootLoader控制计算设备10进入固件分区12运行系统。
[0038]上述方式能够保证固件升级过程的绝对可靠,但是需要计算设备能够完整的方向两个系统固件,因此其对计算设备硬件性能要求比较高。因此,上述固件升级方式无法适配硬件性能较低的计算设备,通用性较差。
[0039]本申请实施例提供的各固件升级方法和固件升级装置,适用于对计算设备,特别是硬件性能有限的嵌入式设备,进行固件升级的情况。本申请中的各固件升级方法,可以由固件升级装置执行,该固件升级装置可以通过软件和/或硬件实现,并具体配置于计算设备中。其中,计算设备可以是物联网设备,例如嵌入式设备。
[0040]以下将对固件升级方法相关内容进行解释说明。为了便于方案描述,首先对本申请所涉及的固件升级系统的系统结构进行详述。
[0041]参见图2所示的一种固件升级系统的结构示意图。该固件升级系统包括计算设备30和OTA服务器40。
[0042]其中,OTA服务器40用于为计算设备30提供升级数据。
[0043]其中,计算设备30包括固件分区31和附属分区32。
[0044]固件分区31中设置有原始固件,用于基于原始固件进行系统运行。固件分区31中还设置有OTA模块,用于在固件分区31中进行系统运行时,实现计算设备30与OTA服务器40之间的数据传输。
[0045]附属分区32的存储空间小于固本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种固件升级方法,应用于计算设备,所述计算设备设置有固件分区和附属分区;其中,所述附属分区的存储空间小于所述固件分区的存储空间,所述方法包括:在所述固件分区中的系统程序运行过程中,基于所述固件分区设置的空中下载OTA模块向OTA服务器发送升级请求;若请求通过,则基于所述附属分区设置的OTA模块从所述OTA服务器中下载升级数据,并根据所述升级数据对所述固件分区中的原始固件进行刷写。2.根据权利要求1所述的方法,其中,在所述根据所述升级数据对所述固件分区中的原始固件进行刷写之前,所述方法还包括:基于所述附属分区设置的OTA模块将所述原始固件进行压缩,得到备份固件,并存储于所述附属分区;所述方法还包括:接收回滚指令;响应于所述回滚指令,基于回滚代码逻辑,根据所述备份固件对所述固件分区中当前固件进行回滚。3.根据权利要求2所述的方法,其中,所述附属分区包括备份分区,用于存储所述备份固件;和/或,所述附属分区包括回滚分区,用于存储所述回滚代码逻辑。4.根据权利要求2所述的方法,其中,若对所述固件分区中的原始固件刷写失败或所述固件分区无法正常运行,则生成所述回滚指令。5.根据权利要求1所述的方法,其中,所述从所述OTA服务器中下载升级数据,并根据所述升级数据对所述固件分区中的原始固件进行刷写,包括:采用流式下载方式从所述OTA服务器中下载所述升级数据,并在下载过程中,基于所下载内容对所述固件分区中的所述原始固件进行刷写。6.根据权利要求2

5任一项所述的方法,其中,所述附属分区中的OTA模块集成设置于所述固件分区的OTA模块中。7.根据权利要求6所述的方法,其中,所述回滚代码逻辑为二进制可执行代码,且所述附属分区中未设置所述系统程序。8.一种固件升级装置,配置于计算设备,所述计算设备设置有固件分区和附属分区;其中,所述附属分区的存储空间小于所述固件分区的存储空间,所述装置包括:升级请求发送模块,用于在所述固件分区中的系统程序运行过程中,基于所述固件分区设置的空中下载OTA模块向OTA服务器发送升级请求;固件升级模块,用于若请求通过,则基于所述附属分区设置的OTA模块从所述OTA服务器中下载升级数据,并根据所述升级数据对所述固件分区中的原始...

【专利技术属性】
技术研发人员:王泰格
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1