一种固件升级方法及系统与流程

文档序号:17441259发布日期:2019-04-17 04:47阅读:190来源:国知局
一种固件升级方法及系统与流程

本发明涉及固件升级技术领域,尤其涉及一种固件升级方法及系统。



背景技术:

智能pos(pointofsale,销售终端)设备通常搭载安卓系统,智能pos设备一般布置在分散的网点,通常通过移动数据网络与后台专用服务器连接。移动数据网络的每月流量包有限,而智能pos设备因为固件升级等需求,智能pos设备需要按月不定期通过移动数据网络进行ota(over-the-airtechnology,空中下载技术)升级。

但是,发明人发现现有技术中至少存在如下问题:

由于智能pos设备网点多、固件升级频繁等原因,同一时间的各个网点的智能pos设备可能对应大量不同的待升级固件版本的固件升级,导致固件升级过程中的固件升级包的总体数量和体积都较大,需要占用较多的网络带宽和服务器存储资源,无法满足频繁的固定升级的需求。



技术实现要素:

有鉴于此,本发明的目的在于提出一种固件升级及系统,能够实现减少固件升级过程中的网络带宽和服务器存储资源的占用,满足频繁的固定升级的需求。

根据本发明的一个方面,提供一种固件升级方法,包括:

探知固件升级补丁,将所述探知到的固件升级补丁添加到固件升级补丁包;

将所述固件升级补丁包中的固件升级补丁按照补丁级从小到大顺序插入待升级补丁包列表;

根据所述经插入后的待升级补丁包列表,设置固件升级请求;

根据所述设置的固件升级请求,升级固件。

其中,所述探知固件升级补丁,将所述探知到的固件升级补丁添加到固件升级补丁包,包括:

探知是否存在固件升级请求,探知到存在固件升级请求时,读取关联所述固件升级请求的固件升级补丁的信息,根据所述读取到的固件升级补丁的信息,检验所述读取到的固件升级补丁的信息是否存在于当前需固件升级设备的补丁列表,检测到所述读取到的固件升级补丁的信息未存在于当前需固件升级设备的补丁列表时,探知所述固件升级补丁是否验签成功,探知到所述固件升级补丁是验签成功时,将所述探知到的固件升级补丁添加到固件升级补丁包。

其中,所述根据所述经插入后的待升级补丁包列表,设置固件升级请求,包括:

根据所述经插入后的待升级补丁包列表,检查所述探知到的固件升级补丁的补丁级是否全部插入到所述待升级补丁包列表,检查到所述探知到的固件升级补丁的补丁级已全部插入到所述待升级补丁包列表时,设置固件升级请求,检查到所述探知到的固件升级补丁的补丁级未全部插入到所述待升级补丁包列表时,将未插入到所述升级补丁包列表的固件升级补丁的补丁级按照补丁级从小到大顺序插入所述待升级补丁包列表,并设置固件升级请求。

其中,所述根据所述设置的固件升级请求,升级固件,包括:

根据所述设置的固件升级请求,按照所述待升级补丁包列表中固件升级补丁的补丁级从小到大的顺序,依所述顺序升级固件。

其中,在所述根据所述设置的固件升级请求,升级固件之后,还包括:

在固件升级完成后,删除关联所述固件升级过程的固件升级补丁。

根据本发明的另一个方面,提供一种固件升级系统,包括:

探知模块、插入模块、设置模块、升级模块;

所述探知模块,用于探知固件升级补丁,将所述探知到的固件升级补丁添加到固件升级补丁包;

所述插入模块,用于将所述固件升级补丁包中的固件升级补丁按照补丁级从小到大顺序插入待升级补丁包列表;

所述设置模块,用于根据所述经插入后的待升级补丁包列表,设置固件升级请求;

所述升级模块,用于根据所述设置的固件升级请求,升级固件。

其中,所述探知模块,具体用于:

探知是否存在固件升级请求,探知到存在固件升级请求时,读取关联所述固件升级请求的固件升级补丁的信息,根据所述读取到的固件升级补丁的信息,检验所述读取到的固件升级补丁的信息是否存在于当前需固件升级设备的补丁列表,检测到所述读取到的固件升级补丁的信息未存在于当前需固件升级设备的补丁列表时,探知所述固件升级补丁是否验签成功,探知到所述固件升级补丁是验签成功时,将所述探知到的固件升级补丁添加到固件升级补丁包。

其中,所述设置模块,具体用于:

根据所述经插入后的待升级补丁包列表,检查所述探知到的固件升级补丁的补丁级是否全部插入到所述待升级补丁包列表,检查到所述探知到的固件升级补丁的补丁级已全部插入到所述待升级补丁包列表时,设置固件升级请求,检查到所述探知到的固件升级补丁的补丁级未全部插入到所述待升级补丁包列表时,将未插入到所述升级补丁包列表的固件升级补丁的补丁级按照补丁级从小到大顺序插入所述待升级补丁包列表,并设置固件升级请求。

其中,所述升级模块,具体用于:

根据所述设置的固件升级请求,按照所述待升级补丁包列表中固件升级补丁的补丁级从小到大的顺序,依所述顺序升级固件。

