[發明專利]差分升級方法及裝置、存儲介質、計算機設備有效
| 申請號: | 202010872670.8 | 申請日: | 2020-08-26 |
| 公開(公告)號: | CN111796856B | 公開(公告)日: | 2022-10-11 |
| 發明(設計)人: | 陳朝暉;安君 | 申請(專利權)人: | 北京紫光展銳通信技術有限公司 |
| 主分類號: | G06F8/658 | 分類號: | G06F8/658;G06F8/71 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 張振軍 |
| 地址: | 100084 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 升級 方法 裝置 存儲 介質 計算機 設備 | ||
1.一種差分升級方法,其特征在于,所述方法包括:
獲取用于版本升級的差分包;
在使用所述差分包對原版本文件進行升級時,將升級操作分為一次或多次,每次升級時生成的目標文件的大小不超過單次升級量,其中,所述單次升級量在首次升級前確定;
所述使用所述差分包對原版本文件進行升級,包括下述步驟:
步驟A,確定第一地址,所述第一地址的初始值為所述原版本文件在本地存儲的起始地址;
步驟B,從所述第一地址開始獲取原版本文件中的一個原文件塊進行備份;步驟C,基于當前備份的原文件塊,使用所述差分包生成目標文件塊,其中,所述目標文件塊的文件大小不超過所述單次升級量;
步驟D,刪除前一次備份的原文件塊,并將本次備份的原文件塊的結束地址作為新的第一地址;
跳轉至步驟B,并繼續執行所述步驟B至步驟D,直至完成對原版本文件的升級;
其中,在首次升級時,所述當前備份的原文件塊為原版本文件在本地存儲的起始地址開始的第一個原文件塊;從第二次升級開始,所述當前備份的原文件塊為兩塊:本次備份的文件塊以及上一次備份的文件塊。
2.根據權利要求1所述的方法,其特征在于,在首次升級前,檢測本地可用存儲空間,以確定所述單次升級量。
3.根據權利要求1所述的方法,其特征在于,單個原文件塊的大小不超過所述單次升級量。
4.根據權利要求1所述的方法,其特征在于,若所述使用所述差分包對原版本文件進行升級的過程被中斷,檢測本地是否存在當前備份的原文件塊;當存在當前備份的原文件塊時,根據當前備份的原文件塊確定原版本文件中未升級的部分在本地存儲的起始地址,作為新的第一地址,并獲取所述單次升級量;
跳轉至所述步驟B。
5.根據權利要求4所述的方法,其特征在于,當前備份的原文件塊中包括升級次數的信息,所述方法還包括:
讀取當前備份的原文件塊中的升級次數的信息;
所述根據當前備份的原文件塊確定原版本文件未升級的部分在本地存儲的起始地址,包括:
根據所述升級次數的信息確定原版本文件未升級的部分在本地存儲的起始地址。
6.根據權利要求4所述的方法,其特征在于,所述檢測本地是否存在當前備份的原文件塊之后,還包括:
當不存在當前備份的原文件塊時,結束升級。
7.根據權利要求2所述的方法,其特征在于,所述使用所述差分包對原版本文件進行升級之前,還包括:
檢測所述原版本文件內是否具有額外指示文件;
當具有所述額外指示文件塊時,備份所述額外指示文件。
8.根據權利要求7所述的方法,其特征在于,所述單次升級量為本地可用存儲空間扣除額外指示文件的文件大小之后的一半。
9.根據權利要求7所述的方法,其特征在于,所述差分包包括額外指示文件的信息,所述檢測所述原版本文件內是否具有額外指示文件,包括:
從所述差分包中獲取額外指示文件的信息,以檢測所述原版本文件內是否具有額外指示文件。
10.根據權利要求7至9任一項所述的方法,其特征在于,所述額外指示文件塊為在對所述原版本文件進行升級過程中會被覆蓋的文件。
11.根據權利要求1所述的方法,其特征在于,所述使用所述差分包對原版本文件進行每次升級時,生成補丁命令,所述補丁命令用于調用補丁工具執行升級操作。
12.根據權利要求11所述的方法,其特征在于,所述補丁命令包括本次升級的目標文件寫入的起始地址和文件大小。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京紫光展銳通信技術有限公司,未經北京紫光展銳通信技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010872670.8/1.html,轉載請聲明來源鉆瓜專利網。





