CN111324488A - 一种程序备份处理方法及装置 - Google Patents
一种程序备份处理方法及装置 Download PDFInfo
- Publication number
- CN111324488A CN111324488A CN202010089127.0A CN202010089127A CN111324488A CN 111324488 A CN111324488 A CN 111324488A CN 202010089127 A CN202010089127 A CN 202010089127A CN 111324488 A CN111324488 A CN 111324488A
- Authority
- CN
- China
- Prior art keywords
- program
- partitions
- backup
- area
- areas
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 12
- 238000005192 partition Methods 0.000 claims abstract description 210
- 238000000034 method Methods 0.000 claims abstract description 21
- 238000004590 computer program Methods 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 9
- 238000011084 recovery Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 abstract description 10
- 238000005516 engineering process Methods 0.000 abstract description 5
- 230000000694 effects Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供了一种程序备份处理方法及装置,其中,该方法包括:获取存储器的主程序区的多个分区的程序区的长度,其中,该主程序区包括该多个分区,该多个分区均包括该程序区和预留区;根据该多个分区的程序区的长度将该多个分区的程序区进行拼接,并将拼接之后的程序区备份到该存储器的备程序区的一个备份分区中,其中,该主程序区的空间大于该备程序区的空间;在该备份分区的最后设置一个目标预留区,该目标预留区的空间小于该多个分区的预留区的空间之和,可以解决相关技术中失败后启动的是一个功能裁剪后的最小系统,必须通过二次升级后才能使用的问题,备份使用的空间可以大大的缩减,而又达到全备份的效果,无需二次升级,直接便可使用。
Description
技术领域
本发明涉及信息技术领域,具体而言,涉及一种程序备份处理方法及装置。
背景技术
目前的智能设备由于功能更新或者修复bug会涉及到程序升级功能,在程序升级过程中如果出现异常会直接影响设备的正确运行,因此一般都需要对程序进行备份,保证程序在升级异常时能从备份程序恢复或者启动。
图1是根据相关技术的flash备份分区方式的示意图,如图1所示,将一片flash划分为完全相等的2份,一份是主程序分区,一份是备份程序分区,进行1:1的备份,备份区完全拷贝正常分区的程序,在升级出现异常的时候,可以通过备份程序恢复或者重新启动。在当前程序备份中普遍使用,缺点主要是对flash的空间大小有要求,一些小型设备,特别是对成本比较敏感的设备,flash的预留空间都比较的小,想要预留一半的空间进行备份,很多情况下存储空间是不够用的。
如果flash的大小不够划分为2片相等的分区,那么不能按照1:1的方式进行备份,图2是根据相关技术中的设置最小系统的flash备份分区方式的示意图,如图2所示,一般的做法会在备份区放置一个可以启动的最小系统来节约空间,保证在升级出现异常时最小系统能够起来对主程序区进行升级,不至于升级失败后设备完全挂掉。
上述方案可以在flash预留空间不够时普遍使用,但是存在以下缺点:
升级失败后如果破坏了主程序区,那么设备启动后不能正常使用,失败后启动的是一个功能裁剪后的最小系统,必须通过二次升级后才能使用,体验感不好。
针对相关技术中失败后启动的是一个功能裁剪后的最小系统,必须通过二次升级后才能使用的问题,尚未提出解决方案。
发明内容
本发明实施例提供了一种程序备份处理方法及装置,以至少解决相关技术中失败后启动的是一个功能裁剪后的最小系统,必须通过二次升级后才能使用的问题。
根据本发明的一个实施例,提供了一种程序备份处理方法,包括:
获取存储器的主程序区的多个分区的程序区的长度,其中,所述主程序区包括所述多个分区,所述多个分区均包括所述程序区和预留区;
根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中,其中,所述主程序区的空间大于所述备程序区的空间;
在所述备份分区的最后设置一个目标预留区,其中,所述目标预留区的空间小于所述多个分区的预留区的空间之和。
可选地,所述方法还包括:
根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中的同时,在所述备份分区的起始位置预留一个目标区,通过所述目标区指示备份的分区数量、备份分区的先后顺序以及所述多个分区的程序区的长度。
可选地,在根据所述多个分区的程序区的长度将所述多个分区的程序区拼接之后备份到所述存储器的备程序区的一个备份分区中之后,所述方法还包括:
若检测到所述主程序区的程序被破坏,通过所述备程序区的所述备份分区恢复所述主程序区的所述多个分区的程序。
可选地,通过所述备程序区的所述备份分区恢复所述主程序区的所述多个分区的程序包括:
擦除所述主程序区中的所述多个分区;
将所述备份分区中的程序按照备份分区的先后顺序恢复到所述主程序区的多个分区中。
可选地,获取存储器的主程序区的多个分区的程序区的长度包括:
对于所述多个分区中的每个分区,执行以下操作,其中,在执行以下操作时,所述每个分区被称为当前分区:
从所述当前分区的最后往前查找,将首个非预定标识的程序所在位置与所述多个分区的起始位置之间的长度确定为所述当前分区的程序区的长度。
根据本发明的另一个实施例,还提供了一种程序备份处理装置,包括:
获取模块,用于获取存储器的主程序区的多个分区的程序区的长度,其中,所述主程序区包括所述多个分区,所述多个分区均包括所述程序区和预留区;
备份模块,用于根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中,其中,所述主程序区的空间大于所述备程序区的空间;
设置模块,用于在所述备份分区的最后设置一个目标预留区,其中,所述目标预留区的空间小于所述多个分区的预留区的空间之和。
可选地,所述装置还包括:
指示模块,用于根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中的同时,在所述备份分区的起始位置预留一个目标区,通过所述目标区指示备份的分区数量、备份分区的先后顺序以及所述多个分区的程序区的长度。
可选地,所述装置还包括:
恢复模块,用于若检测到所述主程序区的程序被破坏,通过所述备程序区的所述备份分区恢复所述主程序区的所述多个分区的程序。
可选地,所述恢复模块包括:
擦除子模块,用于擦除所述主程序区中的所述多个分区;
恢复子模块,用于将所述备份分区中的程序按照备份分区的先后顺序恢复到所述主程序区的多个分区中。
可选地,所述获取模块包括:
执行子模块,用于对于所述多个分区中的每个分区,执行以下操作,其中,在执行以下操作时,所述每个分区被称为当前分区:
从所述当前分区的最后往前查找,将首个非预定标识的程序所在位置与所述多个分区的起始位置之间的长度确定为所述当前分区的程序区的长度。
根据本发明的又一个实施例,还提供了一种计算机可读的存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,获取存储器的主程序区的多个分区的程序区的长度,其中,所述主程序区包括所述多个分区,所述多个分区均包括所述程序区和预留区;根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中;在所述备份分区的最后设置一个目标预留区,其中,所述目标预留区的空间小于所述多个分区的预留区的空间之和,可以解决相关技术中失败后启动的是一个功能裁剪后的最小系统,必须通过二次升级后才能使用的问题,在存储器中使用紧凑型的全备份方式,备份使用的空间可以大大的缩减,而又达到全备份的效果,无需二次升级,直接便可使用。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据相关技术的flash备份分区方式的示意图;
图2是根据相关技术中的设置最小系统的flash备份分区方式的示意图;
图3是本发明实施例的程序备份处理方法的移动终端的硬件结构框图;
图4是根据本发明实施例的程序备份处理方法的流程图;
图5是根据相关技术的程序全备份存放方式的示意图;
图6是根据本发明实施例的紧凑备份的存放方式的示意图;
图7是根据本发明实施例的程序备份处理装置的框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图3是本发明实施例的程序备份处理方法的移动终端的硬件结构框图,如图3所示,移动终端10可以包括一个或多个(图3中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图3所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端10还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的报文接收方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种运行于上述移动终端或网络架构的程序备份处理方法,图4是根据本发明实施例的程序备份处理方法的流程图,如图4所示,该流程包括如下步骤:
步骤S402,获取存储器的主程序区的多个分区的程序区的长度,其中,所述主程序区包括所述多个分区,所述多个分区均包括所述程序区和预留区;
对于嵌入式系统而言,通常所需的数据文件可以分为运行程序文件和资源文件,本发明实施例主要针对运行程序文件的备份,当然,对于资源文件,也可以适用。
进一步的,对于所述多个分区中的每个分区,执行以下操作,其中,在执行以下操作时,所述每个分区被称为当前分区:从所述当前分区的最后往前查找,将首个非预定标识的程序所在位置与所述多个分区的起始位置之间的长度确定为所述当前分区的程序区的长度。
步骤S404,根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中,其中,所述主程序区的空间大于所述备程序区的空间;
具体的,仅仅将主程序区包含程序文件的程序区进行备份,并拼接在备程序区的一个备份分区中,从而有效节约备份程序文件所占空间。
步骤S406,在所述备份分区的最后设置一个目标预留区,其中,所述目标预留区的空间小于所述多个分区的预留区的空间之和。
具体的,在备份分区中备份的程序文件之后统一设置一个预留区,一个预留区占用的空间远小于主程序区中多个程序区各自的预留区之和,从而可以大大缩减备份使占用的空间。
通过上述步骤S402至S406,可以解决相关技术中失败后启动的是一个功能裁剪后的最小系统,必须通过二次升级后才能使用的问题,在存储器中使用紧凑型的全备份方式,备份使用的空间可以大大的缩减,而又达到全备份的效果,无需二次升级,直接便可使用。
本发明实施例,在根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中的同时,在所述备份分区的起始位置预留一个目标区,通过所述目标区指示备份的分区数量、备份分区的先后顺序以及所述多个分区的程序区的长度,以便后续将备份的内容恢复到主程序区中。
可选地,在根据所述多个分区的程序区的长度将所述多个分区的程序区拼接之后备份到所述存储器的备程序区的一个备份分区中之后,若检测到所述主程序区的程序被破坏,通过所述备程序区的所述备份分区恢复所述主程序区的所述多个分区的程序。进一步的,擦除所述主程序区中的所述多个分区;将所述备份分区中的程序按照备份分区的先后顺序恢复到所述主程序区的多个分区中。
上述的存储器可以为flash,具体可以是Nand flash,相关技术中设备对备份功能都有要求,备份主要是保证设备因为升级或者其它原因异常后也能够正常运行起来。本发明实施例基于紧凑式的程序备份方式,分析一下在Nand flash中全备份1:1的程序存放方式,可以发现大部分实际的使用情况如下,图5是根据相关技术的程序全备份存放方式的示意图,如图5所示,在每个分区都有很多没有使用的区域,阴影部分属于分区中未使用的区域,为什么要预留区域呢,一方面Nand flash本身存在坏块,一般允许5%的坏块,而坏块位置是随机的,但是分区是按照固定格式进行的,因此必须要给每个分区预留一些坏块的空间;另一方面是为程序后续扩展预留空间。
按照1:1的备份方式实际上有很多的空间是浪费的,图6是根据本发明实施例的紧凑备份的存放方式的示意图,如图6所示,将这些浪费的预留区域节约回来,采用紧凑的方式来进行备份,只备份有程序的区域,把整个备份程序紧凑到一起,成为一个备份分区,合并成一个分区后只需要预留一个大分区的坏块区域,同时为后续扩展预留的区域也可以节约出来(一般不会每个分区的预留区域最后都用到,只需要适当预留一部分即可)。紧凑式的备份方式还需要一个额外的头部信息来记录每个分区的实际大小。
如果只备份每个分区中程序实际的区域,需要先获取到每个分区的实际区域大小。Nand flash有一个特性,擦除后没有使用的块的每个字节的数据都是0xff,获取每个分区的大小有一个取巧的方式:从后向前找,从最后的0xff开始找,如果找到非0xff的数据就说明找到了实际程序区的结尾,那么从这里就可以计算出程序的实际大小。当然还有一种极端的情况,程序的最后就是由很多全0xff的字节数据组成,那么也没关系,这部分数据可以不用备份,程序恢复前先擦除整个分区,擦除后的数据就是0xff,然后进行恢复,恢复完成后没有修改的数据就是全0xff,相当于这部分没有被备份的全0xff数据也进行了恢复。
通过本发明实施例,在Nand flash中使用紧凑型的全备份方式,备份使用的空间可以大大的缩减,而又达到全备份的效果。相比全备份方式,紧凑备份只备份实际有程序的部分,备份的程序量变少,而计算的方法也比较简单,计算量很小,这样备份的速度相比全备份速度更快,节约了备份的时间。
实施例2
根据本发明的另一个实施例,还提供了一种程序备份处理装置,图7是根据本发明实施例的程序备份处理装置的框图,如图7所示,包括:
获取模块72,获取存储器的主程序区的多个分区的程序区的长度,其中,所述主程序区包括所述多个分区,所述多个分区均包括所述程序区和预留区;
备份模块74,用于根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中,其中,所述主程序区的空间大于所述备程序区的空间;
设置模块76,用于在所述备份分区的最后设置一个目标预留区,其中,所述目标预留区的空间小于所述多个分区的预留区的空间之和。
可选地,所述装置还包括:
指示模块,用于根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中的同时,在所述备份分区的起始位置预留一个目标区,通过所述目标区指示备份的分区数量、备份分区的先后顺序以及所述多个分区的程序区的长度。
可选地,所述装置还包括:
恢复模块,用于若检测到所述主程序区的程序被破坏,通过所述备程序区的所述备份分区恢复所述主程序区的所述多个分区的程序。
可选地,所述恢复模块包括:
擦除子模块,用于擦除所述主程序区中的所述多个分区;
恢复子模块,用于将所述备份分区中的程序按照备份分区的先后顺序恢复到所述主程序区的多个分区中。
可选地,所述获取模块72包括:
执行子模块,用于对于所述多个分区中的每个分区,执行以下操作,其中,在执行以下操作时,所述每个分区被称为当前分区:
从所述当前分区的最后往前查找,将首个非预定标识的程序所在位置与所述多个分区的起始位置之间的长度确定为所述当前分区的程序区的长度。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本发明的实施例还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取存储器的主程序区的多个分区的程序区的长度,其中,所述主程序区包括所述多个分区,所述多个分区均包括所述程序区和预留区;
S2,根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中,其中,所述主程序区的空间大于所述备程序区的空间;
S3,在所述备份分区的最后设置一个目标预留区,其中,所述目标预留区的空间小于所述多个分区的预留区的空间之和。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
实施例4
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取存储器的主程序区的多个分区的程序区的长度,其中,所述主程序区包括所述多个分区,所述多个分区均包括所述程序区和预留区;
S2,根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中,其中,所述主程序区的空间大于所述备程序区的空间;
S3,在所述备份分区的最后设置一个目标预留区,其中,所述目标预留区的空间小于所述多个分区的预留区的空间之和。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种程序备份处理方法,其特征在于,包括:
获取存储器的主程序区的多个分区的程序区的长度,其中,所述主程序区包括所述多个分区,所述多个分区均包括所述程序区和预留区;
根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中,其中,所述主程序区的空间大于所述备程序区的空间;
在所述备份分区的最后设置一个目标预留区,其中,所述目标预留区的空间小于所述多个分区的预留区的空间之和。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中的同时,在所述备份分区的起始位置预留一个目标区,通过所述目标区指示备份的分区数量、备份分区的先后顺序以及所述多个分区的程序区的长度。
3.根据权利要求2所述的方法,其特征在于,在根据所述多个分区的程序区的长度将所述多个分区的程序区拼接之后备份到所述存储器的备程序区的一个备份分区中之后,所述方法还包括:
若检测到所述主程序区的程序被破坏,通过所述备程序区的所述备份分区恢复所述主程序区的所述多个分区的程序。
4.根据权利要求3所述的方法,其特征在于,通过所述备程序区的所述备份分区恢复所述主程序区的所述多个分区的程序包括:
擦除所述主程序区中的所述多个分区;
将所述备份分区中的程序按照备份分区的先后顺序恢复到所述主程序区的多个分区中。
5.根据权利要求1至4中任一项所述的方法,其特征在于,获取存储器的主程序区的多个分区的程序区的长度包括:
对于所述多个分区中的每个分区,执行以下操作,其中,在执行以下操作时,所述每个分区被称为当前分区:
从所述当前分区的最后往前查找,将首个非预定标识的程序所在位置与所述多个分区的起始位置之间的长度确定为所述当前分区的程序区的长度。
6.一种程序备份处理装置,其特征在于,包括:
获取模块,用于获取存储器的主程序区的多个分区的程序区的长度,其中,所述主程序区包括所述多个分区,所述多个分区均包括所述程序区和预留区;
备份模块,用于根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中,其中,所述主程序区的空间大于所述备程序区的空间;
设置模块,用于在所述备份分区的最后设置一个目标预留区,其中,所述目标预留区的空间小于所述多个分区的预留区的空间之和。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
指示模块,用于根据所述多个分区的程序区的长度将所述多个分区的程序区进行拼接,并将拼接之后的程序区备份到所述存储器的备程序区的一个备份分区中的同时,在所述备份分区的起始位置预留一个目标区,通过所述目标区指示备份的分区数量、备份分区的先后顺序以及所述多个分区的程序区的长度。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
恢复模块,用于若检测到所述主程序区的程序被破坏,通过所述备程序区的所述备份分区恢复所述主程序区的所述多个分区的程序。
9.一种计算机可读的存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至5任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至5任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010089127.0A CN111324488B (zh) | 2020-02-12 | 2020-02-12 | 一种程序备份处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010089127.0A CN111324488B (zh) | 2020-02-12 | 2020-02-12 | 一种程序备份处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111324488A true CN111324488A (zh) | 2020-06-23 |
CN111324488B CN111324488B (zh) | 2023-12-08 |
Family
ID=71165178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010089127.0A Active CN111324488B (zh) | 2020-02-12 | 2020-02-12 | 一种程序备份处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111324488B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6542975B1 (en) * | 1998-12-24 | 2003-04-01 | Roxio, Inc. | Method and system for backing up data over a plurality of volumes |
FR2856753A1 (fr) * | 2003-06-25 | 2004-12-31 | Gaz De France | Dispositif de fixation d'un equipement sur une cloison a decouplage vibratoire |
US20050125464A1 (en) * | 2003-12-04 | 2005-06-09 | International Business Machines Corp. | System, method and program for backing up a computer program |
CN101127004A (zh) * | 2007-09-24 | 2008-02-20 | 中兴通讯股份有限公司 | 一种在闪存上存取数据的系统及方法 |
US7546323B1 (en) * | 2004-09-30 | 2009-06-09 | Emc Corporation | System and methods for managing backup status reports |
US20120158666A1 (en) * | 2010-12-17 | 2012-06-21 | International Business Machines Corporation | Restoring a restore set of files from backup objects stored in sequential backup devices |
CN103336749A (zh) * | 2013-05-31 | 2013-10-02 | 南京熊猫电子股份有限公司 | 嵌入式系统flash参数存取方法 |
CN103744694A (zh) * | 2013-12-24 | 2014-04-23 | 武汉烽火众智数字技术有限责任公司 | 基于Nand闪存的动态分区搜索装置及其方法 |
CN104461654A (zh) * | 2014-12-27 | 2015-03-25 | 西安大唐电信有限公司 | 一种obd设备功能单元及固件分类可选升级方法 |
WO2017000567A1 (zh) * | 2015-07-02 | 2017-01-05 | 中兴通讯股份有限公司 | 一种实现bootrom升级的方法及装置 |
CN106776122A (zh) * | 2016-11-23 | 2017-05-31 | 武汉光迅科技股份有限公司 | 一种基于Flash启动过程中主备保护的方法 |
CN108111336A (zh) * | 2017-12-05 | 2018-06-01 | 宁波三星医疗电气股份有限公司 | 一种电力线载波通信模块程序启动、升级与切换方法 |
CN109032632A (zh) * | 2018-07-13 | 2018-12-18 | 深圳高新兴物联科技有限公司 | 一种fota升级方法、无线通信终端及存储介质 |
CN109408282A (zh) * | 2018-08-31 | 2019-03-01 | 深圳市有方科技股份有限公司 | 应用程序备份恢复方法、设备及计算机可读存储介质 |
-
2020
- 2020-02-12 CN CN202010089127.0A patent/CN111324488B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6542975B1 (en) * | 1998-12-24 | 2003-04-01 | Roxio, Inc. | Method and system for backing up data over a plurality of volumes |
FR2856753A1 (fr) * | 2003-06-25 | 2004-12-31 | Gaz De France | Dispositif de fixation d'un equipement sur une cloison a decouplage vibratoire |
US20050125464A1 (en) * | 2003-12-04 | 2005-06-09 | International Business Machines Corp. | System, method and program for backing up a computer program |
US7546323B1 (en) * | 2004-09-30 | 2009-06-09 | Emc Corporation | System and methods for managing backup status reports |
CN101127004A (zh) * | 2007-09-24 | 2008-02-20 | 中兴通讯股份有限公司 | 一种在闪存上存取数据的系统及方法 |
US20120158666A1 (en) * | 2010-12-17 | 2012-06-21 | International Business Machines Corporation | Restoring a restore set of files from backup objects stored in sequential backup devices |
CN103336749A (zh) * | 2013-05-31 | 2013-10-02 | 南京熊猫电子股份有限公司 | 嵌入式系统flash参数存取方法 |
CN103744694A (zh) * | 2013-12-24 | 2014-04-23 | 武汉烽火众智数字技术有限责任公司 | 基于Nand闪存的动态分区搜索装置及其方法 |
CN104461654A (zh) * | 2014-12-27 | 2015-03-25 | 西安大唐电信有限公司 | 一种obd设备功能单元及固件分类可选升级方法 |
WO2017000567A1 (zh) * | 2015-07-02 | 2017-01-05 | 中兴通讯股份有限公司 | 一种实现bootrom升级的方法及装置 |
CN106776122A (zh) * | 2016-11-23 | 2017-05-31 | 武汉光迅科技股份有限公司 | 一种基于Flash启动过程中主备保护的方法 |
CN108111336A (zh) * | 2017-12-05 | 2018-06-01 | 宁波三星医疗电气股份有限公司 | 一种电力线载波通信模块程序启动、升级与切换方法 |
CN109032632A (zh) * | 2018-07-13 | 2018-12-18 | 深圳高新兴物联科技有限公司 | 一种fota升级方法、无线通信终端及存储介质 |
CN109408282A (zh) * | 2018-08-31 | 2019-03-01 | 深圳市有方科技股份有限公司 | 应用程序备份恢复方法、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111324488B (zh) | 2023-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109032632B (zh) | 一种fota升级方法、无线通信终端及存储介质 | |
CN106155915B (zh) | 数据存储的处理方法及装置 | |
CN103299276A (zh) | 嵌入式装置的软件更新过程 | |
CN112612524A (zh) | Linux系统启动的方法、装置、设备及存储介质 | |
CN109582332B (zh) | 互联网摄像机的系统升级方法及装置 | |
CN104915226A (zh) | 一种网络设备软件启动方法、装置及网络设备 | |
CN112860291B (zh) | 固件升级方法及装置 | |
CN114116305A (zh) | 基于pfr的bios固件恢复方法、系统、终端及存储介质 | |
CN111104147A (zh) | 一种bmc升级方法、装置、终端及存储介质 | |
CN113672270A (zh) | 升级方法,计算机系统和远端升级设备 | |
CN108664255B (zh) | 一种软件升级方法及装置 | |
CN117762455A (zh) | Bios固件文件的更新方法及装置、存储介质、电子设备 | |
CN107623705B (zh) | 基于视频云存储系统的存储模式升级方法、装置和系统 | |
CN111324488B (zh) | 一种程序备份处理方法及装置 | |
CN108595292B (zh) | 一种系统的优化方法、移动终端及计算机存储介质 | |
CN112527446A (zh) | 时区同步方法、设备及终端设备 | |
CN113490112B (zh) | 一种无线耳机及无线耳机的数据处理方法、存储介质 | |
CN116072202A (zh) | 一种存储设备的管理方法、系统及存储介质 | |
CN105786650A (zh) | 数据的管理方法及装置 | |
CN107438011B (zh) | 配置信息的确定方法及装置、网管、系统 | |
CN115878381A (zh) | 基于srm盘的数据恢复方法及装置、存储介质、电子装置 | |
CN115437674A (zh) | 一种固件升级方法、装置、介质及电子设备 | |
CN110795155B (zh) | 系统启动方法及装置、电子设备、存储介质 | |
CN113778485A (zh) | 电子芯片的系统运行方法、装置、电子芯片和存储介质 | |
CN117234544B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |