[發(fā)明專利]升級包的打包方法以及升級方法有效
| 申請?zhí)枺?/td> | 201810202061.4 | 申請日: | 2018-03-12 |
| 公開(公告)號: | CN108170455B | 公開(公告)日: | 2021-04-27 |
| 發(fā)明(設計)人: | 喻志剛 | 申請(專利權)人: | 晶晨半導體(上海)股份有限公司 |
| 主分類號: | G06F8/65 | 分類號: | G06F8/65;G06F8/71 |
| 代理公司: | 上海申新律師事務所 31272 | 代理人: | 俞滌炯 |
| 地址: | 201203 上海市浦東新區(qū)張江*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 升級 打包 方法 以及 | ||
本發(fā)明提供一種升級包的打包方法以及升級方法,屬于嵌入式系統(tǒng)技術領域,包括:預設一非升級分區(qū)以存儲升級進度信息;根據(jù)索引n從頭文件中獲取數(shù)據(jù)塊大小信息和數(shù)據(jù)塊偏移信息;根據(jù)數(shù)據(jù)塊大小信息和數(shù)據(jù)塊偏移信息,獲取相應的壓縮后的數(shù)據(jù)塊;解壓,以得到第一解壓數(shù)據(jù)塊;根據(jù)分區(qū)名稱信息和索引n,將第一解壓數(shù)據(jù)塊寫入相應的待升級分區(qū)的寫入偏移地址,寫入偏移地址為(n?x)*數(shù)據(jù)塊大小信息對應的數(shù)據(jù)塊大小,x為相應的待升級分區(qū)中的數(shù)據(jù)塊的起始索引;待升級信息。本發(fā)明的有益效果:升級包可配置,打包方式靈活;掉電后重新上電可繼續(xù)掉電前的升級過程,已升級數(shù)據(jù)無需重新升級,提高升級效率。
技術領域
本發(fā)明涉及嵌入式系統(tǒng)技術領域,尤其涉及一種升級包的打包方法以及升級方法。
背景技術
目前的嵌入式系統(tǒng)升級模塊,都是加入了升級掉電保護的功能,能夠保證升級過程掉電之后再次上電,系統(tǒng)能夠正常啟動或者能夠繼續(xù)升級。
例如現(xiàn)有的一種掉電保護方法,其具體過程為判斷升級的過程是否有掉電,若有則不進入可能被破壞的系統(tǒng),從而達到掉電不變磚的效果。而在現(xiàn)有的另一種掉電保護方法中,其主要體現(xiàn)在硬件層上,在異常掉電時,由電池供電,把內(nèi)存中未保存的數(shù)據(jù)保存到非易失性存儲介質(zhì)上,從而保證數(shù)據(jù)不丟失。
絕大多數(shù)升級系統(tǒng)都有掉電保護的功能,升級過程如果掉電了,可以重啟升級的,但是,重啟升級是從新開始升級,并不能繼續(xù)上次的升級。之前已經(jīng)更新過的數(shù)據(jù),需要再次寫入到存儲介質(zhì)中。
目前的升級的掉電保護,只能夠保證升級掉電不變磚,但是相對于升級效率而言,重新上電不能繼續(xù)上次的升級,效率相對較低。
發(fā)明內(nèi)容
針對現(xiàn)有技術中存在的問題,本發(fā)明涉及一種升級包的打包方法以及升級方法。
本發(fā)明采用如下技術方案:
一種升級包的打包方法,所述升級包包括頭文件和數(shù)據(jù)文件,所述打包方法包括:
步驟S1、獲取待打包的所述升級包對應的配置文件,對所述配置文件進行解析以獲得配置信息和至少一個分區(qū)鏡像;
步驟S2、根據(jù)所述配置信息,對每個所述分區(qū)鏡像分別進行分割,以使每個所述分區(qū)鏡像拆分成多個數(shù)據(jù)塊;
步驟S3、根據(jù)所述配置信息,對每個所述數(shù)據(jù)塊分別進行壓縮,對壓縮后的所有所述數(shù)據(jù)塊進行拼接,以得到所述數(shù)據(jù)文件,并獲取每個壓縮后的所述數(shù)據(jù)塊的數(shù)據(jù)塊大小信息、每個壓縮后的所述數(shù)據(jù)塊在所述數(shù)據(jù)文件中的數(shù)據(jù)塊偏移信息;
步驟S4、根據(jù)所述配置信息、所述數(shù)據(jù)塊大小信息以及所述數(shù)據(jù)塊偏移信息生成所述頭文件;
步驟S5、對所述頭文件和所述數(shù)據(jù)文件進行拼接,以得到所述升級包。
優(yōu)選的,所述步驟S1中,所述配置信息包括待升級分區(qū)的相關信息、與所述待升級分區(qū)一一對應的所述分區(qū)鏡像的相關信息、預設的所述數(shù)據(jù)塊大小信息、數(shù)據(jù)壓縮方式信息、軟件版本信息、以及magic值。
優(yōu)選的,所述步驟S2中,根據(jù)所述配置信息中的所述數(shù)據(jù)塊大小信息對每個所述分區(qū)鏡像分別進行分割,以使每個所述分區(qū)鏡像包括多個所述數(shù)據(jù)塊;
每個所述分區(qū)鏡像中的所述數(shù)據(jù)塊的數(shù)量為m+1,包括m個與所述數(shù)據(jù)塊大小信息對應的數(shù)據(jù)塊大小相等的第一分割數(shù)據(jù)塊和一個不大于所述數(shù)據(jù)塊大小信息對應的數(shù)據(jù)塊大小的第二分割數(shù)據(jù)塊。
優(yōu)選的,所述步驟S3中,根據(jù)所述配置信息中的所述數(shù)據(jù)壓縮方式信息,對每個所述數(shù)據(jù)塊分別進行壓縮以得到相應的壓縮后的所述數(shù)據(jù)塊。
一種升級包的升級方法,基于任意一項所述的打包方法,所述升級方法包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于晶晨半導體(上海)股份有限公司,未經(jīng)晶晨半導體(上海)股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810202061.4/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





