[發明專利]數據壓縮和解壓縮的處理方法在審
| 申請號: | 201110174721.0 | 申請日: | 2011-06-24 |
| 公開(公告)號: | CN102841907A | 公開(公告)日: | 2012-12-26 |
| 發明(設計)人: | 劉曉丹 | 申請(專利權)人: | 環達電腦(上海)有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 200436 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據壓縮 和解 壓縮 處理 方法 | ||
?
【技術領域】
本發明涉及一種數據壓縮和解壓縮的處理方法,特別是一種可實時壓縮解壓縮的數據壓縮和解壓縮的處理方法。
【背景技術】
便攜式自動導航系統(PND)近幾年應用越來越廣泛,有人稱它為GPS+PDA,但隨著其功能的日趨多樣化,地圖數據量的不斷增加,對存儲空間大小的要求也越來越高,而且嵌入式系統不可能使用PC機廣泛使用的大容量硬盤,只能使用體積小容量小的flash或iNand,這些嵌入式存儲介質,其單位容量價格相對硬盤要高的多。所以很多嵌入式軟件開發人員在編寫程序時不得不考慮盡量減小自己程序及所用數據資源的大小,給嵌入式軟件開發人員帶來了很大的困擾。
程序和數據以壓縮的方式存儲,同樣大小的存儲介質上就能存儲更多的數據。目前雖然有很多算法實現壓縮解壓縮,?但都需要人為干預壓縮解壓縮,且現有的程序和數據是在整個文件解壓縮后再使用,無法實現嵌入式系統的實時壓縮解壓縮。
【發明內容】
本發明的主要目的在于提供一種可實時壓縮解壓縮的數據壓縮和解壓縮的處理方法。
本發明提供一種數據壓縮的處理方法,應用于文件系統驅動層,其包括以下步驟:獲取壓縮前文件大小;根據壓縮前文件大小將所述壓縮前文件分成n段,計算索引表大小,并于壓縮文件的頭位置處設置索引表,所述索引表具有若干個記錄項;依序壓縮每一分段并將壓縮后的數據寫入壓縮文件中,并將每一分段在壓縮文件中的起始位置記錄至記錄項中,其中,第一分段在壓縮文件中的起始位置為接續索引表之后,其余各分段在壓縮文件中的起始位置為接續前一分段之后。
特別地,所述數據壓縮的處理方法應用于WinCE嵌入式系統中。
特別地,壓縮前每一分段的數據量為64KB。
特別地,所述記錄項還包括壓縮前文件大小、索引表大小。
特別地,一個記錄項包括4個字節,索引表的大小為4096字節的整數倍。
本發明還提供一種數據解壓縮的處理方法,應用于文件系統驅動層,其包括以下步驟:接收用戶請求指令;根據用戶請求指令,計算獲取數據的分段號,到索引表中讀取起始位置;根據獲取數據的起始位置依序讀取各分段的數據并解壓縮;將用戶請求的數據返回給上層。
特別地,解壓縮的算法為LZ77算法。
特別地,若用戶請求的數據小于64KB,則根據獲取數據的起始位置讀取所在分段的全部數據并解壓縮。
特別地,若用戶請求的數據大于64KB,則獲取數據的分段號至少為兩個,根據第一分段獲取數據的起始位置讀取第一分段的數據并解壓縮,然后,再根據下一分段獲取數據的起始位置讀取下一分段的數據并解壓縮,直至獲取數據中的所有分段均解壓縮。
特別地,解壓縮后的數據按先進先出原則自動存放在緩存內。
與現有技術相比較,本發明在壓縮過程中,根據壓縮前文件大小自動執行分段壓縮,不需手為干預;而在解壓縮過程中,根據用戶請求分段解壓縮,不需要解壓縮整個文件,解壓縮速度快。
為對本發明的目的、構造特征及其功能有進一步的了解,茲配合附圖詳細說明如下:
【附圖說明】
圖1為本發明中數據壓縮的處理方法的流程圖。
圖2為壓縮文件的索引表示意圖。
圖3為本發明中數據解壓縮的處理方法的流程圖。
【具體實施方式】
請參閱圖1及圖2所示,本發明數據壓縮的處理方法應用于文件系統驅動層,于本實施例中,所述數據壓縮的處理方法應用于WinCE嵌入式系統中,其包括以下步驟:
步驟201:獲取壓縮前文件大小;
步驟202:根據壓縮前文件大小將所述壓縮前文件分成n段,計算索引表大小,并于壓縮文件的頭位置處設置索引表,所述索引表具有若干個記錄項;其中,壓縮前每一分段的數據量為64KB。所述記錄項還包括壓縮前文件大小、索引表大小。一個記錄項包括4個字節,索引表的大小為4096字節的整數倍,索引表的大小最小為4096字節。
例如,若壓縮前文件大小為64KB*200,則將所述壓縮前文件分成200段,并于壓縮文件的頭位置處設置索引表,索引表的記錄項包括壓縮前文件大小、索引表大小、第一分段的起始位置、第二分段的起始位置、第三分段的起始位置……第200分段的起始位置。
步驟203:依序壓縮每一分段并將壓縮后的數據寫入壓縮文件中,并將每一分段在壓縮文件中的起始位置記錄至記錄項中,其中,第一分段在壓縮文件中的起始位置為接續索引表之后,其余各分段在壓縮文件中的起始位置為接續前一分段之后。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于環達電腦(上海)有限公司,未經環達電腦(上海)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110174721.0/2.html,轉載請聲明來源鉆瓜專利網。





