[發明專利]一種實現升級包制作的方法及裝置在審
| 申請號: | 201410385176.3 | 申請日: | 2014-08-06 |
| 公開(公告)號: | CN105335182A | 公開(公告)日: | 2016-02-17 |
| 發明(設計)人: | 宋沈陽 | 申請(專利權)人: | 中興通訊股份有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445 |
| 代理公司: | 北京安信方達知識產權代理有限公司 11262 | 代理人: | 張建秀;李丹 |
| 地址: | 518057 廣東省深圳市南山*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實現 升級 制作 方法 裝置 | ||
技術領域
本申請涉及軟件升級技術,尤指一種基于塊設備的實現升級包制作的方法及裝置。
背景技術
隨著智能手機愈來愈普及,人們對智能手機的要求也越來越高,尤其是手機的信息安全更是備受重視。系統開發者以及設備制造商也在從各個方面嘗試加強手機的安全性。Android智能手機系統開發商Google在最新版本中推出了系統鏡像完整性校驗功能,該功能通過每次開機對系統鏡像進行完整性校驗的方法確保智能手機系統沒有被攻擊者進行惡意篡改,但是這一機制不能與目前android系統廣泛應用的空中下載技術(OTA)升級機制兼容工作。
圖1為現有的升級機制示意圖,如圖1所示,現有Android終端系統升級的方法大致包括:在生產過程中比較系統中對應文件的差別,通過計算出相應的二進制差分數據,根據二進制差分數據將升級文件打包成OTA升級包;移動終端根據升級包將系統中對應文件升級至新版本,達到整個系統升級的目的。
雖然升級后系統文件的內容保持與新版本一致,但是由于升級過程中每個具體文件的修改順序,修改方法都不同。即,在升級過程中將系統文件的鏡像文件由舊版本更新至新版本,每個文件更新的順序是由升級程序決定。舊的系統的鏡像文件的升級順序與重新構建一個完整的新的系統的鏡像文件是完全不同的,并且更新后的文件具體寫入物理存儲設備的位置、也是由文件系統根據自己的算法以及當前設備可用空間位置計算出來的。這些都會導致由舊版本到新構建的系統鏡像文件在文件系統底層是不相同的,即導致關于系統文件的元數據被修改了。這樣,是不滿足系統鏡像完整性校驗功能的規范的,會導致升級后系統鏡像校驗失敗。為解決這一問題,Android提出的方法主要是將整個升級的鏡像文件作為一個單獨的文件,從塊設備層面上進行二進制差分比較。這樣雖然可以滿足系統鏡像完整性校驗功能的規范,但是,android系統鏡像非常大(一般大約在600M-1G字節左右),將整個升級的鏡像文件與升級前的鏡像文件作為整體進行二進制差分,整個升級過程對資源和時間消耗巨大,通過驗證確定,采用一般個人電腦完成上述過程大約需要幾天的時間。也就是說,將升級文件作為單獨文件進行二進制差分的方法,雖然能滿足系統鏡像完整性校驗功能的規范,但并不具備可生產性即不可行。
發明內容
為了解決上述問題,本發明提供一種實現升級包制作的方法及裝置,能夠滿足系統鏡像完整性校驗功能的規范,同時減少升級包制作時長,適用于生產。
為了達到本發明的目的,本申請提供一種升級包制作的方法;包括:
根據確定的用于制作升級包的數據塊的大小,分別對升級前的鏡像文件和升級的鏡像文件進行數據塊劃分,并按照相同的排序方式對劃分的數據塊進行排序;
對排序位置相同的升級的鏡像文件的數據塊和升級前的鏡像文件的數據塊,分別計算各對應數據塊的偏移量;
根據計算出的偏移量對發生偏移的升級的鏡像文件的數據塊進行調整,以制作升級包。
進一步地,該方法之前還包括:根據升級的鏡像文件大小確定用于制作升級包的數據塊的大小。
進一步地,根據升級的鏡像文件大小確定用于制作升級包的數據塊的大小具體包括:
當升級的鏡像文件小于600兆M時,確定所述用于制作升級包的數據塊的大小為4M;
當升級的鏡像文件大于等于600M且小于1.2G時,確定所述用于制作升級包的數據塊的大小為8M;
當升級的鏡像文件大于等于1.2G且小于1.8G時,確定所述用于制作升級包的數據塊的大小為12M;
當升級的鏡像文件大于等于1.8G且小于2.4G時,確定所述用于制作升級包的數據塊的大小為16M;
當升級的鏡像文件大于等于2.4G且小于3G時,確定所述用于制作升級包的數據塊的大小為20M;
當升級的鏡像文件大于等于3G時,確定所述用于制作升級包的數據塊的大小為24M。
進一步地,分別對升級前的鏡像文件和升級的鏡像文件進行數據塊劃分,并按照相同的排序方式對劃分的數據塊進行排序具體包括:
分別對所述升級前的鏡像文件和升級的鏡像文件劃分的若干個大小相同的數據塊,按照遞增排序的排序方式對所述劃分的數據塊進行排序。
進一步地,計算各對應數據塊的偏移量包括:
對排序位置相同的升級的鏡像文件的數據塊和升級前的鏡像文件的數據塊,分別計算各對應數據塊相對應的偏移量。
進一步地,根據計算出的偏移量對發生偏移的升級的鏡像文件的數據塊進行調整,以制作升級包包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中興通訊股份有限公司,未經中興通訊股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410385176.3/2.html,轉載請聲明來源鉆瓜專利網。





