一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

差分升级的修复方法、装置、电子设备及可读存储介质与流程

2022-07-23 02:55:04 来源:中国专利 TAG:


1.本技术涉及通信技术领域,尤其涉及一种差分升级的修复方法、装置、电子设备及可读存储介质。


背景技术:

2.差分升级作为一种通用的远程下载(over the air,ota)升级技术,广泛应用于各类设备版本更新场景中,当前主要的移动设备都是使用差分升级进行系统更新,例如android智能手机、手表和智能电视等。差分升级的主要特点为升级包只包含版本的差异部分,因此升级包比全量升级包要小很多。但是,在差分升级过程中,如果硬件存储器件出现异常会导致差分校验失败,进而导致整个升级失败。


技术实现要素:

3.本技术的主要目的在于提供一种差分升级的修复方法、装置、电子设备及可读存储介质,旨在实现差分升级异常的自动修复,以提高差分升级的效率和成功率。
4.为实现上述目的,本技术提供一种差分升级的修复方法,所述差分升级的修复方法包括:
5.获取升级位置和校验信息,其中,所述升级位置是原版本与目标版本存在数据差异的位置,所述校验信息为原版本中在所述升级位置的数据的原始哈希值;
6.根据所述原始哈希值,校验终端设备的系统中在所述升级位置的当前哈希值是否与所述原始哈希值一致;
7.若校验不一致,则获取所述升级位置的修复数据,根据所述修复数据对终端设备的系统进行修复,获得修复后的系统;
8.将修复后的系统从原版本升级为目标版本。
9.可选地,所述获取升级位置和校验信息的步骤包括:
10.按照预设请求规则,向服务器发送升级请求,其中,所述升级请求包含终端设备当前运行的原版本;
11.当所述服务器存在相对于所述原版本而更新的目标版本时,获取所述服务器响应于所述升级请求而返回的升级位置和校验信息。
12.可选地,所述获取升级位置和校验信息的步骤之后包括:
13.对所述升级位置的第一签名信息进行合法性校验,以及对所述校验信息的第二签名信息进行合法性校验;
14.若所述第一签名信息和所述第二签名信息均校验合法,则执行:所述获取升级位置和校验信息的步骤。
15.可选地,所述第一签名信息为服务器采用第一预设签名算法对所述升级位置进行签名所得,所述对所述升级位置的第一签名信息进行合法性校验的步骤包括:
16.采用所述第一预设签名算法对所述升级位置进行签名,得到第三签名信息;
17.若所述第三签名信息和所述第一签名信息一致,则确定所述第一签名信息校验合法;
18.若所述第三签名信息和所述第一签名信息不一致,则确定所述第一签名信息校验非法。
19.可选地,所述升级位置为待升级block块的block位置,所述获取所述升级位置的修复数据,根据所述修复数据对终端设备的系统进行修复,获得修复后的系统的步骤包括:
20.获取校验不一致的所述block位置,并将校验不一致的所述block位置作为待修复block位置;
21.获取所述待修复block位置对应的修复数据,根据所述待修复block位置对应的修复数据,对终端设备的系统中的所述待修复block块进行修复,获得修复后的系统。
22.可选地,所述获取所述待修复block位置的修复数据的步骤包括:
23.将所述待修复block位置发送至服务器;
24.获取所述服务器响应于所述待修复block位置而返回的所述待修复block位置的修复数据。
25.可选地,所述根据所述待修复block位置对应的修复数据,对终端设备的系统中的所述待修复block块进行修复,获得修复后的系统的步骤:
26.重启终端设备进入恢复模式;
27.将所述待修复block位置对应的修复数据,覆写至所述终端设备中的所述待修复block位置,获得修复后的系统。
28.本技术还提供一种差分升级的修复装置,所述差分升级的修复装置包括:
29.获取模块,用于获取升级位置和校验信息,其中,所述升级位置是原版本与目标版本存在数据差异的位置,所述校验信息为原版本中在所述升级位置的数据的原始哈希值;
30.校验模块,用于根据所述原始哈希值,校验终端设备的系统中在所述升级位置的当前哈希值是否与所述原始哈希值一致;
31.修复模块,用于若校验不一致,则获取所述升级位置的修复数据,根据所述修复数据对终端设备的系统进行修复,获得修复后的系统;
32.升级模块,用于将修复后的系统从原版本升级为目标版本。
33.本技术还提供一种电子设备,所述电子设备为实体设备,所述电子设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述差分升级的修复方法的步骤。
34.本技术还提供一种可读存储介质,所述可读存储介质为计算机可读存储介质,所述计算机可读存储介质上存储有实现差分升级的修复方法的程序,所述实现差分升级的修复方法的程序被处理器执行以实现如上所述差分升级的修复方法的步骤
35.本技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述的差分升级的修复方法的步骤。
36.本技术提供的差分升级的修复方法,为了避免由于终端设备所使用的原版本的原始数据被修改导致差分升级失败,本技术通过获取升级位置和校验信息,其中,该升级位置是原版本与目标版本存在数据差异的位置,该校验信息为原版本中在升级位置的数据的原
始哈希值,根据该原始哈希值,校验终端设备的系统中在升级位置的当前哈希值是否与原始哈希值一致,若校验不一致,则获取该升级位置的修复数据,并根据该修复数据对终端设备的系统进行修复,获得修复后的系统,再将修复后的系统从原版本升级为目标版本,从而在终端设备进行差分升级之前,获取原版本的系统中,与目标版本的系统存在差异的升级位置,并利用该升级位置的修复数据对终端设备的系统进行修复,修复到与原版本的系统一致,再对该修复后的系统进行差分升级,通过先修复再差分升级,能够确保该终端设备使用差分升级方式的有效性,实现差分升级异常的自动修复,进而提高了差分升级的效率和成功率。
附图说明
37.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
38.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
39.图1为本技术差分升级的修复方法第一实施例的流程示意图;
40.图2为本技术差分升级的修复方法第二实施例中步骤s10的细化流程示意图;
41.图3为本技术差分升级的修复方法第三实施例中步骤s30的细化流程示意图;
42.图4为本技术实施例中差分升级的修复装置涉及的硬件运行环境的设备结构示意图。
43.本技术目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
44.为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其它实施例,均属于本发明保护的范围。
45.实施例一
46.空中下载技术(over-the-air technology,ota),是一种通过互联网下载升级包进行系统升级的技术。采用上述ota技术进行系统升级的终端设备,例如手机,平板电脑,智能手表,以及智能电视等,通过互联网从服务器下载系统的升级包,利用所下载的升级包对该终端设备的系统进行升级。
47.采用ota技术进行系统升级时,存在两种升级方式。一种升级方式是全量升级,另一种升级方式是差分升级。采用全量升级方式时,终端设备从服务器下载全量升级包,该全量升级包中包括系统升级后的目标版本的所有的数据,该全量升级包的数据量大,下载该全量升级包所需的时间长;并且,根据该全量升级包对系统进行升级后,终端设备的硬件可能无法支持升级后的系统,导致终端设备存在安全问题。
48.采用差分升级方式时,终端设备从服务器下载差分升级包,该差分升级包能够体
现升级前的原版本的系统,与升级后的目标版本的系统之间的差异。该差分升级包的数据量小,下载该差分数据包所需的时间短。并且,该终端设备的硬件不能支持的数据,也不会存在该差分数据包中,避免终端设备升级后存在安全性问题。
49.但是,采用差分升级方式,要求原版本的系统中,与目标版本的系统存在数据差异的部分的数据没有被修改过,与原版本的系统中的原始数据一致,若存在数据差异的部分的数据被修改过,则该差分升级方式无法使用。即,在差分升级过程中,如果终端设备的存储器出现数据异常会导致差分校验失败,进而导致整个升级失败。
50.基于此,本技术提出第一实施例中的差分升级的修复方法,请参照图1,所述差分升级的修复方法的步骤包括:
51.步骤s10,获取升级位置和校验信息,其中,所述升级位置是原版本与目标版本存在数据差异的位置,所述校验信息为原版本中在所述升级位置的数据的原始哈希值;
52.在本发明实施例中,终端设备是指具有连接移动通信网络和无线网络能力的通信终端设备,包括但不限于:手机、智能电视、平板电脑、umpc(ultra-mobile personalcomputer,超级移动个人计算机)、上网本、pda(personal digital assistant,个人数字助理)、pos(point of sales,销售终端)、可穿戴设备、ar(augmented reality,增强现实)设备和vr(virtual reality,虚拟现实)设备等。
53.在本实施例中,原版本是指在终端设备更新前,终端设备安装的系统版本。目标版本是指在终端设备更新后,终端设备安装的系统版本。终端设备的差分升级是指终端设备使用的系统从原版本更新到目标版本的过程。
54.在本实施例中,该原始哈希值是通过哈希算法计算原版本中在该升级位置的数据,而得到的哈希值。其中,本领域技术人员可知的是,该哈希算法可包括aes、sha、rsa和ecc等算法。本实施例可将原版本中在该升级位置的数据的原始哈希值,作为升级位置的校验信息。
55.在本实施例中,服务器中存储有终端设备升级前的原版本的系统,还存储有该终端设备升级后的目标版本的系统,将原版本的系统和目标版本的系统进行比较,确定出原版本的系统中,与目标版本的系统存在数据差异的位置,即为此次终端设备进行差分升级的升级位置。具体地,升级位置可为对系统中对block块进行升级的block块位置。本领域技术人员可以理解的是,block块是数据库中的最小存储和处理单位。
56.步骤s20,根据所述原始哈希值,校验终端设备的系统中在所述升级位置的当前哈希值是否与所述原始哈希值一致;
57.在本实施例中,该当前哈希值是通过哈希算法计算终端设备的存储器中在该升级位置的数据,而得到的哈希值。即当前哈希值是指终端设备的系统中在升级位置的当前数据的当前哈希值,而当前数据是指终端设备实际使用的系统上,升级位置对应的数据。在发生emmc数据跳变或者被破解等情况下,可能会导致终端设备中升级位置对应的当前数据,与升级位置的原始数据不一致,因此,终端设备先要对升级位置进行校验,校验该升级位置的原始数据是否发生过改变。
58.在本实施例中,终端设备将获取升级位置的当前数据,然后将相同哈希算法计算出的该当前数据的当前哈希值,将该当前哈希值与原版本中该升级位置的原始数据的原始哈希值进行比较,若该原始哈希值和该当前哈希值完全一致,则表示该升级位置的原始数
据与当前数据也是一致的,即终端设备中该升级位置的当前数据相对于原始数据没有发生改变,若原始哈希值与当前哈希值不一致,则表示该升级位置的当前数据相对于原始数据不完全一致,即终端设备中该升级位置的原始数据曾被修改。
59.步骤s30,若校验不一致,则获取所述升级位置的修复数据,根据所述修复数据对终端设备的系统进行修复,获得修复后的系统;
60.在本实施例中,该修复数据可为原版本系统中在升级位置的原始数据。该修复数据是指差分升级前由服务器发送给终端设备的,用于修复终端设备中校验不一致的升级位置所包含的数据。容易理解的是,修复后的终端设备系统中在升级位置对应的数据与原版本系统在升级位置对应的数据完全一致。
61.作为一种示例,该升级位置为对系统中block块进行升级的block块位置,该修复数据是被确定为原版本系统中在该block块位置的原始数据,然后再将该原始数据覆盖终端设备中block块位置的当前数据,获得修复后的系统。作为另一种示例,该修复数据是被确定为原版本系统中校验不一致的block块位置的原始数据,然后再将该原始数据覆盖终端设备中校验不一致的block块位置的当前数据,获得修复后的系统。
62.步骤s40,将修复后的系统从原版本升级为目标版本。
63.在本实施例中,在对终端设备的系统修复后,可通过获取该升级位置对应的更新数据,并将更新数据覆写至终端设备中的该升级位置,完成从原版本升级为目标版本的差分升级过程。
64.在本实施例中,当升级位置是对系统中block块进行升级的block块位置时,升级位置可包括block偏移地址、block所属的文件的存储地址、block数据总长度、起始block编号,以及结束block编号等。其中,该升级位置可包括多个block块位置,起始block编号指的是在文件中排列在最靠前位置的block的编号,结束block编号指的是在文件中排列在最后位置的block的编号。作为一种示例,某终端设备接收到服务器发送的block块位置(升级位置)的修复数据,其中,该block块位置为:block所属的文件的存储地址:1000,block偏移地址:120,block数据总长度:555,起始block编号:1364,结束block编号:1368。首先,终端设备根据block所属的文件的存储地址1000,找到block所属的文件;然后按照block偏移地址120,确定起始block,即起始block编号对应的block,接着,从起始block编号1364到结束block编号1368,连续的5个block均为升级位置,这5个block中数据总长度为555,利用所接收的5个block的修复数据,替换终端设备中上述5个block中的数据,完成对上述5个block的修复。该示例仅助于理解本技术,并不构成对本技术的限定,在具体实现时,差分升级过程中所有升级位置对应的升级类型,可能只有增加、删除、替换中的一种,也可能有增加、删除、替换中的任意两种或者三种,在这里不作限定,具体进行差分升级的过程中,针对差分升级中的每个升级位置,按照该升级位置对应的升级类型进行升级即可。
65.由于终端设备上在升级位置对应的数据存在被篡改的可能,例如,终端设备在升级位置被写入脏数据,从而导致ota差分升级前哈希校验失败,无法进行差分升级的问题,进而导致一些关键问题无法修复到终端设备或者一些安全补丁无法及时合入到终端设备上,影响用户对于终端设备的使用体验。
66.本技术实施例提供的差分升级的修复方法,为了避免由于终端设备所使用的原版本的原始数据被修改导致差分升级失败,本实施例通过获取升级位置和校验信息,其中,该
升级位置是原版本与目标版本存在数据差异的位置,该校验信息为原版本中在升级位置的数据的原始哈希值,根据该原始哈希值,校验终端设备的系统中在升级位置的当前哈希值是否与原始哈希值一致,若校验不一致,则获取该升级位置的修复数据,并根据该修复数据对终端设备的系统进行修复,获得修复后的系统,再将修复后的系统从原版本升级为目标版本,从而在终端设备进行差分升级之前,获取原版本的系统中,与目标版本的系统存在差异的升级位置,并利用该升级位置的修复数据对终端设备的系统进行修复,修复到与原版本的系统一致,再对该修复后的系统进行差分升级,通过先修复再差分升级,能够确保该终端设备使用差分升级方式的有效性,实现差分升级异常的自动修复,进而提高了差分升级的效率和成功率。
67.在一种可能的实施方式中,请参照图2,所述获取升级位置和校验信息的步骤包括:
68.步骤s11,按照预设请求规则,向服务器发送升级请求,其中,所述升级请求包含终端设备当前运行的原版本;
69.在本实施例中,该预设请求规则可为终端设备周期性地向服务器发送升级请求,判断服务器中是否存在原版本升级至目标版本的差分升级包。该预设请求规则又可为通过用户主动触发的方式向服务器发送升级请求,判断服务器中是否存在原版本升级至目标版本的差分升级包。该预设请求规则还可为终端设备每次开机启动时,向服务器发送升级请求,判断服务器中是否存在原版本升级至目标版本的差分升级包。
70.步骤s12,当所述服务器存在相对于所述原版本而更新的目标版本时,获取所述服务器响应于所述升级请求而返回的升级位置和校验信息。
71.本实施例通过按照预设请求规则,向服务器发送升级请求,其中,该升级请求包含终端设备当前运行的原版本,当服务器存在相对于原版本而更新的目标版本时,获取服务器响应于该升级请求而返回的升级位置和校验信息,从而可及时从服务器中获取原版本升级至目标版本的升级位置和校验信息,便于后续根据该升级位置和校验信息对终端设备进行哈希值校验,若哈希值校验失败,则对终端设备的数据异常的升级位置进行自动修复,提高差分升级的效率和成功率。
72.在一种可能的实施方式中,请参照图3,所述升级位置为待升级block块的block位置,所述获取所述升级位置的修复数据,根据所述修复数据对终端设备的系统进行修复,获得修复后的系统的步骤包括:
73.步骤s31,获取校验不一致的所述block位置,并将校验不一致的所述block位置作为待修复block位置;
74.步骤s32,获取所述待修复block位置对应的修复数据,根据所述待修复block位置对应的修复数据,对终端设备的系统中的所述待修复block块进行修复,获得修复后的系统。
75.在实际进行差分升级时,可能原版本中所有升级位置的原始数据,与终端设备实际使用的系统中升级位置的当前数据是完全一致的,此时就不需要对终端设备的系统进行修复,即可直接对终端设备进行差分升级,也就是说,哈希值全部校验一致,不存在该待修复block位置。也可能存在原版本中部分升级位置的原始数据,与终端设备中升级位置的当前数据不一致,而不是所有的升级位置都不一致,则只需要对当前数据与原始数据不一致
的升级位置进行修复,修复后再进行差分升级。所以,为了能进一步减少修复数据的数据量和修复次数,本实施例通过获取校验不一致的block位置,并将校验不一致的block位置作为待修复block位置,并获取待修复block位置对应的修复数据,根据该待修复block位置对应的修复数据,对终端设备的系统中的待修复block块进行修复,获得修复后的系统,从而只对校验不一致的block位置进行修复,进而减少了修复数据的传输量,以及提高了差分升级异常的修复效率。
76.在一种可实施的方式中,所述获取所述待修复block位置的修复数据的步骤包括:
77.步骤a10,将所述待修复block位置发送至服务器;
78.步骤a20,获取所述服务器响应于所述待修复block位置而返回的所述待修复block位置的修复数据。
79.本实施例通过将待修复block位置发送至服务器,并获取服务器响应于待修复block位置而返回的待修复block位置的修复数据,从而使得终端设备在待修复block位置的当前数据出现异常的情况下,将待修复block位置发送给服务器,服务器接收到该待修复block位置后,通过该待修复block位置,从服务器侧获取原版本的系统中该待修复block位置对应的原始数据,作为修复数据,返回给终端设备,从而只对哈希值校验不一致的升级位置进行针对性的修复,进而减少了修复数据的传输量,以及提高了差分升级异常的修复效率。
80.在一种可实施的方式中,所述根据所述待修复block位置对应的修复数据,对终端设备的系统中的所述待修复block块进行修复,获得修复后的系统的步骤:
81.步骤b10,重启终端设备进入恢复模式;
82.步骤b20,将所述待修复block位置对应的修复数据,覆写至所述终端设备中的所述待修复block位置,获得修复后的系统。
83.本实施例通过在终端设备进入恢复模式(即recovery模式)时,将该待修复block位置对应的修复数据,覆写至终端设备中的待修复block位置,获得修复后的系统,从而将终端设备系统中升级位置的当前数据,修复为与原版本系统中所有升级位置的原始数据完全一致,顺利完成差分升级异常的自动修复,进而确保对终端设备进行差分升级的有效性。
84.实施例二
85.基于本技术第一实施例,在本技术另一实施例中,与上述实施例一相同或相似的内容,可以参考上文介绍,后续不再赘述。在此基础上,所述获取升级位置和校验信息的步骤之后包括:
86.步骤c10,对所述升级位置的第一签名信息进行合法性校验,以及对所述校验信息的第二签名信息进行合法性校验;
87.步骤c20,若所述第一签名信息和所述第二签名信息均校验合法,则执行:所述获取升级位置和校验信息的步骤。
88.在本实施例中,本领域技术人员容易理解的是,在一实施例中,可通过非对称加密算法对升级位置的第一签名信息进行合法性校验,以及对校验信息的第二签名信息进行合法性校验。在另一实施例中,可通过对称加密算法对升级位置的第一签名信息进行合法性校验,以及对所述校验信息的第二签名信息进行合法性校验。其中,非对称加密算法是一种密钥的保密方法,涉及公开密钥和私有密钥,其中,公开密钥与私有密钥是一对,如果用私
有密钥对数据进行加密,只有用对应的公开密钥才能解密。例如服务器用私有密钥对升级位置进行加密,并将加密后的升级位置(即第一签名信息)发送至终端设备,那么终端设备如果能使用对应的公开密钥解密该加密后的升级位置,说明该第一签名信息校验合法,进而确认升级位置在下载过程中没有被破坏。
89.为了确保升级位置和校验信息的合法性,终端设备会对下载得到的升级位置和校验信息进行合法性校验,确认升级位置和校验信息在下载过程中没有被破坏,避免该升级位置和校验信息在传输过程中被非法篡改。如果第一签名信息校验非法,则不再执行后续的哈希值校验步骤,在确保第一签名信息校验合法的情况下,再执行后续的哈希值校验步骤,从而进一步提高了对终端设备进行数据校验的安全性,以及差分升级的有效性。
90.进一步地,所述第一签名信息为服务器采用第一预设签名算法对所述升级位置进行签名所得,所述对所述升级位置的第一签名信息进行合法性校验的步骤包括:
91.步骤d10,采用所述第一预设签名算法对所述升级位置进行签名,得到第三签名信息;
92.步骤d20,若所述第三签名信息和所述第一签名信息一致,则确定所述第一签名信息校验合法;
93.步骤d30,若所述第三签名信息和所述第一签名信息不一致,则确定所述第一签名信息校验非法。
94.本实施例通过采用第一预设签名算法对升级位置进行签名,得到第三签名信息,若第三签名信息和第一签名信息一致,则确定第一签名信息校验合法,若第三签名信息和第一签名信息不一致,则确定第一签名信息校验非法,从而采用对称加密算法,对升级位置的第一签名信息进行合法性校验,该对称加密算法是一种密钥的保密方法,采用单钥密钥加密,同一个密钥可以同时用作数据的加密和解密,也称为单密钥加密,相比于非对称加密算法,可更加简单快速地识别出升级位置的合法性,确认升级位置在下载过程中没有被破坏,进而降低了终端设备进行合法性校验的算法负载和识别效率。
95.实施例三
96.本发明实施例还提供一种差分升级的修复装置,所述差分升级的修复装置包括:
97.获取模块,用于获取升级位置和校验信息,其中,所述升级位置是原版本与目标版本存在数据差异的位置,所述校验信息为原版本中在所述升级位置的数据的原始哈希值;
98.校验模块,用于根据所述原始哈希值,校验终端设备的系统中在所述升级位置的当前哈希值是否与所述原始哈希值一致;
99.修复模块,用于若校验不一致,则获取所述升级位置的修复数据,根据所述修复数据对终端设备的系统进行修复,获得修复后的系统;
100.升级模块,用于将修复后的系统从原版本升级为目标版本。
101.可选地,所述获取模块,还用于:
102.按照预设请求规则,向服务器发送升级请求,其中,所述升级请求包含终端设备当前运行的原版本;
103.当所述服务器存在相对于所述原版本而更新的目标版本时,获取所述服务器响应于所述升级请求而返回的升级位置和校验信息。
104.可选地,所述校验模块,还用于:
reality,虚拟现实)设备等。
124.包括但不限于诸如ar设备等的智能显示设备。图4示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
125.如图4所示,电子设备可以包括处理装置(例如中央处理器、图形处理器等),其可以根据存储在只读存储器(rom)中的程序或者从存储装置加载到随机访问存储器(ram)中的程序而执行各种适当的动作和处理。在ram中,还存储有电子设备操作所需的各种程序和数据。处理装置、rom以及ram通过总线彼此相连。输入/输出(i/o)接口也连接至总线。
126.通常,以下系统可以连接至i/o接口:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置;包括例如磁带、硬盘等的存储装置;以及通信装置。通信装置可以允许电子设备与其他设备进行无线或有线通信以交换数据。虽然图中示出了具有各种系统的电子设备,但是应理解的是,并不要求实施或具备所有示出的系统。可以替代地实施或具备更多或更少的系统。
127.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储装置被安装,或者从rom被安装。在该计算机程序被处理装置执行时,执行本公开实施例的方法中限定的上述功能。
128.本发明提供的电子设备,采用上述实施例一或实施例二中的差分升级的修复方法,能实现差分升级异常的自动修复,提高了差分升级的效率和成功率。与现有技术相比,本发明实施例提供的电子设备的有益效果与上述实施例一提供的差分升级的修复方法的有益效果相同,且该电子设备中的其他技术特征与上一实施例方法公开的特征相同,在此不做赘述。
129.应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式的描述中,具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
130.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
131.实施例五
132.本发明实施例提供一种计算机可读存储介质,具有存储在其上的计算机可读程序指令,计算机可读程序指令用于执行上述实施例一中的差分升级的修复方法。
133.本发明实施例提供的计算机可读存储介质例如可以是u盘,但不限于电、磁、光、电磁、红外线、或半导体的系统、系统或器件,或者任意以上的组合。计算机可读存储介质的更具体地例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可
以被指令执行系统、系统或者器件使用或者与其结合使用。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
134.上述计算机可读存储介质可以是电子设备中所包含的;也可以是单独存在,而未装配入电子设备中。
135.上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被电子设备执行时,使得电子设备:获取升级位置和校验信息,其中,所述升级位置是原版本与目标版本存在数据差异的位置,所述校验信息为原版本中在所述升级位置的数据的原始哈希值;根据所述原始哈希值,校验终端设备的系统中在所述升级位置的当前哈希值是否与所述原始哈希值一致;若校验不一致,则获取所述升级位置的修复数据,根据所述修复数据对终端设备的系统进行修复,获得修复后的系统;将修复后的系统从原版本升级为目标版本。
136.可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
137.附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
138.描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该单元本身的限定。
139.本发明提供的可读存储介质为计算机可读存储介质,所述计算机可读存储介质存储有用于执行上述差分升级的修复方法的计算机可读程序指令,能实现差分升级异常的自动修复,提高了差分升级的效率和成功率。与现有技术相比,本发明实施例提供的计算机可读存储介质的有益效果与上述实施例一或实施例二提供的差分升级的修复方法的有益效果相同,在此不做赘述。
140.实施例六
141.本发明实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述的差分升级的修复方法的步骤。
142.本技术提供的计算机程序产品能实现差分升级异常的自动修复,提高了差分升级的效率和成功率。与现有技术相比,本发明实施例提供的计算机程序产品的有益效果与上述实施例一或实施例二提供的差分升级的修复方法的有益效果相同,在此不做赘述。
143.以上仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利处理范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献