其中,所述固件升级系统,还包括:

删除模块,用于在固件升级完成后,删除关联所述固件升级过程的固件升级补丁。

可以发现,以上方案,可以探知固件升级补丁,将该探知到的固件升级补丁添加到固件升级补丁包,可以将该固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表,可以根据该经插入后的待升级补丁包列表,设置固件升级请求,可以根据该设置的固件升级请求,升级固件,能够实现通过将固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表,并根据该经插入后的待升级补丁包列表,设置固件升级请求的方式,减少固件升级包的总体数量和体积,从而减少固件升级过程中的网络带宽和服务器存储资源的占用,进而满足频繁的固定升级的需求。

附图说明

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

图1是本发明固件升级方法一实施例的流程示意图;

图2是本发明固件升级方法另一实施例的流程示意图;

图3是本发明固件升级系统一实施例的结构示意图;

图4是本发明固件升级系统另一实施例的结构示意图;

图5是本发明固件升级系统又一实施例的结构示意图。

具体实施方式

下面结合附图和实施例,对本发明作进一步的详细描述。特别指出的是,以下实施例仅用于说明本发明,但不对本发明的范围进行限定。同样的,以下实施例仅为本发明的部分实施例而非全部实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明提供一种固件升级方法,能够实现减少固件升级过程中的网络带宽和服务器存储资源的占用,满足频繁的固定升级的需求。

请参见图1,图1是本发明固件升级方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本发明的方法并不以图1所示的流程顺序为限。如图1所示,该方法包括如下步骤:

s101:探知固件升级补丁,将该探知到的固件升级补丁添加到固件升级补丁包。

其中,该探知固件升级补丁,将该探知到的固件升级补丁添加到固件升级补丁包,可以包括:

探知是否存在固件升级请求,探知到存在固件升级请求时,读取关联该固件升级请求的固件升级补丁的信息,根据该读取到的固件升级补丁的信息,检验该读取到的固件升级补丁的信息是否存在于当前需固件升级设备的补丁列表,检测到该读取到的固件升级补丁的信息未存在于当前需固件升级设备的补丁列表时,探知该固件升级补丁是否验签成功,探知到该固件升级补丁是验签成功时,将该探知到的固件升级补丁添加到固件升级补丁包。

s102:将该固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表。

s103:根据该经插入后的待升级补丁包列表,设置固件升级请求。

其中,该根据该经插入后的待升级补丁包列表,设置固件升级请求,可以包括:

根据该经插入后的待升级补丁包列表,检查该探知到的固件升级补丁的补丁等级是否全部插入到该待升级补丁包列表,检查到该探知到的固件升级补丁的补丁等级已全部插入到该待升级补丁包列表时,设置固件升级请求,检查到该探知到的固件升级补丁的补丁等级未全部插入到该待升级补丁包列表时,将未插入到该升级补丁包列表的固件升级补丁的补丁等级按照补丁等级从小到大顺序插入该待升级补丁包列表,并设置固件升级请求。

s104:根据该设置的固件升级请求,升级固件。

其中,该根据该设置的固件升级请求,升级固件,可以包括:

根据该设置的固件升级请求,按照该待升级补丁包列表中固件升级补丁的补丁等级从小到大的顺序,依该顺序升级固件。

其中,在该根据该设置的固件升级请求,升级固件之后,还可以包括:

在固件升级完成后,删除关联该固件升级过程的固件升级补丁。

可以发现,在本实施例中,可以探知固件升级补丁,将该探知到的固件升级补丁添加到固件升级补丁包,可以将该固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表,可以根据该经插入后的待升级补丁包列表,设置固件升级请求,可以根据该设置的固件升级请求,升级固件,能够实现通过将固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表,并根据该经插入后的待升级补丁包列表,设置固件升级请求的方式,减少固件升级包的总体数量和体积,从而减少固件升级过程中的网络带宽和服务器存储资源的占用,进而满足频繁的固定升级的需求。

请参见图2,图2是本发明固件升级方法另一实施例的流程示意图。本实施例中,该方法包括以下步骤:

s201:探知固件升级补丁,将该探知到的固件升级补丁添加到固件升级补丁包。

可如上s101所述,在此不作赘述。

s202:将该固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表。

s203:根据该经插入后的待升级补丁包列表,设置固件升级请求。

可如上s103所述,在此不作赘述。

s204:根据该设置的固件升级请求,升级固件。

可如上s104所述,在此不作赘述。

s205:在固件升级完成后,删除关联该固件升级过程的固件升级补丁。

可以发现,在本实施例中,可以在固件升级完成后,删除关联该固件升级过程的固件升级补丁,能够实现使待升级补丁包和待升级补丁包列表保持在优化状态,进一步减少固件升级包的总体数量和体积,从而进一步减少固件升级过程中的网络带宽和服务器存储资源的占用,进而进一步满足频繁的固定升级的需求。

本发明还提供一种固件升级系统,能够实现减少固件升级过程中的网络带宽和服务器存储资源的占用,满足频繁的固定升级的需求。

