[發明專利]一種嵌入式設備程序更新方法在審
| 申請號: | 201510095694.6 | 申請日: | 2015-03-04 |
| 公開(公告)號: | CN104615470A | 公開(公告)日: | 2015-05-13 |
| 發明(設計)人: | 余哲旭;趙大全 | 申請(專利權)人: | 成都維遠艾玨信息技術有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445 |
| 代理公司: | 北京天奇智新知識產權代理有限公司 11340 | 代理人: | 郭霞 |
| 地址: | 610000 四川省成*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 嵌入式 設備 程序 更新 方法 | ||
技術領域
本發明涉及嵌入式設備程序更新方法,特別涉及一種嵌入式系統的嵌入式設備程序更新方法。
背景技術
信息技術的飛速發展推進了醫療技術的革命,在3G網絡和智能終端基礎上發展起來的移動醫療技術取得了長足進步。醫生可使用平板電腦等移動終端設備通過無線網絡接入醫院網絡,進行病例查驗、通訊,輔助診斷等工作。由于系統的修復和新特性的加入導致應用的更新升級變得非常頻繁,程序的安裝包也在不斷增大。即使新包與舊包只有略微的差別,每次版本的升級仍下載完整的新安裝包進行替換安裝,這種全量更新的方式浪費了較多的客戶端網絡資源,同時也增加了升級過程所耗費的時間。
因此,針對相關技術中所存在的上述問題,目前尚未提出有效的解決方案。
發明內容
為解決上述現有技術所存在的問題,本發明提出了一種嵌入式設備程序更新方法,包括:
一種嵌入式設備程序更新方法,用于更新嵌入式設備的應用程序,其特征在于,包括:
服務器端保存多個應用的多個版本,其中包含最新版本,并計算出不同版本的差異,生成不同的補丁包保存在服務器端,其中每個補丁包的生成用單獨的線程來實現;
用戶查看嵌入式設備上已安裝的所有應用列表,選擇需要升級的應用;
嵌入式設備連接服務器,上傳設備上已安裝的安裝包信息;
服務器收到上傳的程序列表信息后,與服務器端進行對比,查看是否有最新版本,若發現最新版本并已經合成了補丁包,則進行增量更新,將補丁包的URL發送到設備端;
當用戶收到可更新信息時,用Handler發送消息,顯示在界面上;
當觸發某個應用的下載時,通過應用補丁包的URL下載補丁包,在嵌入式設備通過補丁合成新的安裝包并安裝。
優選地,所述計算出不同版本的差異,生成不同的補丁包保存在服務器端,進一步包括:
定義兩個數組newbuf[],oldbuf[],將新舊安裝包的文件序列分別寫入其中,并分別獲得其長度newsize,oldsize;利用LCS找出最大公共子序列;
兩個序列對比同一位置的數據,將差異數據寫入diffBlock數據段,表示兩個序列同一位置的差異數據段;
計算出多余的字符串長度,寫入extlen,該extlen表示extblock的長度,extblock表示新包與舊包相比的額外數據段;
將newbuf[j+1,j+1+extlen]寫入extblock數據段;
將oldbuf[j+1,j+1+invalidlen]寫入ctrlblock,其中invalidlen表示新舊安裝包序列對比后,舊安裝包中的無效數據段長度;
ctrlblock包含一些記錄控制信息的小塊,其內容包括從舊包和diffBlock讀取的序列長度,從extblock中讀取的序列長度,以及從舊包中跳過不讀的序列長度;
將各個數據段寫入補丁文件中,其中diffBlock與extraBlock經過gzip算法壓縮后寫入補丁文件中,由于diffBlock記錄的是新版程序安裝包和舊版程序安裝包各個相似段的差異。
優選地,所述嵌入式設備通過補丁合成新的安裝包,進一步包括:
定義數組oldbuf[]寫入舊安裝包序列,讀取補丁包中ctrlblock中寫入的控制信息;
根據對應的控制信息在oldbuf[]與補丁包中交替讀取數據,寫入newbuf[]中;
基于newbuf[]合成新的安裝包序列。
本發明相比現有技術,具有以下優點:
本發明實現差異化增量更新,可節省網絡資源和程序更新時間。
附圖說明
圖1是根據本發明實施例的嵌入式設備程序更新方法的流程圖。
具體實施方式
下文與圖示本發明原理的附圖一起提供對本發明一個或者多個實施例的詳細描述。結合這樣的實施例描述本發明,但是本發明不限于任何實施例。本發明的范圍僅由權利要求書限定,并且本發明涵蓋諸多替代、修改和等同物。在下文描述中闡述諸多具體細節以便提供對本發明的透徹理解。出于示例的目的而提供這些細節,并且無這些具體細節中的一些或者所有細節也可以根據權利要求書實現本發明。
增量更新是基于差異化算法計算出兩個版本的差異化序列,客戶端只需要更新下載該序列即可。因此本文提出一種增量更新方式來減少應用升級時所需的數據流量。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都維遠艾玨信息技術有限公司,未經成都維遠艾玨信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510095694.6/2.html,轉載請聲明來源鉆瓜專利網。





