CN111984298B - 一种闪存中的程序升级区、程序升级方法及系统 - Google Patents

一种闪存中的程序升级区、程序升级方法及系统 Download PDF

Info

Publication number
CN111984298B
CN111984298B CN202010692401.3A CN202010692401A CN111984298B CN 111984298 B CN111984298 B CN 111984298B CN 202010692401 A CN202010692401 A CN 202010692401A CN 111984298 B CN111984298 B CN 111984298B
Authority
CN
China
Prior art keywords
upgrade
program
package data
upgrade package
area
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.)
Active
Application number
CN202010692401.3A
Other languages
English (en)
Other versions
CN111984298A (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.)
Goertek Techology Co Ltd
Original Assignee
Goertek Techology 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 Goertek Techology Co Ltd filed Critical Goertek Techology Co Ltd
Priority to CN202010692401.3A priority Critical patent/CN111984298B/zh
Publication of CN111984298A publication Critical patent/CN111984298A/zh
Application granted granted Critical
Publication of CN111984298B publication Critical patent/CN111984298B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • 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/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process

Landscapes

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

Abstract

本发明公开了一种闪存中的程序升级区,包括:应用程序区、引导程序区和二者共用的备份区。本发明还公开了一种程序升级方法,包括:检测是否存在新的升级包数据;若检测到所述升级包数据,判断所述升级包数据对应为应用程序还是引导程序;将升级包数据先放入备份区,并校验升级包数据完整性,当升级包数据完整且对应为应用程序时,将升级包数据搬移至应用程序区以升级;当升级包数据完整且对应为引导程序时,将升级包数据搬移至引导程序区以升级。采用该闪存中的程序升级区及程序升级方法,应用程序和引导程序的升级共用同一备份区,减少了flash资源,降低了成本。本发明还公开了一种程序升级系统,同样具有上述技术效果。

Description