请参见图3,图3是本发明固件升级系统一实施例的结构示意图。本实施例中,该固件升级系统30包括探知模块31、插入模块32、设置模块33、升级模块34。

该探知模块31,用于探知固件升级补丁,将该探知到的固件升级补丁添加到固件升级补丁包。

该插入模块32,用于将该固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表。

该设置模块33,用于根据该经插入后的待升级补丁包列表,设置固件升级请求。

该升级模块34,用于根据该设置的固件升级请求,升级固件。

可选地,该探知模块31,可以具体用于:

探知是否存在固件升级请求,探知到存在固件升级请求时,读取关联该固件升级请求的固件升级补丁的信息,根据该读取到的固件升级补丁的信息,检验该读取到的固件升级补丁的信息是否存在于当前需固件升级设备的补丁列表,检测到该读取到的固件升级补丁的信息未存在于当前需固件升级设备的补丁列表时,探知该固件升级补丁是否验签成功,探知到该固件升级补丁是验签成功时,将该探知到的固件升级补丁添加到固件升级补丁包。

可选地,该设置模块33,可以具体用于:

根据该经插入后的待升级补丁包列表,检查该探知到的固件升级补丁的补丁等级是否全部插入到该待升级补丁包列表,检查到该探知到的固件升级补丁的补丁等级已全部插入到该待升级补丁包列表时,设置固件升级请求,检查到该探知到的固件升级补丁的补丁等级未全部插入到该待升级补丁包列表时,将未插入到该升级补丁包列表的固件升级补丁的补丁等级按照补丁等级从小到大顺序插入该待升级补丁包列表,并设置固件升级请求。

可选地,该升级模块34,可以具体用于:

根据该设置的固件升级请求,按照该待升级补丁包列表中固件升级补丁的补丁等级从小到大的顺序,依该顺序升级固件。

请参见图4,图4是本发明固件升级系统另一实施例的结构示意图。区别于上一实施例,本实施例所述固件升级系统40还包括:删除模块41。

该删除模块41,用于在固件升级完成后,删除关联该固件升级过程的固件升级补丁。

该固件升级系统30/40的各个单元模块可分别执行上述方法实施例中对应步骤,故在此不对各单元模块进行赘述,详细请参见以上对应步骤的说明。

请参见图5,图5是本发明固件升级系统又一实施例的结构示意图。该固件升级系统的各个单元模块可以分别执行上述方法实施例中对应步骤。相关内容请参见上述方法中的详细说明,在此不再赘叙。

本实施例中,该固件升级包括:处理器51、与该处理器51耦合的存储器52、升级器53、删除器54。

该处理器51,用于探知固件升级补丁,将该探知到的固件升级补丁添加到固件升级补丁包,并将该固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表,以及根据该经插入后的待升级补丁包列表,设置固件升级请求。

该存储器52,用于存储操作系统、该处理器51执行的指令等。

该升级器53,用于根据该设置的固件升级请求,升级固件。

该删除器54,用于在固件升级完成后,删除关联该固件升级过程的固件升级补丁。

可选地,该处理器51,可以具体用于:

探知是否存在固件升级请求,探知到存在固件升级请求时,读取关联该固件升级请求的固件升级补丁的信息,根据该读取到的固件升级补丁的信息,检验该读取到的固件升级补丁的信息是否存在于当前需固件升级设备的补丁列表,检测到该读取到的固件升级补丁的信息未存在于当前需固件升级设备的补丁列表时,探知该固件升级补丁是否验签成功,探知到该固件升级补丁是验签成功时,将该探知到的固件升级补丁添加到固件升级补丁包。

可选地,该处理器51,可以具体用于:

根据该经插入后的待升级补丁包列表,检查该探知到的固件升级补丁的补丁等级是否全部插入到该待升级补丁包列表,检查到该探知到的固件升级补丁的补丁等级已全部插入到该待升级补丁包列表时,设置固件升级请求,检查到该探知到的固件升级补丁的补丁等级未全部插入到该待升级补丁包列表时,将未插入到该升级补丁包列表的固件升级补丁的补丁等级按照补丁等级从小到大顺序插入该待升级补丁包列表,并设置固件升级请求。

可选地,该升级器53,可以具体用于:

根据该设置的固件升级请求,按照该待升级补丁包列表中固件升级补丁的补丁等级从小到大的顺序,依该顺序升级固件。

可以发现,以上方案,可以探知固件升级补丁,将该探知到的固件升级补丁添加到固件升级补丁包,可以将该固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表,可以根据该经插入后的待升级补丁包列表,设置固件升级请求,可以根据该设置的固件升级请求,升级固件,能够实现通过将固件升级补丁包中的固件升级补丁按照补丁等级从小到大顺序插入待升级补丁包列表,并根据该经插入后的待升级补丁包列表,设置固件升级请求的方式,减少固件升级包的总体数量和体积,从而减少固件升级过程中的网络带宽和服务器存储资源的占用,进而满足频繁的固定升级的需求。

在本发明所提供的几个实施方式中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。

另外,在本发明各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的部分实施例,并非因此限制本发明的保护范围,凡是利用本发明说明书及附图内容所作的等效装置或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1