CN111131861B - 恢复分区的升级方法、终端和存储介质 - Google Patents
恢复分区的升级方法、终端和存储介质 Download PDFInfo
- Publication number
- CN111131861B CN111131861B CN201911425723.5A CN201911425723A CN111131861B CN 111131861 B CN111131861 B CN 111131861B CN 201911425723 A CN201911425723 A CN 201911425723A CN 111131861 B CN111131861 B CN 111131861B
- Authority
- CN
- China
- Prior art keywords
- upgrade
- recovery partition
- upgrading
- data content
- recovery
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/241—Operating system [OS] processes, e.g. server setup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种恢复分区的升级方法。该方法包括:获取所述恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容;根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位,所述升级标志为用于标识所述恢复分区已经升级完毕;根据所述升级标志位进行所述系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位。本发明还公开了一种终端及计算机可读存储介质。本发明能够实现解决现有系统升级过程中,恢复分区进行升级会存在升级时间长,重启次数多,有断电风险和升级滞后性等问题。
Description
技术领域
本发明涉及系统升级技术领域,尤其涉及一种恢复分区的升级方法、终端和计算机可读存储介质。
背景技术
目前,随着电视的发展,基于Android平台的智能电视在生活中已越来越常见。众所周知,Android系统中有个重要的分区恢复分区是用来存放系统备份文件,以便在系统崩溃时方便及时地恢复操作系统。特别是在系统升级更新时,恢复分区显得尤为重要。
目前,Android系统在升级更新时,一般采用先升级系统的恢复分区之外的其他分区内容,再使用boot分区备份恢复分区的数据后进行恢复分区的升级。但是这种升级方式会存在升级过程中重启次数较多,升级所需时间较长,严重影响用户的使用体验。
发明内容
本发明的主要目的在于提供一种恢复分区的升级方法、终端和计算机可读存储介质,旨在实现解决现有系统升级过程中,恢复分区进行升级会存在升级时间长,重启次数多,有断电风险和升级滞后性等问题。
为实现上述目的,本发明提供一种恢复分区的升级方法,所述恢复分区的升级方法包括以下步骤:
获取恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容;
根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位,所述升级标志为用于标识所述恢复分区已经升级完毕;
根据所述升级标志位进行所述系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位。
可选地,所述获取恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容的步骤包括:
获取所述恢复分区的升级包;
对所述升级包进行校验,判断所述升级包是否校验合格;
若所述升级包校验合格,则对所述升级包进行解压,获得恢复分区的升级数据内容。
可选地,所述对所述升级包进行校验,判断所述升级包是否校验合格的步骤包括:
对所述升级包进行完整性校验,判断所述升级包是否完整;
若所述升级包完整,则对所述升级包进行适用性校验,判断所述升级包是否与待升级终端匹配;
若所述升级包与待升级终端匹配,则判断所述升级包校验合格。
可选地,所述根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位的步骤包括:
对所述恢复分区的升级数据内容进行校验,判断所述恢复分区的升级数据内容是否完整;
若所述恢复分区的升级数据内容完整,则根据所述恢复分区的升级数据内容对恢复分区进行校验,并判断所述恢复分区是否与所述恢复分区的升级数据内容匹配;
若所述恢复分区与所述恢复分区的升级数据内容不匹配,则根据所述恢复分区的升级数据内容对所述恢复分区进行升级;
若所述恢复分区与所述恢复分区的升级数据内容匹配,则对所述恢复分区不做任何处理。
可选地,所述对所述恢复分区的升级数据内容进行校验,判断所述恢复分区的升级数据内容是否完整的步骤包括:
根据所述恢复分区的升级数据内容,获取所述恢复分区的升级数据内容中的升级恢复分区可执行脚本;
根据所述升级恢复分区可执行脚本,获得所述升级恢复分区可执行脚本中的校验码;
对所述恢复分区的升级数据内容进行重新计算,获得重新计算后的校验码;
通过所述重新计算后的校验码与所述升级恢复分区可执行脚本中的校验码是否一致,判断所述恢复分区的升级数据内容是否完整。
可选地,所述根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置系统升级标志位的步骤之后还包括:
在所述恢复分区升级完成后,进行系统重启。
可选地,所述根据所述系统升级标志位进行升级系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位的步骤之后包括:
在所述升级系统下的其他分区升级完成后,清除所述升级包。
可选地,所述根据所述系统升级标志位进行升级系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位的步骤之后还包括:
在所述升级系统下的其他分区升级完成后,进行系统重启。
此外,为实现上述目的,本发明还提供一种终端,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的恢复分区的升级程序,所述恢复分区的升级程序被所述处理器执行时实现如上所述的恢复分区的升级方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有恢复分区的升级程序,所述恢复分区的升级程序被处理器执行时实现上述的恢复分区的升级方法的步骤。
本发明提供一种恢复分区的升级方法、装置和计算机存储介质。在该方法中,获取恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容;根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位,所述升级标志为用于标识所述恢复分区已经升级完毕;根据所述升级标志位进行所述系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位。通过上述方式,本发明通过先进行恢复分区的升级,再进行系统下的其他分区的升级,通过提前恢复分区的升级时序的方式,因为升级后恢复分区不影响其他分区的正常使用,因此系统可以无需重启,从而使得在整个升级过程中将恢复分区先进行升级相对于将其他分区升级再升级恢复分区的方式,减少了一次重启,优化了升级过程中的升级时间,提高了用户体验,并且先对恢复分区进行升级再对其他分区进行升级可以避免断电风险,这是因为对恢复分区进行升级的过程不会影响其他分区的正常使用,即使在恢复分区进行升级过程中发生断电也不会影响其他分区的正常使用,而若先对其他分区进行升级的过程中发生断电,会导致正在升级的其他分区损坏。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;
图2为本发明恢复分区的升级方法第一实施例的流程示意图;
图3为本发明恢复分区的升级方法第二实施例的流程示意图;
图4为本发明恢复分区的升级方法第三实施例的流程示意图;
图5为本发明恢复分区的升级方法第四实施例的流程示意图;
图6为本发明恢复分区的升级方法第五实施例的流程示意图;
图7为本发明恢复分区的升级方法第六实施例的流程示意图;
图8为本发明恢复分区的升级方法第七实施例的流程示意图;
图9为本发明恢复分区的升级方法第八实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图。
本发明实施例终端可以是PC,也可以是智能手机、平板电脑、便携计算机等具有数据处理功能的终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、Wi-Fi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及恢复分区的升级程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的恢复分区的升级程序,并执行以下操作:
获取恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容;
根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位,所述升级标志为用于标识所述恢复分区已经升级完毕;
根据所述升级标志位进行所述系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位。
进一步地,处理器1001可以调用存储器1005中存储的恢复分区的升级程序,还执行以下操作:
所述获取恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容的步骤包括:
获取所述恢复分区的升级包;
对所述升级包进行校验,判断所述升级包是否校验合格;
若所述升级包校验合格,则对所述升级包进行解压,获得恢复分区的升级数据内容。
进一步地,处理器1001可以调用存储器1005中存储的恢复分区的升级程序,还执行以下操作:
所述对所述升级包进行校验,判断所述升级包是否校验合格的步骤包括:
对所述升级包进行完整性校验,判断所述升级包是否完整;
若所述升级包完整,则对所述升级包进行适用性校验,判断所述升级包是否与待升级终端匹配;
若所述升级包与待升级终端匹配,则判断所述升级包校验合格。
进一步地,处理器1001可以调用存储器1005中存储的恢复分区的升级程序,还执行以下操作:
所述根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位的步骤包括:
对所述恢复分区的升级数据内容进行校验,判断所述恢复分区的升级数据内容是否完整;
若所述恢复分区的升级数据内容完整,则根据所述恢复分区的升级数据内容对恢复分区进行校验,并判断所述恢复分区是否与所述恢复分区的升级数据内容匹配;
若所述恢复分区与所述恢复分区的升级数据内容不匹配,则根据所述恢复分区的升级数据内容对所述恢复分区进行升级;
若所述恢复分区与所述恢复分区的升级数据内容匹配,则对所述恢复分区不做任何处理。
进一步地,处理器1001可以调用存储器1005中存储的恢复分区的升级程序,还执行以下操作:
所述对所述恢复分区的升级数据内容进行校验,判断所述恢复分区的升级数据内容是否完整的步骤包括:
根据所述恢复分区的升级数据内容,获取所述恢复分区的升级数据内容中的升级恢复分区可执行脚本;
根据所述升级恢复分区可执行脚本,获得所述升级恢复分区可执行脚本中的校验码;
对所述恢复分区的升级数据内容进行重新计算,获得重新计算后的校验码;
通过所述重新计算后的校验码与所述升级恢复分区可执行脚本中的校验码是否一致,判断所述恢复分区的升级数据内容是否完整。
进一步地,处理器1001可以调用存储器1005中存储的恢复分区的升级程序,还执行以下操作:
所述根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置系统升级标志位的步骤之后还包括:
在所述恢复分区升级完成后,进行系统重启。
进一步地,处理器1001可以调用存储器1005中存储的恢复分区的升级程序,还执行以下操作:
所述根据所述系统升级标志位进行升级系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位的步骤之后包括:
在所述升级系统下的其他分区升级完成后,清除所述升级包。
进一步地,处理器1001可以调用存储器1005中存储的恢复分区的升级程序,还执行以下操作:
所述根据所述系统升级标志位进行升级系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位的步骤之后还包括:
在所述升级系统下的其他分区升级完成后,进行系统重启。
本发明恢复分区的升级设备的具体实施例与下述恢复分区的升级方法各实施例基本相同,在此不作赘述。
参照图2,图2为本发明恢复分区的升级方法第一实施例的流程示意图,所述恢复分区的升级方法包括:
步骤S100,获取恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容;
在本实施方法适用于基于Android系统的终端的系统升级,也适用于其他系统的终端的系统升级。恢复分区即recovery分区是系统划分出来的,用于进行数据备份,存储还原使用文件的区域位置,其它分区的升级和运行都需要在已完成升级的recovery分区情况下进行。
本实施例中,先通过从服务器下载的方式获取所述恢复分区的升级包。获取恢复分区的升级包之后,可以对所述升级包进行解压,获得恢复分区的升级数据内容。具体地,对所述升级包进行解压,解压出升级包中的Recovery.img等数据内容,所述Recovery.img等数据内容可以作为恢复分区的升级数据内容。当然,还可以解压出其他数据内容,其他数据内容也可以作为恢复分区的升级数据内容。
步骤S200,根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位,所述升级标志为用于标识所述恢复分区已经升级完毕;
在获得恢复分区的升级数据内容后,可对恢复分区的升级数据内容利用Install.-recovery.sh这个脚本对所述恢复分区进行升级,并在升级完成后,设置恢复分区所属系统的升级标志位,所述升级标志为用于标识所述恢复分区已经升级完毕。当然,也可以利用其他脚本数据对所述恢复分区进行升级。
步骤S300,根据所述升级标志位进行所述系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位。
根据所述升级标志位,可以进行升级系统下的其他分区的升级,即Uboot根据系统的升级标志位进入Recovery升级,升级系统下system、tclconfig等分区,并在升级完成后,清除所述升级标志位。相应地,对升级系统下的其他分区的升级,也可以利用对应的其他脚本数据进行升级。
本发明提供一种恢复分区的升级方法、装置和计算机存储介质。在该方法中,获取恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容;根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位,所述升级标志为用于标识所述恢复分区已经升级完毕;根据所述升级标志位进行所述系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位。通过上述方式,本发明通过先进行恢复分区的升级,再进行系统下的其他分区的升级,通过提前恢复分区的升级时序的方式,因为升级后恢复分区不影响其他分区的正常使用,因此系统可以无需重启,从而使得在整个升级过程中将恢复分区先进行升级相对于将其他分区升级再升级恢复分区的方式,减少了一次重启,优化了升级过程中的升级时间,提高了用户体验,并且先对恢复分区进行升级再对其他分区进行升级可以避免断电风险,这是因为对恢复分区进行升级的过程不会影响其他分区的正常使用,即使在恢复分区进行升级过程中发生断电也不会影响其他分区的正常使用,而若先对其他分区进行升级的过程中发生断电,会导致正在升级的其他分区损坏。
请参阅图3,图3为本发明恢复分区的升级方法第二实施例的流程示意图。
基于上述实施例,本实施例中,步骤S100包括:
步骤S400,获取所述恢复分区的升级包;
步骤S500,对所述升级包进行校验,判断所述升级包是否校验合格;
步骤S600,若所述升级包校验合格,则对所述升级包进行解压,获得恢复分区的升级数据内容。
在本实施例中,通过从服务器下载恢复分区的升级包,同时会从服务器获取所述升级包的一个校验码。在下载恢复分区的升级包和升级包的校验码后,终端会对所述升级包进行校验,判断所述升级包是否校验合格。对升级包进行效验主要是对升级包的完整性效验以及校验所述升级包是否适用终端的设备型号和系统。对升级包的完整性校验主要是确保下载的升级包是完整的。具体地,可以先通过MD5工具对所述升级包进行计算,获得一个校验码,然后在判断计算获得的校验码与从服务器获得的所述升级包的校验码是否一致,若一致,则说明下载的升级包是完整的,在升级包校验完整后,根据终端的设备型号和/或系统类型以及所述升级包适配的设备型号和/或系统类型,判断获取的所述升级包是否适用于终端。也可以先根据终端自身的设备型号或系统类型以及所述升级包的所要求的设备型号或系统类型,判断所述升级包是否适用于终端,再校验所述升级包的完整性。只有升级包适用于终端并且完整性效验合格,才能确定所述升级包效验合格,在确定所述升级包效验合格后,才会对所述升级包进行解压,获得恢复分区的升级数据内容。若升级包不适用于终端和/或完整性效验不合格,则确定所述升级包效验不合格,在确定所述升级包效验不合格后,不会对所述升级包进行解压,而是直接删除所述升级包,重新从服务器下载升级包。
请参阅图4,图4为本发明恢复分区的升级方法第三实施例的流程示意图。
基于上述实施例,本实施例中,步骤S500包括:
步骤S510,对所述升级包进行完整性校验,判断所述升级包是否完整;
在本实施例中,对所述升级包进行校验,判断所述升级包是否校验合格,可以先利用MD5校验工具对所述升级包进行完整性校验,判断所述升级包是否完整。MD5校验工具为一种升级包完整性的使用工具,当然,本申请中,还可以利用其他校验工具进行校验。
步骤S520,若所述升级包完整,则对所述升级包进行适用性校验,判断所述升级包是否与待升级终端匹配;
若所述升级包完整性校验结果为完整后,则再次对所述升级包进行适用性校验,判断所述升级包是否与终端匹配。由于每个终端的设备型号和所运行的系统不同,需要的升级包也是不同的,适用性校验就是为了校验下载的升级包是否符合需要升级的终端。具体适用性校验过程为:获取所述升级包适用的设备型号和/或系统类型以及获取终端的设备型号和/或系统类型,判断所述升级包适用的设备型号和/或系统类型与终端的设备型号和/或系统类型是否一致,若一致,则确定所述升级包与终端匹配,若不一致,则确定所述升级包与终端不匹配。例如本实施例中的升级包为Android系统的升级包,而当前的设备则为ios系统,则当前升级包的Android系统与待升级终端的ios系统是不匹配的,本实施例中,除了根据系统类型和设备型号校验,还可以根据系统版本进行适用性校验,本申请不作限定。
步骤S530,若所述升级包与待升级终端匹配,则判断所述升级包校验合格。
若校验所述升级包与待升级终端匹配,则可以判断所述升级包校验合格。在本实施例中,通过校验升级包的完整性和设备匹配度初步地进行升级包的校验判断。
请参阅图5,图5为本发明恢复分区的升级方法第四实施例的流程示意图。
基于上述实施例,本实施例中,步骤S200包括:
步骤S210,对所述恢复分区的升级数据内容进行校验,判断所述恢复分区的升级数据内容是否完整;
在本实施例中,根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位,可以先对所述恢复分区的升级数据内容进行校验,判断所述恢复分区的升级数据内容是否完整,即在获得所述恢复分区的升级数据内容后,进行一次恢复分区的升级数据内容的完整性校验,判断解压出来的恢复分区的升级数据内容是否被完整解压出来,即解压过程是否正常,解压结果是否合格。
步骤S220,若所述恢复分区的升级数据内容完整,则根据所述恢复分区的升级数据内容对恢复分区进行校验,并判断所述恢复分区是否与所述恢复分区的升级数据内容匹配;
在对恢复分区的升级数据内容进行了完整校验之后,再利用所述恢复分区的升级数据内容对当前恢复分区的数据内容进行校验,判断所述恢复分区的数据内容是否与所述恢复分区的升级数据内容相同,从而根据判断结果,确定是否需要进行升级。
步骤S230,若所述恢复分区与所述恢复分区的升级数据内容不匹配,则根据所述恢复分区的升级数据内容对所述恢复分区进行升级;
若所述恢复分区中的数据内容与所述恢复分区的升级数据内容不相同,说明当前恢复分区并不是最新版本,需要进行升级,因此,根据所述恢复分区的升级数据内容对所述恢复分区进行升级。
若所述恢复分区与所述恢复分区的升级数据内容匹配,则执行步骤S240:对所述恢复分区不做任何处理。
若所述恢复分区的数据内容与所述恢复分区的升级数据内容匹配,说明目前恢复分区是最新版本,与恢复分区的升级数据内容是一致的,因此不需进行升级,则对所述恢复分区不做任何处理。
在本实施例中,利用脚本根据所述恢复分区的升级数据内容对恢复分区进行升级,脚本第一步首先校验升级数据内容例如recovery.img的完整性,之后再对恢复分区是否需要升级进行校验,例如采用applypatch的方式,当检测到分区实际内容和解压出来的升级数据内容不匹配时,则进行升级,例如升级数据内容为recovery.img,而当前恢复分区的数据内容中没有recovery.img,则确定当前恢复分区需要进行升级。
请参阅图6,图6为本发明恢复分区的升级方法第五实施例的流程示意图。
基于上述实施例,本实施例中,步骤S210包括:
步骤S211,根据所述恢复分区的升级数据内容,获取所述恢复分区的升级数据内容中的升级恢复分区可执行脚本;
在本实施例中,对所述恢复分区的升级数据内容进行校验,判断所述恢复分区的升级数据内容是否完整,可以先从所述恢复分区的升级数据内容中获取升级恢复分区可执行脚本。
步骤S212,根据所述升级恢复分区可执行脚本,获得所述升级恢复分区可执行脚本中的校验码;
在获得升级恢复分区可执行脚本后,可从所述升级恢复分区可执行脚本中获得可执行脚本中的校验码。升级数据内容中会包含一个校验码,保存在升级恢复分区可执行脚本中,使用sha1工具可以获得升级恢复分区可执行脚本数据中的校验码。
步骤S213,对所述恢复分区的升级数据内容进行重新计算,获得重新计算后的校验码;
对升级包进行解压,获得升级数据内容后,对升级数据内容进行计算,获得重新计算后的校验码。例如若升级数据内容中自带的校验码为MD5校验码,则在对升级数据包解压出recovery.img之后,对recovery.img进行哈希运算获得一个计算出来的MD5校验码。若升级数据内容中自带的校验码还可为CRC(Cyclic Redundancy Check,循环冗余校验码),则对recovery.img进行计算获得一个CRC校验码。
步骤S214,通过所述重新计算后的校验码与所述升级恢复分区可执行脚本中的校验码是否一致,判断所述恢复分区的升级数据内容是否完整;
获得重新计算后的校验码和可执行脚本中的校验码之后,将所述重新计算后的校验码与所述升级恢复分区可执行脚本中的校验码进行比较,判断所述重新计算后的校验码与所述升级恢复分区可执行脚本中的校验码是否一致,进而根据校验码是否一致,判断升级数据内容是否完整,例如判断升级数据内容中自带的MD5校验码与根据升级数据内容重新计算出的MD5校验码是否一致。
若重新计算后的校验码与所述升级恢复分区可执行脚本中的校验码一致,则说明解压升级数据包的过程没有问题,解压后获得升级数据内容是完整的。
若重新计算后的校验码与所述升级恢复分区可执行脚本中的校验码不一致,则说明解压后的所述恢复分区的升级数据内容不完整,可能下载过程出现问题导致下载的升级数据包不完整,也有可能是解压升级数据包的过程出现问题,导致解压出的升级数据内容不完整。
请参阅图7,图7为本发明恢复分区的升级方法第六实施例的流程示意图。
基于上述实施例,本实施例中,步骤S200之后还包括:
步骤S600,在所述恢复分区升级完成后,进行系统重启。
在本实施例中,在恢复分区升级完成后,可以进行系统重启,用于更进一步的确保升级的完成。
请参阅图8,图8为本发明恢复分区的升级方法第七实施例的流程示意图。
基于上述实施例,本实施例中,步骤S300之后还包括:
步骤S700,在所述升级系统下的其他分区升级完成后,清除所述升级包。
在本实施例中,在升级系统下的其他分区升级完成后,可以清除所述升级包,减少已使用的升级包占用系统内存,提高系统性能,也避免下次进行升级时,由于存在多个版本的升级包导致升级过程混乱。
请参阅图9,图9为本发明恢复分区的升级方法第八实施例的流程示意图。
基于上述实施例,本实施例中,步骤S300之后还包括:
步骤S800,在所述升级系统下的其他分区升级完成后,进行系统重启。
在本实施例中,在升级系统下的其他分区升级完成后,可以进行系统重启,用于更进一步的确保升级的完成。
此外,本发明实施例还提出一种计算机可读存储介质。
本发明计算机可读存储介质上存储有恢复分区的升级程序,所述恢复分区的升级程序被处理器执行时实现如上所述的恢复分区的升级方法的步骤。
其中,在所述处理器上运行的恢复分区的升级程序被执行时所实现的方法可参照本发明恢复分区的升级方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种恢复分区的升级方法,其特征在于,所述恢复分区的升级方法包括以下步骤:
获取恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容;
根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位,所述升级标志为用于标识所述恢复分区已经升级完毕;
根据所述升级标志位进行所述系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位;
其中,所述获取恢复分区的升级包,并根据所述升级包获得恢复分区的升级数据内容的步骤包括:
获取所述恢复分区的升级包;
对所述升级包进行校验,判断所述升级包是否校验合格;
若所述升级包校验不合格,则删除所述升级包,并重新获取所述恢复分区的升级包;
所述对所述升级包进行校验的步骤包括:完整性效验和适用性校验;
所述适用性校验包括校验所述升级包是否适用终端的设备型号和系统。
2.如权利要求1所述的恢复分区的升级方法,其特征在于,所述对所述升级包进行校验,判断所述升级包是否校验合格的步骤之后,包括:
若所述升级包校验合格,则对所述升级包进行解压,获得恢复分区的升级数据内容。
3.如权利要求2所述的恢复分区的升级方法,其特征在于,所述对所述升级包进行校验,判断所述升级包是否校验合格的步骤包括:
对所述升级包进行完整性校验,判断所述升级包是否完整;
若所述升级包完整,则对所述升级包进行适用性校验,判断所述升级包是否与待升级终端匹配;
若所述升级包与待升级终端匹配,则判断所述升级包校验合格。
4.如权利要求2所述的恢复分区的升级方法,其特征在于,所述根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置所述恢复分区所属系统的升级标志位的步骤包括:
对所述恢复分区的升级数据内容进行校验,判断所述恢复分区的升级数据内容是否完整;
若所述恢复分区的升级数据内容完整,则根据所述恢复分区的升级数据内容对恢复分区进行校验,并判断所述恢复分区是否与所述恢复分区的升级数据内容匹配;
若所述恢复分区与所述恢复分区的升级数据内容不匹配,则根据所述恢复分区的升级数据内容对所述恢复分区进行升级;
若所述恢复分区与所述恢复分区的升级数据内容匹配,则对所述恢复分区不做任何处理。
5.如权利要求4所述的恢复分区的升级方法,其特征在于,所述对所述恢复分区的升级数据内容进行校验,判断所述恢复分区的升级数据内容是否完整的步骤包括:
根据所述恢复分区的升级数据内容,获取所述恢复分区的升级数据内容中的升级恢复分区可执行脚本;
根据所述升级恢复分区可执行脚本,获得所述升级恢复分区可执行脚本中的校验码;
对所述恢复分区的升级数据内容进行重新计算,获得重新计算后的校验码;
通过所述重新计算后的校验码与所述升级恢复分区可执行脚本中的校验码是否一致,判断所述恢复分区的升级数据内容是否完整。
6.如权利要求1所述的恢复分区的升级方法,其特征在于,所述根据所述恢复分区的升级数据内容对恢复分区进行升级,并设置系统升级标志位的步骤之后还包括:
在所述恢复分区升级完成后,进行系统重启。
7.如权利要求1所述的恢复分区的升级方法,其特征在于,所述根据所述系统升级标志位进行升级系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位的步骤之后包括:
在所述升级系统下的其他分区升级完成后,清除所述升级包。
8.如权利要求1所述的恢复分区的升级方法,其特征在于,所述根据所述系统升级标志位进行升级系统下的其他分区的升级,并在升级完成后,清除所述系统升级标志位的步骤之后还包括:
在所述升级系统下的其他分区升级完成后,进行系统重启。
9.一种终端,其特征在于,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的恢复分区的升级程序,所述恢复分区的升级程序被所述处理器执行时实现如权利要求1至8中任一项所述恢复分区的升级方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有恢复分区的升级程序,所述恢复分区的升级程序被处理器执行时实现如权利要求1至8中任一项所述恢复分区的升级方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911425723.5A CN111131861B (zh) | 2019-12-31 | 2019-12-31 | 恢复分区的升级方法、终端和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911425723.5A CN111131861B (zh) | 2019-12-31 | 2019-12-31 | 恢复分区的升级方法、终端和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111131861A CN111131861A (zh) | 2020-05-08 |
CN111131861B true CN111131861B (zh) | 2022-03-01 |
Family
ID=70507356
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911425723.5A Active CN111131861B (zh) | 2019-12-31 | 2019-12-31 | 恢复分区的升级方法、终端和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111131861B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112118137B (zh) * | 2020-09-17 | 2023-04-28 | 上海闻泰电子科技有限公司 | 固件升级方法、装置、计算机设备和可读存储介质 |
CN113691845B (zh) * | 2021-08-19 | 2023-08-18 | 杭州国芯科技股份有限公司 | 一种数字机顶盒分区升级的断电保护方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102622280A (zh) * | 2011-01-06 | 2012-08-01 | 苏州科达科技有限公司 | 一种基于双文件系统的软件版本升级的控制方法及装置 |
CN106790247A (zh) * | 2017-01-23 | 2017-05-31 | 青岛海信移动通信技术股份有限公司 | 一种Android系统升级的方法和装置 |
CN109358864A (zh) * | 2018-12-13 | 2019-02-19 | 晶晨半导体(上海)股份有限公司 | 系统升级方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094875A (zh) * | 2014-05-19 | 2015-11-25 | 中兴通讯股份有限公司 | 一种软件升级方法及装置 |
-
2019
- 2019-12-31 CN CN201911425723.5A patent/CN111131861B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102622280A (zh) * | 2011-01-06 | 2012-08-01 | 苏州科达科技有限公司 | 一种基于双文件系统的软件版本升级的控制方法及装置 |
CN106790247A (zh) * | 2017-01-23 | 2017-05-31 | 青岛海信移动通信技术股份有限公司 | 一种Android系统升级的方法和装置 |
CN109358864A (zh) * | 2018-12-13 | 2019-02-19 | 晶晨半导体(上海)股份有限公司 | 系统升级方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111131861A (zh) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108108181B (zh) | 应用程序的功能更新方法、装置及计算机可读存储介质 | |
CN102945176B (zh) | 终端设备开机、升级方法和设备 | |
US11379216B2 (en) | Software update agent device and software patching method through the same | |
CN111131861B (zh) | 恢复分区的升级方法、终端和存储介质 | |
CN104850427B (zh) | 一种代码升级方法及装置 | |
CN111813428A (zh) | 终端固件的升级方法、装置、电子设备及存储介质 | |
CN111538523A (zh) | 差分升级方法、设备及存储介质 | |
CN106843947B (zh) | 代码缺陷的处理方法和装置 | |
CN110502263B (zh) | 升级包制作方法、系统及计算机可读存储介质 | |
CN111796853A (zh) | 固件升级方法、系统、设备及计算机存储介质 | |
CN114915554A (zh) | 远程升级方法、装置、计算机设备和存储介质 | |
CN114780019A (zh) | 电子设备的管理方法、装置、电子设备及存储介质 | |
EP3812916A1 (en) | Data structuring method for difference between old and new data, and device therefor | |
CN111324491B (zh) | 程序漏洞修复方法、装置及计算机可读存储介质 | |
CN111124764A (zh) | 系统还原方法、智能电视及计算机存储介质 | |
CN112882768B (zh) | 进度条加载方法、装置、设备及计算机可读存储介质 | |
CN111522564A (zh) | 系统升级状态的识别方法、装置和计算机可读存储介质 | |
CN110673869B (zh) | 库文件的加载方法、装置及系统 | |
KR101386464B1 (ko) | 이동단말기에서 터치패널의 응용 프로그램 다운로드 장치및 방법 | |
CN113867756A (zh) | 软件升级方法、终端设备及可读存储介质 | |
CN112711430A (zh) | 基于adb的非网络设备升级方法、系统及可读存储介质 | |
CN109032651B (zh) | 应用更新方法、智能终端及计算机可读存储介质 | |
CN111930399A (zh) | 操作系统修复方法、装置、系统及计算机可读存储介质 | |
CN110825406A (zh) | 一种软件升级的方法及相关设备 | |
CN111208945A (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 |