一种闪存中的程序升级区、程序升级方法及系统
技术领域
本发明涉及电子消费技术领域,更具体地说,涉及一种闪存中的程序升级区、程序升级方法及系统。
背景技术
软件程序在各种电子设备中均有应用,且随着人们对电子设备的要求不断提高,尝尝涉及软件程序的升级。
目前比较流行的(非易失性内存)flash分区如下,Application:应用程序区;App_backup:应用程序备份区;Boot_backup:引导程序备份区;Bootloader:引导程序区。
采用上述分区的通用升级方法如下:应用程序升级,先将应用程序升级包放到App_backup区,校验完整性后应用程序升级包从App_backup区搬移到Application区,从而实现应用程序的整个升级过程;引导程序升级,先将引导程序升级包放到Boot_backup区,校验完整性后引导程序升级包从Boot_backup区搬移到Bootloader区,从而实现引导程序的整个升级过程。然而,上述分区应用程序和引导程序分别对应设置备份区,flash资源占用较大,因而成本较高。
综上所述,如何有效地解决程序升级所需flash资源占用较大、成本较高等问题,是目前本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的第一个目的在于提供一种闪存中的程序升级区,该闪存中的程序升级区可以有效地解决程序升级所需flash资源占用较大、成本较高的问题,本发明的第二个目的是提供一种程序升级方法及系统。
为了达到上述第一个目的,本发明提供如下技术方案:
一种闪存中的程序升级区,包括:
备份区,用于缓存升级包数据和根据所述升级包数据对应为引导程序或应用程序时设置不同的标志位;
应用程序区,用于应用程序升级;
引导程序区,用于引导程序升级。
应用本发明提供的闪存中的程序升级区,备份区既用于缓存对应引导程序的升级包数据,也用于缓存对应应用程序的升级包数据,并根据升级包数据类型的不同相应设置对应的标志位,以便于后续相应升级。通过应用程序和引导程序共用同一备份区,减少了flash资源,降低了成本。
为了达到上述第二个目的,本发明提供如下技术方案:
一种程序升级方法,适用于包括备份区、应用程序区和引导程序区的闪存程序升级区,所述程序升级方法包括:
检测是否存在新的升级包数据;
若检测到所述升级包数据,判断所述升级包数据对应为应用程序还是引导程序;
将所述升级包数据先放入所述备份区,并校验所述升级包数据完整性,当所述升级包数据完整且对应为应用程序时,将所述升级包数据搬移至所述应用程序区以升级;当所述升级包数据完整且对应为引导程序时,将所述升级包数据搬移至所述引导程序区以升级。
优选地,上述程序升级方法中,所述将所述升级包数据先放入所述备份区,具体包括:
将升级包数据放入备份区,并在所述升级包数据对应为应用程序时设置应用程序升级标志位,在所述升级包数据对应为引导程序时设置引导程序升级标志位;
则所述当所述升级包数据完整且对应为应用程序时,将所述升级包数据搬移至所述应用程序区以升级,具体包括:
当所述升级包数据完整且应用程序升级标志位已置位时,将所述升级包数据搬移至所述应用程序区以升级,并将所述应用程序升级标志位复位;
所述当所述升级包数据完整且对应为引导程序时,将所述升级包数据搬移至所述引导程序区以升级,具体包括:
当所述升级包数据完整且引导程序升级标志位已置位时,将所述升级包数据搬移至所述引导程序区以升级,并将所述引导程序升级标志位复位。
优选地,上述程序升级方法中,所述校验所述升级包数据完整性之后,还包括:
当所述升级包数据不完整时,将所述应用程序升级标志位或所述引导程序升级标志位复位,并返回所述检测是否存在新的升级包数据之前,重新接收所述升级包数据。
优选地,上述程序升级方法中,所述重新接收所述升级包数据之前,还包括:
擦除所述备份区的所述升级包数据。
优选地,上述程序升级方法中,所述将所述升级包数据搬移至所述应用程序区以升级,或将所述升级包数据搬移至所述引导程序区以升级之后,还包括:
系统重启。
优选地,上述程序升级方法中,所述升级包数据包括数据包头、升级数据包和签名信息,所述数据包头内具有标记对应应用程序或引导程序的数据。
应用本发明提供的程序升级方法,程序升级时首先检测是否存在新的升级包数据;若检测到升级包数据,判断升级包数据对应为应用程序还是引导程序,并将升级包数据放入备份区,校验升级包数据完整性。当升级包数据完整且对应为应用程序时,将升级包数据由备份区搬移至应用程序区以升级;当升级包数据完整且对应为引导程序时,则将升级包数据由备份区搬移至引导程序区以升级。采用上述程序升级方法,应用程序和引导程序的升级共用同一备份区,减少了flash资源,降低了成本。
本发明还提供如下技术方案:
一种程序升级系统,适用于包括备份区、应用程序区和引导程序区的闪存程序升级区,所述程序升级系统包括:
检测模块,用于检测是否存在新的升级包数据;
判断模块,用于在检测到所述升级包数据时,判断所述升级包数据对应为应用程序还是引导程序;
放入模块,用于将所述升级包数据放入所述备份区;
校验模块,用于校验所述升级包数据完整性;
搬移模块,用于当所述升级包数据完整且对应为应用程序时,将所述升级包数据搬移至所述应用程序区以升级;当所述升级包数据完整且对应为引导程序时,将所述升级包数据搬移至所述引导程序区以升级。
优选地,上述程序升级系统中,所述放入模块包括:
放入单元,用于将升级包数据放入备份区;
标志位设置单元,用于在所述升级包数据对应为应用程序时设置应用程序升级标志位,在所述升级包数据对应为引导程序时设置引导程序升级标志位;
所述搬移模块包括:
标志位判断单元,用于判断所述应用程序升级标志位及所述引导程序升级标志位是否已置位;
搬移单元,用于当所述升级包数据完整且应用程序升级标志位已置位时,将升级包数据搬移至应用程序区以升级,当所述升级包数据完整且引导程序升级标志位已置位时,将所述升级包数据搬移至所述引导程序区以升级;
标志位复位单元,用于在所述升级包数据搬移至所述应用程序区或所述引导程序区后,将所述应用程序升级标志位或所述引导程序升级标志位复位。
优选地,上述程序升级系统中,还包括重启模块,用于将所述升级包数据搬移至所述应用程序区以升级,或将所述升级包数据搬移至所述引导程序区以升级之后,系统重启。
采用该程序升级系统,通过上述判断模块判断升级包数据对应为应用程序还是引导程序,结合搬移模块,当升级包数据对应为应用程序时,将升级包数据由备份区搬移至应用程序区以升级;当升级包数据对应为引导程序时,则将升级包数据由备份区搬移至引导程序区以升级。采用上述程序升级系统,应用程序和引导程序的升级共用同一备份区,减少了flash资源,降低了成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一个具体实施例的程序升级方法的流程示意图;
图2为本发明另一个具体实施例的程序升级方法的流程示意图。
具体实施方式
本发明实施例公开了一种闪存中的程序升级区及程序升级方法、程序升级系统,以减少flash资源,降低成本。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在一个具体实施例中,本发明提供的闪存中的程序升级区,包括备份区、应用程序区和引导程序区。
其中,备份区用于缓存升级包数据和根据升级包数据对应为引导程序或应用程序时设置不同的标志位。也就是对应引导程序的数据包和应用程序的数据包均在同一备份区缓存,而无需分别设置备份区。并通过在备份区进行标志位的设置,以便于后续根据标志位将升级数据包搬移至对应的应用程序区和引导程序区。标志位具体包括应用程序升级标志位和引导程序升级标志位,当升级数据包对应为应用程序时,则设置应用程序升级标志位,当升级数据包对应为引导程序时,则设置引导程序升级标志位。
应用程序区用于应用程序升级,引导程序区用于引导程序升级。二者的划分与常规闪存中的程序升级区相同,此处不再赘述。
应用本发明提供的闪存中的程序升级区,备份区既用于缓存对应引导程序的升级包数据,也用于缓存对应应用程序的升级包数据,并根据升级包数据类型的不同相应设置对应的标志位,以便于后续相应升级。通过应用程序和引导程序共用同一备份区,减少了flash资源,降低了成本。
本发明还提供了一种程序升级方法。请参阅图1,图1为本发明一个具体实施例的程序升级方法的流程示意图。
在一个具体实施例中,本发明提供的程序升级方法,适用于包括备份区(backup区)、应用程序区(Application区)和引导程序区(Bootloader区)的闪存程序升级区,该程序升级方法包括:
S1:检测是否存在新的升级包数据;
S2:若检测到升级包数据,判断升级包数据对应为应用程序还是引导程序;
具体的,升级包数据包括数据包头(Header)、升级数据包(Firmware)和签名信息(Signature),数据包头内具有标记对应应用程序或引导程序的数据。则上述判断升级包数据对应为应用程序还是引导程序,具体可以通过数据包头的信息判断其对应为应用程序还是引导程序。
S3:将升级包数据先放入备份区,并校验升级包数据完整性,当升级包数据完整且对应为应用程序时,将升级包数据搬移至应用程序区以升级;当升级包数据完整且对应为引导程序时,将升级包数据搬移至引导程序区以升级。
也就是将升级包数据先放入备份区缓存,通过校验其完整性,在升级数据包完整的情况下,再根据其对应为应用程序还是引导程序,当对应应用程序时则将升级包数据搬移至应用程序区以升级,当对应为引导程序时则将升级包数据搬移至引导程序区以升级。
在该实施例中,将flash分区采用应用程序和引导程序公用备份区的方式,减少了flash资源占用,降低了成本。具体的,由于应用程序和引导程序共用备份区,因而需要对升级包数据的类型进行判断。也就是开始后,检测是否存在新的升级包数据,如果不存在则可以继续正常运行。当检测到新的升级包数据后,则判断升级包数据对应为应用程序还是引导程序,并将升级包数据先放入备份区,当升级包数据为应用程序时,再将其搬移至对应的应用程序区,从而实现应用程序的整个升级过程;当升级包数据为引导程序时,再将其搬移至对应的引导程序区,从而实现引导程序的整个升级过程。
具体的,上述步骤S3中,将升级包数据先放入备份区,具体包括:
将升级包数据放入备份区,并在升级包数据对应为应用程序时设置应用程序升级标志位,在升级包数据对应为引导程序时设置引导程序升级标志位;
也就是在升级包数据完整时,根据升级包数据对应应用程序还是引导程序相应设置标志位,以便于cpu通过标志位判断将升级包放到应用程序区或引导程序区。具体的,将应用程序升级标志位的app赋值为1,即app=1,从而标记升级数据包类型对应为应用程序。将引导程序升级标志位的boot赋值为1,即boot=1,从而标记升级数据包类型对应为引导程序。
则当升级包数据完整且对应为应用程序时,将升级包数据搬移至应用程序区以升级,当升级包数据完整且对应为引导程序时,将升级包数据搬移至引导程序区以升级,具体包括:
当升级包数据完整且应用程序升级标志位已置位时,将升级包数据搬移至应用程序区以升级,并将应用程序升级标志位复位;当升级包数据完整且引导程序升级标志位已置位时,将升级包数据搬移至引导程序区以升级,并将引导程序升级标志位复位。
当升级包数据完整时,在应用程序升级标志位已置位的情况下,如满足app=1,则将升级包数据搬移至应用程序区。升级包数据搬移至应用程序区后,将应用程序升级标志位复位,具体可以为将应用程序升级标志位的app设为0,即app=0。在引导程序升级标志位已置位的情况下,如满足boot=1,则将升级包数据搬移至引导程序区。升级包数据搬移至引导程序区后,将引导程序升级标志位复位,具体可以为将引导程序升级标志位的boot设为0,即boot=0。
为了保证有效升级,进行升级包数据完整性的校验,该校验过程具体可以在将升级包数据放入备份区之后进行,则步骤S3具体包括:
S1:将升级包数据放入备份区,并在升级包数据对应为应用程序时设置应用程序升级标志位,在升级包数据对应为引导程序时设置引导程序升级标志位;
S32:校验升级包数据完整性;
S33:当升级包数据完整且应用程序升级标志位已置位时,将升级包数据搬移至应用程序区以升级,并将应用程序升级标志位复位;当升级包数据完整且引导程序升级标志位已置位时,将升级包数据搬移至引导程序区以升级,并将引导程序升级标志位复位。
具体数据包完整性的校验,可通过crc或checksum等算法进行。crc是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术。checksum算法是在数据处理和数据通信领域中,用于校验目的的一组数据项的和。具体crc算法及checksum算法的原理及实现等请参考现有技术,此处不再赘述。
进一步地,上述步骤S3中校验升级包数据完整性之后,还包括:
当升级包数据不完整时,将应用程序升级标志位或引导程序升级标志位复位,并返回检测是否存在新的升级包数据之前重新接收升级包数据。
也就是在升级包数据不完整时,则先不进行升级,在应用程序升级标志位已置位时将应用程序升级标志位复位,并重新接收升级包数据,在引导程序升级标志位已置位时将引导程序升级标志位复位,并重新接收升级包数据。对于升级包数据的接收,具体可以在该程序升级方法开始之初,先进行升级数据包的接收,再检测是否存在新的升级包数据,则相应的此处重新接收升级包数据即为返回上述步骤重新接收升级包数据。
更进一步地,上述返回检测是否存在新的升级包数据之前重新接收升级包数据之前,还包括:
擦除备份区的升级包数据。
将备份区的不完整的升级包数据擦除,以便于后续新的升级包数据的放入。
更进一步地,上述步骤S3之后,还包括:
系统重启。
也就是应用程序或引导程序完成升级,系统自动重启,则以新的应用程序或引导运行,实现升级。由于系统未重启时,仍会按照原有应用程序或引导程序运行,故通过系统重启以实现程序升级。根据需要,也可以通过用户后续手动重启完成升级。
请参阅图2,图2为本发明另一个具体实施例的程序升级方法的流程示意图。
在该实施例中,开始后,包括:
当检测到升级包数据时,通过数据包头判断升级包数据对应为应用程序还是引导程序;
当升级包数据对应为应用程序时,则接收升级包数据放到备份区,并设置应用程序升级标志位;而后校验升级包数据完整性,若升级包数据完完整,且应用程序升级标志位已置位,则将升级包数据由备份区搬移至应用程序区,而后应用程序升级标志位复位,系统重启;若升级包数据不完整,则备份区擦除升级包数据,停止升级并返回重新接受升级包;
当升级包数据对应为引导程序时,则接收升级包数据放到备份区,并设置引导程序升级标志位;而后校验升级包数据完整性,若升级包数据完完整,且引导程序升级标志位已置位,则将升级包数据由备份区搬移至引导程序区,而后引导程序升级标志位复位,系统重启;若升级包数据不完整,则备份区擦除升级包数据,停止升级并返回重新接受升级包。
本发明还公开了一种程序升级系统,适用于包括备份区、应用程序区和引导程序区的闪存程序升级区,程序升级系统包括:
检测模块,用于检测是否存在新的升级包数据;
判断模块,用于在检测到升级包数据时,判断升级包数据对应为应用程序还是引导程序;
放入模块,用于接收升级包数据并放入备份区;
校验模块,用于校验所述升级包数据完整性;
搬移模块,用于当升级包数据完整且对应为应用程序时,将升级包数据搬移至应用程序区以升级;当升级包数据完整且对应为引导程序时,将升级包数据搬移至引导程序区以升级。
采用上述程序升级系统,将flash分区采用应用程序和引导程序公用备份区的方式,减少了flash资源占用,降低了成本。
具体的,上述放入模块包括:
放入单元,用于将升级包数据放入备份区;
标志位设置单元,用于在升级包数据对应为应用程序时设置应用程序升级标志位,在升级包数据对应为引导程序时设置引导程序升级标志位;
上述搬移模块包括:
标志位判断单元,用于判断应用程序升级标志位或引导程序升级标志位是否已置位;
搬移单元,用于当升级包数据完整且应用程序升级标志位已置位时,将升级包数据搬移至应用程序区以升级,当升级包数据完整且引导程序升级标志位已置位时,将升级包数据搬移至引导程序区以升级;
标志位复位单元,用于将升级包数据搬移至应用程序区后,将应用程序升级标志位复位,及将升级包数据搬移至引导程序区后,将引导程序升级标志位复位。
进一步地,还包括重新接收单元,用于若升级包数据不完整,重新接收升级包数据;则上述标志位复位单元,具体还用于若升级包数据不完整,将应用程序升级标志位复位或将引导程序升级标志位复位。
更进一步地,还包括应用擦除模块,用于重新接收升级包数据之前擦除备份区的升级包数据。
具体的,还包括应用重启模块,用于将升级包数据搬移至应用程序区以升级,或将升级包数据搬移至引导程序区以升级之后,系统重启。
需要说明的是,该程序升级系统与上述程序升级方法对应设置,具体设置及对应效果相互参照即可,此处不再赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (7)

1.一种程序升级方法,其特征在于,适用于包括备份区、应用程序区和引导程序区的闪存程序升级区,所述程序升级方法包括:
检测是否存在新的升级包数据;
若检测到所述升级包数据,判断所述升级包数据对应为应用程序还是引导程序;
将所述升级包数据先放入所述备份区,并校验所述升级包数据完整性,当所述升级包数据完整且对应为应用程序时,将所述升级包数据搬移至所述应用程序区以升级;当所述升级包数据完整且对应为引导程序时,将所述升级包数据搬移至所述引导程序区以升级;
所述将所述升级包数据先放入所述备份区,具体包括:
将升级包数据放入备份区,并在所述升级包数据对应为应用程序时设置应用程序升级标志位,在所述升级包数据对应为引导程序时设置引导程序升级标志位;
则所述当所述升级包数据完整且对应为应用程序时,将所述升级包数据搬移至所述应用程序区以升级,具体包括:
当所述升级包数据完整且应用程序升级标志位已置位时,将所述升级包数据搬移至所述应用程序区以升级,并将所述应用程序升级标志位复位;
所述当所述升级包数据完整且对应为引导程序时,将所述升级包数据搬移至所述引导程序区以升级,具体包括:
当所述升级包数据完整且引导程序升级标志位已置位时,将所述升级包数据搬移至所述引导程序区以升级,并将所述引导程序升级标志位复位。
2.根据权利要求1所述的程序升级方法,其特征在于,所述校验所述升级包数据完整性之后,还包括:
当所述升级包数据不完整时,将所述应用程序升级标志位或所述引导程序升级标志位复位,并返回所述检测是否存在新的升级包数据之前重新接收所述升级包数据。
3.根据权利要求2所述的程序升级方法,其特征在于,所述重新接收所述升级包数据之前,还包括:
擦除所述备份区的所述升级包数据。
4.根据权利要求1-3任一项所述的程序升级方法,其特征在于,所述将所述升级包数据搬移至所述应用程序区以升级,或将所述升级包数据搬移至所述引导程序区以升级之后,还包括:
系统重启。
5.根据权利要求1-3任一项所述的程序升级方法,其特征在于,所述升级包数据包括数据包头、升级数据包和签名信息,所述数据包头内具有标记对应应用程序或引导程序的数据。
6.一种程序升级系统,其特征在于,适用于包括备份区、应用程序区和引导程序区的闪存程序升级区,所述程序升级系统包括:
检测模块,用于检测是否存在新的升级包数据;
判断模块,用于在检测到所述升级包数据时,判断所述升级包数据对应为应用程序还是引导程序;
放入模块,用于将所述升级包数据放入所述备份区;
校验模块,用于校验所述升级包数据完整性;
搬移模块,用于当所述升级包数据完整且对应为应用程序时,将所述升级包数据搬移至所述应用程序区以升级;当所述升级包数据完整且对应为引导程序时,将所述升级包数据搬移至所述引导程序区以升级;
所述放入模块包括:
放入单元,用于将升级包数据放入备份区;
标志位设置单元,用于在所述升级包数据对应为应用程序时设置应用程序升级标志位,在所述升级包数据对应为引导程序时设置引导程序升级标志位;
所述搬移模块包括:
标志位判断单元,用于判断所述应用程序升级标志位或所述引导程序升级标志位是否已置位;
搬移单元,用于当所述升级包数据完整且应用程序升级标志位已置位时,将升级包数据搬移至应用程序区以升级,当所述升级包数据完整且引导程序升级标志位已置位时,将所述升级包数据搬移至所述引导程序区以升级;
标志位复位单元,用于在所述升级包数据搬移至所述应用程序区或所述引导程序区后,将所述应用程序升级标志位或所述引导程序升级标志位复位。
7.根据权利要求6所述的程序升级系统,其特征在于,还包括重启模块,用于将所述升级包数据搬移至所述应用程序区以升级,或将所述升级包数据搬移至所述引导程序区以升级之后,系统重启。
CN202010692401.3A 2020-07-17 2020-07-17 一种闪存中的程序升级区、程序升级方法及系统 Active CN111984298B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010692401.3A CN111984298B (zh) 2020-07-17 2020-07-17 一种闪存中的程序升级区、程序升级方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010692401.3A CN111984298B (zh) 2020-07-17 2020-07-17 一种闪存中的程序升级区、程序升级方法及系统

