[發(fā)明專利]嵌入式系統(tǒng)鏡像文件壓縮方法及裝置在審
| 申請(qǐng)?zhí)枺?/td> | 202110110131.5 | 申請(qǐng)日: | 2021-01-27 |
| 公開(公告)號(hào): | CN112579547A | 公開(公告)日: | 2021-03-30 |
| 發(fā)明(設(shè)計(jì))人: | 祝金忠;楊才滿;譚特奇;李雪峰;王鵬飛 | 申請(qǐng)(專利權(quán))人: | 深圳市億聯(lián)無(wú)限科技有限公司 |
| 主分類號(hào): | G06F16/174 | 分類號(hào): | G06F16/174;H04L1/00 |
| 代理公司: | 深圳市行一知識(shí)產(chǎn)權(quán)代理事務(wù)所(特殊普通合伙) 44453 | 代理人: | 楊賢;孫啟軒 |
| 地址: | 518000 廣東省深圳市*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 嵌入式 系統(tǒng) 文件 壓縮 方法 裝置 | ||
本申請(qǐng)公開了嵌入式系統(tǒng)鏡像(Image)文件壓縮方法及裝置,該方法首先對(duì)原始鏡像文件的當(dāng)前待壓縮數(shù)據(jù)塊進(jìn)行Hash變換,判斷出當(dāng)前待壓縮數(shù)據(jù)的類型,并進(jìn)行LZ77編碼輸出,確定LZ77編碼輸出的壓縮數(shù)據(jù)的字符類型,依據(jù)該字符類型對(duì)應(yīng)的編碼參考概率對(duì)LZ77編碼輸出的字符依次進(jìn)行區(qū)間編碼,得到壓縮文件,并對(duì)相應(yīng)的編碼參考概率進(jìn)行更新,依據(jù)壓縮文件和原始鏡像文件的產(chǎn)品信息生成發(fā)布文件。該方法降低了鏡像文件所需的存儲(chǔ)空間,降低嵌入式終端產(chǎn)品成本,并對(duì)鏡像壓縮文件的信息進(jìn)行嵌入,避免他人對(duì)鏡像文件進(jìn)行盜用。
技術(shù)領(lǐng)域
本申請(qǐng)涉及文件壓縮技術(shù)領(lǐng)域,特別涉及嵌入式系統(tǒng)鏡像文件壓縮方法及裝置。
背景技術(shù)
目前嵌入式終端產(chǎn)品,例如CPE(Customer Premise Equipment)、Router AP、PONONU等產(chǎn)品,每年全球研發(fā)生產(chǎn)廠家的出貨量巨大,隨之而來(lái)的是競(jìng)爭(zhēng)愈加激烈。消費(fèi)者在比較產(chǎn)品的功能、性能的同時(shí),價(jià)格因素也是用戶重點(diǎn)考慮的問(wèn)題,這使得各個(gè)研發(fā)生產(chǎn)此類產(chǎn)品的廠家在大力進(jìn)行成本控制。對(duì)于此類嵌入式終端產(chǎn)品來(lái)說(shuō),硬件成本主要包括主芯片、存儲(chǔ)芯片、電源芯片、其它功能芯片、接口結(jié)構(gòu)件、外殼、電源適配器、包材的成本,其中存儲(chǔ)芯片可以通過(guò)降低容量進(jìn)行降成本操作,例如從16Mbytes容量大小的Flash降為8Mbytes大小,這種降成本的效果對(duì)于大規(guī)模出貨的終端產(chǎn)品是很可觀的。
對(duì)于現(xiàn)有的嵌入式終端產(chǎn)品,絕大部分使用嵌入式Linux操作系統(tǒng),在嵌入式Linux操作系統(tǒng)中,目前對(duì)Image鏡像文件使用不壓縮、GZIP壓縮、BZIP2壓縮、LZMA壓縮和LZO壓縮,其中GZIP的壓縮比(壓縮后和壓縮前的文件大小之比)在50%左右,BZIP2壓縮比在45%左右,LZMA壓縮比在37%左右,LZO壓縮比也在37%左右。上述對(duì)Image鏡像文件壓縮方法的壓縮比較低,無(wú)法滿足Image鏡像文件壓縮后對(duì)Flash容量大小的要求。
發(fā)明內(nèi)容
基于此,為了提高鏡像文件的壓縮率,進(jìn)而降低對(duì)Flash容量大小的要求,同時(shí)也為了對(duì)鏡像文件的作者進(jìn)行著作權(quán)保護(hù),本申請(qǐng)公開了以下技術(shù)方案。
一方面,提供了一種嵌入式系統(tǒng)鏡像文件壓縮方法,包括:
對(duì)原始鏡像文件的當(dāng)前待壓縮數(shù)據(jù)塊進(jìn)行Hash變換,并根據(jù)已編碼字符的返回值判斷出當(dāng)前待壓縮數(shù)據(jù)的類型;
若類型為新字符,則將待壓縮數(shù)據(jù)以新字符進(jìn)行LZ77編碼輸出;
若類型為重復(fù)字符,則對(duì)當(dāng)前待壓縮數(shù)據(jù)和已編碼字符進(jìn)行匹配計(jì)算,確定出兩者的最長(zhǎng)重復(fù)字符數(shù)據(jù)及其長(zhǎng)度,將待壓縮數(shù)據(jù)以重復(fù)字符進(jìn)行LZ77編碼輸出,并對(duì)已編碼字符進(jìn)行更新;
確定所述LZ77編碼輸出的壓縮數(shù)據(jù)的字符類型,依據(jù)該字符類型對(duì)應(yīng)的編碼參考概率對(duì)所述LZ77編碼輸出的字符依次進(jìn)行區(qū)間編碼,得到壓縮文件,并對(duì)相應(yīng)的編碼參考概率進(jìn)行更新;
依據(jù)所述壓縮文件和所述原始鏡像文件的產(chǎn)品信息生成發(fā)布文件。
在一種可能的實(shí)施方式中,所述依據(jù)所述壓縮文件和所述原始鏡像文件的產(chǎn)品信息生成發(fā)布文件,包括:
向嵌入式系統(tǒng)發(fā)出內(nèi)存申請(qǐng),并按照文件頭數(shù)據(jù)的結(jié)構(gòu)字段將文件頭數(shù)據(jù)內(nèi)容分別填入申請(qǐng)得到的內(nèi)存中;
獲取所述壓縮文件的存儲(chǔ)位置并打開該壓縮文件,獲取該壓縮文件的末尾位置作為發(fā)布文件的起始寫入位置;
從所述起始寫入位置開始依次寫入所述內(nèi)存中的文件頭數(shù)據(jù)以及打開的所述壓縮文件的內(nèi)容。
在一種可能的實(shí)施方式中,該方法還包括以下步驟:
向服務(wù)端發(fā)出升級(jí)請(qǐng)求,將服務(wù)端發(fā)來(lái)的升級(jí)鏡像文件存儲(chǔ)到預(yù)先在嵌入式系統(tǒng)的內(nèi)存中申請(qǐng)的內(nèi)存空間中;
對(duì)升級(jí)鏡像文件的字段進(jìn)行第一合法性檢查,并在任一字段的數(shù)值不符合要求時(shí)丟棄升級(jí)鏡像文件,在所有字段的數(shù)值均符合要求時(shí)將升級(jí)鏡像文件寫入Flash;其中,
第一合法性檢查的字段包括CRC校驗(yàn)、魔數(shù)標(biāo)志、終端產(chǎn)品ID檢查中的至少一項(xiàng)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于深圳市億聯(lián)無(wú)限科技有限公司,未經(jīng)深圳市億聯(lián)無(wú)限科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110110131.5/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。





