[发明专利]一种实时数据无损压缩方法及系统无效
| 申请号: | 201110374947.5 | 申请日: | 2011-11-22 |
| 公开(公告)号: | CN103138764A | 公开(公告)日: | 2013-06-05 |
| 发明(设计)人: | 卢学东;杨永军;孙益;程相杰;张旭;田兴东;吴景彪 | 申请(专利权)人: | 上海麦杰科技股份有限公司 |
| 主分类号: | H03M7/30 | 分类号: | H03M7/30 |
| 代理公司: | 上海精晟知识产权代理有限公司 31253 | 代理人: | 何新平 |
| 地址: | 200233 上海市徐汇*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 实时 数据 无损 压缩 方法 系统 | ||
1.一种实时数据的无损压缩方法及系统,其特征在于,由两个模块组成,分别是:压缩解压模块和内存池模块;
所述压缩解压缩是本系统的主模块,负责实时数据的无损压缩和解压缩,其主要操作方法步骤包括:
(1)、初始化系统;
(2)、将未处理数据与滑动窗口内数据匹配,获取最大匹配字符串的长度以及偏移位置,如图1所示;
(3)、将长度和偏移位置与最近产生的匹配字符串的长度和偏移位置做比较;
(4)、根据比较情况输出对应的结果;
同时为实时数据库压缩解压缩进程配备一个内存池以提高性能。
2.如权利要求1所述的方法,其特征在于,当获取匹配字符串长度之后,还包括以下步骤:
(1)、使用一位匹配标志位表明匹配字符串长度是否小于3;
(2)、若小于,将匹配标志位置0,仅输出当前压缩字符;
(3)、否则,将匹配标志位置1,继续下面的操作。
3.如权利要求1所述的方法,其特征在于,将当前匹配字符串长度和偏移位置与最近的三组匹配字符串长度和偏移位置比较,还包括以下步骤:
(1)、使用两位字典标志位表明当前匹配字符串长度和偏移位置是否与最近的三组匹配字符串长度和位置中的任意一组相等;
(2)、若无相等情况,将字典标志位置00,压缩输出匹配字符串长度和偏移位置;
(3)、若与最近的一组匹配字符串长度和偏移位置均相等,将字典标志位置01,而无其它输出;
(4)、若与第二近的一组匹配字符串长度和偏移位置均相等,将字典标志位置10,而无其它输出;
(5)、若与第三近的一组匹配字符串长度和偏移位置均相等,将字典标志位置11,而无其它输出。
4.如权利要求1所述的方法,其特征在于,使用内存池提供压缩程序的性能,还包括以下步骤:
(1)、按预先方案将总内存区划分为数个子内存池;
(2)、初始化每个子内存池的空间空间链表;
(3)、根据用户申请内存的大小定位将要操作的子内存池;
(4)、锁互斥锁,获取一空闲内存块;
(5)、更新空闲空间链表,解互斥锁;
(6)、返回空闲内存块的地址。
5.如权利要求2所述的方法,其特征在于,还包括以下步骤:
(1)、将每8个匹配标志位合并在一个字节储存;
(2)、当匹配标志位字节满时,将输出序列的下一字节作为新的匹配标志位字节。
6.如权利要求3所述的方法,其特征在于,还包括以下步骤:
(1)、将每4个字典标志位合并在一个字节储存;
(2)、当字典标志位字节满时,将输出序列的下一字节作为新的字典标志位字节。
7.如权利要求3所述的方法,其特征在于,当压缩输出匹配字符串长度和偏移位置时,还包括以下步骤:
(1)根据当前匹配字符串长度和偏移位置的值的大小,采用分别占用一字节和两字节的两种压缩方法。
8.如权利要求4所述的方法,其特征在于,还包括以下操作:
(1)若申请内存大小超过限值,向操作系统申请内存;
(2)若子内存池无可用内存块,也向操作系统申请内存。
9.如权利要求4所述的方法,其特征在于,每个内存池的空闲空间链表的构建不需要任何额外空间,而是将每个空闲内存块本身看做空闲链表的一个结点,其内容是下一个空闲内存块的地址,还包括以下具体操作:
(1)初始化空闲链表时,将空闲链表头指针指向内存池的首个内存块,再把每个单位内存块的头4个字节作为指向相邻下一个内存块的指针;
(2)分配空闲内存块时,获取空闲链表头指针所指向地址ptr,此即是即将交给应用程序使用的内存空间的地址;
(3)更新空闲链表时,使空闲链表的头指针指向下一块空闲内存块,其地址源自地址为ptr的内存空间的头4个字节。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海麦杰科技股份有限公司,未经上海麦杰科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110374947.5/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