Publications (2)

Publication Number Publication Date
CN111984298A CN111984298A (zh) 2020-11-24
CN111984298B true CN111984298B (zh) 2023-07-25

Family

ID=73438707

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010692401.3A Active CN111984298B (zh) 2020-07-17 2020-07-17 一种闪存中的程序升级区、程序升级方法及系统

Country Status (1)

Country Link
CN (1) CN111984298B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112612498A (zh) * 2020-12-30 2021-04-06 深圳市九洲电器有限公司 一种嵌入式设备升级方法和嵌入式设备
CN116431189B (zh) * 2023-06-12 2024-02-27 广州万协通信息技术有限公司 基于pcie链路的板卡升级方法、装置、设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1808385A (zh) * 2006-01-20 2006-07-26 北京朗通环球科技有限公司 一种嵌入式系统的引导系统
CN105094903A (zh) * 2015-07-16 2015-11-25 广州飞米电子科技有限公司 对固件进行升级的方法及装置
CN106843943A (zh) * 2017-01-03 2017-06-13 恒鸿达信息技术有限公司 一种stm32微处理器程序架构设计方法
CN108132797A (zh) * 2016-11-30 2018-06-08 青岛海信电器股份有限公司 一种遥控器、SoC芯片及其应用程序的升级方法
EP3376391A1 (en) * 2017-03-17 2018-09-19 Ricoh Company Ltd. Information processing apparatus, updating method, and carrier means
CN110231952A (zh) * 2019-06-17 2019-09-13 合肥巨一动力系统有限公司 一种ecu程序备份及循环升级控制方法及装置
WO2020107436A1 (zh) * 2018-11-30 2020-06-04 深圳市大疆创新科技有限公司 程序的升级方法和嵌入式设备
CN111309364A (zh) * 2020-05-11 2020-06-19 深圳市科信通信技术股份有限公司 芯片程序的升级方法、装置及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106354524B (zh) * 2015-07-17 2021-01-01 恩智浦美国有限公司 实时更新固件的系统和方法
CN105511929A (zh) * 2015-12-31 2016-04-20 青岛高校信息产业股份有限公司 一种设备远程无线升级方法
US10846099B2 (en) * 2016-10-07 2020-11-24 Blackberry Limited Selecting a boot loader on an electronic device
CN106843942B (zh) * 2016-12-31 2021-04-30 歌尔科技有限公司 穿戴式设备的固件升级方法及穿戴式设备
US10866798B2 (en) * 2017-12-28 2020-12-15 Intel Corporation Firmware upgrade method and apparatus
CN108376077A (zh) * 2018-02-11 2018-08-07 广东美的厨房电器制造有限公司 控制单元的升级方法和装置
CN111338661A (zh) * 2018-12-03 2020-06-26 厦门雅迅网络股份有限公司 应用程序反向升级boot的方法及存储介质
CN110134415A (zh) * 2019-04-12 2019-08-16 深圳市致宸信息科技有限公司 一种控制器及其软件升级方法和装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1808385A (zh) * 2006-01-20 2006-07-26 北京朗通环球科技有限公司 一种嵌入式系统的引导系统
CN105094903A (zh) * 2015-07-16 2015-11-25 广州飞米电子科技有限公司 对固件进行升级的方法及装置
CN108132797A (zh) * 2016-11-30 2018-06-08 青岛海信电器股份有限公司 一种遥控器、SoC芯片及其应用程序的升级方法
CN106843943A (zh) * 2017-01-03 2017-06-13 恒鸿达信息技术有限公司 一种stm32微处理器程序架构设计方法
EP3376391A1 (en) * 2017-03-17 2018-09-19 Ricoh Company Ltd. Information processing apparatus, updating method, and carrier means
WO2020107436A1 (zh) * 2018-11-30 2020-06-04 深圳市大疆创新科技有限公司 程序的升级方法和嵌入式设备
CN110231952A (zh) * 2019-06-17 2019-09-13 合肥巨一动力系统有限公司 一种ecu程序备份及循环升级控制方法及装置
CN111309364A (zh) * 2020-05-11 2020-06-19 深圳市科信通信技术股份有限公司 芯片程序的升级方法、装置及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Generic Bootloader Architecture Based on Automatic Update Mechanism;Yanbo Kang等;《2018 IEEE 3rd International Conference on Signal and Image Processing (ICSIP)》;第586-590页 *
WiMAX基带处理板的DSP子系统的设计与实现;韩艳芬;《中国优秀硕士学位论文全文数据库信息科技辑》(第11期);I137-85 *

