[发明专利]一种分块差分升级方法、终端设备和计算机可读存储介质在审
申请号: | 202111628899.8 | 申请日: | 2021-12-28 |
公开(公告)号: | CN114356386A | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 周瑞鹏 | 申请(专利权)人: | 杭州涂鸦信息技术有限公司 |
主分类号: | G06F8/658 | 分类号: | G06F8/658 |
代理公司: | 广东君龙律师事务所 44470 | 代理人: | 丁建春 |
地址: | 310013 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分块 升级 方法 终端设备 计算机 可读 存储 介质 | ||
1.一种分块差分升级方法,其特征在于,包括以下步骤:
计算原文件和新文件的全量差分包,对所述原文件和所述新文件进行预设分块,得到多个所述原文件的分块和多个所述新文件的分块;
基于所述全量差分包得到分块权重表,基于所述分块权重表得到分块移动表;
将所述分块移动表插入二叉树,并遍历所有所述二叉树,得到分块交换表;
基于所述分块交换表的顺序,依次求出每个所述新文件的分块的差分内容,得到差分升级文件;
基于所述差分升级文件和所述分块交换表的顺序,以将所述原文件升级为所述新文件。
2.根据权利要求1所述的分块差分升级方法,其特征在于,
所述基于所述全量差分包得到分块权重表的步骤包括:
获取每个所述新文件的分块引用对应的所述原文件的分块的字符串;
计算所述字符串占对应的所述原文件的分块的比值,基于所有所述新文件的分块对应的比值,得到所述分块权重表;
所述基于所述分块权重表得到分块移动表的步骤包括:
在所述分块权重表中每个所述原文件的分块向对应的所述新文件的分块移动,得到所述分块移动表。
3.根据权利要求1所述的分块差分升级方法,其特征在于,所述将所述分块移动表插入二叉树的步骤包括:
将所述分块移动表中的每个所述原文件的分块作为所述二叉树的父结点;
将所述分块移动表中的每个所述新文件的分块作为所述二叉树的子结点;
在所述分块移动表中具有两个相同的分块时,所述两个相同的分块不插入所述二叉树;
在所述分块移动表中具有两个相互引用的分块时,将所述两个相互引用的分块中比值高的分块作为所述二叉树的父结点。
4.根据权利要求3所述的分块差分升级方法,其特征在于,
所述遍历所有所述二叉树,得到分块交换表的步骤包括:
对每棵所述二叉树进行后续遍历,得到所述分块交换表。
5.根据权利要求1或4所述的分块差分升级方法,其特征在于,所述基于所述分块交换表的顺序,依次求出每个所述新文件的分块的差分内容,得到差分升级文件的步骤包括:
基于所述分块交换表的顺序,将每个所述新文件的分块与所述原文件的后缀数组求差分,得到每个所述新文件的分块对应的第一信息和第二信息;
基于所述第一信息和所述第二信息得到差分升级文件包,其中所述第一信息和所述第二信息分别作为所述差分升级文件包的第一区和第二区;
将所述新文件的分块覆盖对应的所述原文件的分块,重新计算所述原文件的后缀数组。
6.根据权利要求5所述的分块差分升级方法,其特征在于,所述得到差分升级文件的步骤包括:
将所述分块交换表插入所述差分升级文件包的文件头;
将所述差分升级文件包进行压缩,得到所述差分升级文件。
7.根据权利要求6所述的分块差分升级方法,其特征在于,
所述基于所述差分升级文件和所述分块交换表的顺序,以将所述原文件升级为所述新文件的步骤包括:
获取所述差分升级文件的第一结构体和第二结构体;
从所述第一结构体获取第一地址信息,从所述第二结构体获取第二地址信息;
基于所述差分升级文件的分块交换表的顺序,以将所述原文件升级为所述新文件。
8.根据权利要求7所述的分块差分升级方法,其特征在于,
所述基于所述差分升级文件的分块交换表的顺序,以将所述原文件升级为所述新文件的步骤包括:
将所述新文件的分块写入到备份区域;
擦除与所述新文件的分块对应的所述原文件的分块的内容;
复制所述备份区域的内容到对应的所述原文件的分块;
擦除所述备份区域的内容;
基于所述分块交换表的顺序重复执行上述步骤,以将所述原文件升级为所述新文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州涂鸦信息技术有限公司,未经杭州涂鸦信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111628899.8/1.html,转载请声明来源钻瓜专利网。