Also Published As

Publication number Publication date
CN111984298A (zh) 2020-11-24

Similar Documents

Publication Publication Date Title
CN107179909B (zh) 软件升级方法、装置及计算机可读存储介质
CN106569844B (zh) 程序代码更新的处理方法、装置和设备
KR101143112B1 (ko) 페일세이프 방식으로 맞춤 소프트웨어 영상 갱신을불휘발성 저장 장치에 적용하는 시스템 및 방법
US7664923B2 (en) Method and system for updating software
CN111984298B (zh) 一种闪存中的程序升级区、程序升级方法及系统
US20030126511A1 (en) Module and method for automatic restoring BIOS device
CN111813428A (zh) 终端固件的升级方法、装置、电子设备及存储介质
CN102945176A (zh) 终端设备开机、升级方法和设备
CN102541604B (zh) 一种远程升级方法、远程升级的终端设备以及远程升级系统
JP2007528064A (ja) 無線装置オペレーティング環境における未検証プログラムの実行
CN111045713A (zh) 一种计算机系统的升级方法、系统及装置
CN104978530A (zh) 一种应用安全管理方法、装置、服务器以及系统
CN106020882A (zh) 一种应用升级方法、智能终端及升级系统
CN105677409B (zh) 一种系统升级方法及装置
CN110597545A (zh) 一种基于ota组件的热补丁智能升级方法及系统
US7571374B2 (en) Method for transmitting and processing command and data
CN114780127A (zh) 嵌入式设备固件更新方法、嵌入式设备、开发端设备
CN112015447A (zh) 电子设备的系统更新方法及装置、电子设备及存储介质
CN105786636A (zh) 一种系统修复方法及装置
CN108153548A (zh) 一种emmc固件升级方法和装置
KR100827172B1 (ko) 휴대단말기 펌웨어를 업그레이드하기 위한 장치와 방법
CN107632836A (zh) 软件兼容方法及装置
CN112470121A (zh) 经由数据块下载恢复映像
CN105512544A (zh) 一种获取移动终端超级用户权限的方法及装置
CN112486549A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20221124

Address after: No. 500 Songling Road, Laoshan District, Qingdao City, Shandong Province, 266100

Applicant after: GOERTEK TECHNOLOGY Co.,Ltd.

Address before: 261031 north of Yuqing street, east of Dongming Road, high tech Zone, Weifang City, Shandong Province (Room 502, Geer electronics office building)

Applicant before: GoerTek Optical Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant