解压移动终端压缩包的方法和装置的制作方法

文档序号:7514084阅读:175来源:国知局
专利名称:解压移动终端压缩包的方法和装置的制作方法
技术领域
本发明涉及移动终端技术领域,尤其涉及一种解压移动终端压縮包的方 法和一种解压移动终端压縮包的装置。
背景技术
由于移动终端特别是非智能移动终端的内存十分有限,比如大多数非智能移动终端留给用户存储使用的内存都不足200K;即使补充使用存储空间相对较大的扩展存储卡,也很难满足用户任意的使用需求。这种情况下,一 些客户端所用到的数据资料,比如电子书或者更新程序等, 一般是以压縮包 的形式存储在移动终端中,力求减少对存储空间的占用。上述压縮包的引入,必然要求移动终端必须提供相应的解压縮技术实现 对压縮包的处理,从而满足客户端运行或者用户浏览的需求。现有技术中,移动终端通过移植PC端解压缩技术实现对压縮包的处理,即基于RFC1951 规范的要求,通过Huffman (霍夫曼)编解码,以及CRC (循环冗余校验) 合法性校验实现解压縮。但是与PC相比,移动终端特别是非智能移动终端,不但其内存相当有 限,而且芯片处理能力也相对较弱,因此上述基于PC端的解压縮技术由移 动终端的芯片实现起来,无疑相当吃力,导致了解压速度慢等一系列问题, 同时也存在解压后数据内存占用的问题。上述问题使得解压縮技术的实现即 是移动终端技术中的一大亮点,也是一大难点。发明内容本发明的实施例旨在克服上述现有技术中的缺陷,提供能够有效解压移 动终端压縮包的方案。为实现上述目的,本发明的实施例提供了一种解压移动终端压縮包的方法,包括以下步骤
步骤S1:移植PC解压縮引擎,并为该解压縮引擎设置解压縮接口; 步骤S2:在该解压縮接口中设置解压縮过滤字段;步骤S3:当调用该解压缩接口对一压縮包进行解压縮处理时,该解 压縮引擎跳过解压縮过滤字段所对应的压縮包内容,对该压縮包中的其 他内容进行解压縮。其中,上述解压縮过滤字段可以包括最后修改文件时间、最后修改文 件日期、文件注释长度、文件注释、内部文件属性、外部文件属性等说明性 字段。较佳的,为了适配移动终端内存有限的特点,步骤S3可以包括 步骤S31:在调用解压缩接口对一压縮包进行解压縮处理时,同时指定解压縮文件;步骤S32:该解压縮引擎针对性查找所述解压縮文件;步骤S33:该解压縮引擎跳过解压縮过滤字段所对应的压縮包内容,并对査找到的解压縮文件进行解压縮。较佳的,为了加快对指定解压縮文件的匹配速度,该步骤S32可以包括识别是否首次对所述压縮包进行解压縮处理,是则遍历所述解压縮包并査找所述解压縮文件,同时在所述解压縮包中标记每一文件的偏移量;否则根据已有的偏移量标记直接查找所述解压縮文件。较佳的,可以将解压縮后的数据释放到模拟环形内存区。 本发明的实施例还提供了一种解压移动终端压縮包的装置,包括移植自PC的解压縮引擎;还包括为该解压縮弓I擎设置的解压縮接口 ;过滤字段设置单元,与该解压縮接口连接,用于在该解压縮接口中设 置解压縮过滤字段;解压缩接口调用单元,用于调用该解压縮接口对一压縮包进行解压 縮处理;其中,该解压縮引擎在对该压縮包进行解压縮处理时,跳过解压縮过 滤字段所对应的压縮包内容,对该压縮包中的其他内容进行解压縮其中,该解压縮过滤字段可以包括最后修改文件时间、最后修改文件
日期、文件注释长度、文件注释、内部文件属性、外部文件属性。较佳的,为了适配移动终端内存有限的特点,本发明提供的解压移 动终端压縮包的装置还可以包括与该解压縮接口连接的文件指定模块,用 于在该解压縮接口被调用对一压縮包进行解压縮处理时进行解压縮文件 的指定;则该解压縮引擎针对性査找该解压縮文件并进行解压縮。较佳的,为了加快对指定解压縮文件的匹配速度,本发明提供的解 压移动终端压缩包的装置还可以包括与该解压縮接口连接的偏移量标记模 块,用于在该解压縮接口被调用对一压縮包进行解压縮处理时识别是否首 次对该压縮包进行解压縮处理,是则遍历该解压縮包,在解压縮包中标记每一文件的偏移量;则该解压縮引擎根据该偏移量标记查找该解压縮文件。 较佳的,本发明提供的解压移动终端压縮包的装置还可以包括模拟环形内存区,该解压缩引擎将解压縮后的数据释放到该模拟环形内存区中。 由上述技术方案可知,本发明的实施例通过在解压縮接口中设置解压縮过滤字段,采用解压縮引擎跳过式解压縮的方式,具有以下有益效果1、 有效的降低移动终端解压缩的系统开销;2、 有效的提高移动终端解压縮效率。通过以下参照附图对优选实施例的说明,本发明的上述以及其它目的、 特征和优点将更加明显。


图1为本发明提供的解压移动终端压縮包的方法一实施例的流程图; 图2为本发明提供的解压移动终端压縮包的方法中,进行一压縮包解压 縮的一实施例流程图;图3为本发明提供的解压移动终端压縮包的方法中模拟环形内存的示意图;图4为本发明提供的解压移动终端压縮包的装置一实施例的框图。
具体实施方式
下面将详细描述本发明的具体实施例。应当注意,这里描述的实施例只
用于举例说明,并不用于限制本发明。本发明的主要构思在于在解压縮接口中设置解压縮过滤字段,通过 解压縮引擎的跳过式解压縮,来降低解压縮过程中的系统开销以及提高 解压縮德效率。这样,为帮助读者更好的理解本发明,下面将详细介绍 本发明所提供的解压移动终端压縮包的技术方案。首先,对本发明提供的解压移动终端压縮包的方法加以描述,图1示出了一实施例的流程图,包括以下步骤步骤S1:移植PC解压縮引擎,并为该解压縮引擎设置解压縮接口; 其中,PC解压縮引擎属于底层模块,具体实现解压缩功能,比如可以选用Zlib (Zip包解压函数库)等PC端解压縮引擎;以Zlib引擎为例,是通过Huffman树+CRC (循环冗余校验)的方式实现对于压縮包的解压 縮;为解压縮引擎设置的解压縮接口属于上层模块,对用户公开;通过 该解压縮接口调用解压縮引擎, 一起实现对指定压縮包的解压缩。 步骤S2:在解压缩接口中设置解压縮过滤字段;具体来说,压縮包中一般都存在占用空间较多的说明性文字,比如 最后修改文件时间、最后修改文件日期、文件注释长度、文件注释、内部文 件属性、外部文件属性等等,在解压縮时遍历和解压这些数据,不但与实质的解压内容无关,而且消耗了系统资源,降低了解压效率;因此,本发明对于这一类型的字段在解压縮接口中设置过滤策略。进行过滤策略设置的字段可以由技术人员根据实际内存情况确定,包括当移植PC解压縮引擎后,进行内存适配,根据内存大小部分或者全部 的过滤上述字段,当然,也可以根据需要,进一步过滤同类型的其他字段。步骤S3:当调用该解压縮接口对一压縮包进行解压縮处理时,该解 压縮引擎跳过解压縮过滤字段所对应的压縮包内容,对压縮包中的其他 内容进行解压縮,实现系统开销的降低和解压縮效率的提高。
由于对于移动终端而言,其内存空间极其有限,因此较佳的实施例 为选择性释放压縮包中的文件而非一次性全部释放,如图2所示。 具体的,步骤S3可以包括如下步骤步骤S31:在调用解压縮接口对一压縮包进行解压縮处理时,同时指 定具体的解压缩文件,换句话说,就是解压縮接口同时提供了对于解压 縮包内具体文件浏览的接口和对具体文件指定的接口;步骤S32:解压縮引擎针对性査找所述解压缩文件;步骤S33:解压縮引擎跳过解压缩过滤字段所对应的压縮包内容,并 对査找到的解压縮文件进行解压縮。进一步的,由于每一次解压时都进行解压縮文件的查找都会造成系 统处理资源的开销,为了进一步降低系统开销,提高解压縮效率,所述 步骤S32包括识别是否首次对该压縮包进行解压縮处理,是则遍历该解压縮包并査找 相应的解压縮文件,同时在该解压縮包中标记每一文件的偏移量;否则根据 已有的偏移量标记直接查找该解压縮文件。其中,识别是否首次对该压縮包进行解压縮处理可以根据压縮包中是否 存在偏移量标记进行。解压縮后的数据可以释放到移动终端的硬盘(即存储卡)上,也可 以释放到移动终端的内存中;为了不占用硬盘空间,对于即时浏览的内 容, 一般可以选择释放到移动终端内存中。进一步的,为了能够更有效的利用移动终端的内存,本发明提供的 解压移动终端压縮包的方法还可以包括步骤S4:将解压縮后的数据释放到模 拟环形内存区。由于现有的移动终端,特别是非智能移动终端所提供的都是块状内存, 无法保证数据的连续刷新写入,因此要进行内存的环状模拟,即在读/写指针 指向内存区的末尾时强制跳回起始位置,以通过读/写指针的强制跳回操作, 将块状内存在功能上模拟为环状内存,保证持续的数据写入和读出。
下面对本发明提供的解压移动终端压縮包的装置加以描述,如图4所示, 显示了一实施例的框图,该解压移动终端压缩包的装置400包括 移植自PC的解压縮引擎410;为该解压縮引擎410设置的解压縮接口 420,其中,该解压縮引擎410 通过解压縮接口 420的调用实现对压縮包的解压縮;过滤字段设置单元430,与解压縮接口 420连接,用于在该解压缩接口 420中设置解压縮过滤字段, 一般选择占用空间较多的说明性文字,比如 最后修改文件时间、最后修改文件日期、文件注释长度、文件注释、内部文 件属性、外部文件属性等等;解压縮接口调用单元440,用于调用该解压縮接口 420对一压縮包进 行解压縮处理;其中,解压縮引擎410在对压縮包进行解压縮处理时,跳过解压縮过 滤字段所对应的压縮包内容,对压縮包中的其他内容进行解压縮。可以看出,上述解压移动终端压縮包的装置400对压縮包的内容进行选 择性解压縮,因此能够有效的降低移动终端的系统处理资源开销,提高解压 縮速度。为了进一步匹配移动终端内存有限的特点,较佳的,解压移动终端压縮 包的装置400还可以包括与解压縮接口 420连接的文件指定模块450,用 于在解压縮接口420被调用对一压縮包进行解压縮处理时进行解压縮文件 的指定;则解压縮引擎410针对性査找所述解压縮文件并进行解压縮。再进一步的,由于每一次进行解压縮文件的査找也会带来系统开销, 因此更佳的,解压移动终端压縮包的装置400还可以包括与解压縮接口 420连接的偏移量标记模块460,用于在解压縮接口 420被调用对一压縮包 进行解压縮处理时识别是否首次对该压縮包进行解压縮处理,是则遍历该 解压縮包,以及在解压縮包中标记每一文件的偏移量;或者,压缩包并非首 次进行解压縮处理,其已进行了偏移量标记;则解压縮引擎410根据新的或者已有的偏移量标记查找解压縮文件并 进行解压操作,从而减少了访问的时间开销。更进一步的,解压移动终端压縮包的装置400还可以包括模拟环形内 存区470,该解压縮引擎410将解压縮后的数据释放到该模拟环形内存区470 中,实现对内存空间的连续有效利用。虽然已参照几个典型实施例描述了本发明,但应当理解,所用的术语是 说明和示例性、而非限制性的术语。由于本发明能够以多种形式具体实施而 不脱离发明的精神或实质,所以应当理解,上述实施例不限于任何前述的细 节,而应在随附权利要求所限定的精神和范围内广泛地解释,因此落入权利 要求或其等效范围内的全部变化和改型都应为随附权利要求所涵盖。
权利要求
1. 一种解压移动终端压缩包的方法,其特征在于,包括以下步骤步骤S1移植PC解压缩引擎,并为所述解压缩引擎设置解压缩接口;步骤S2在所述解压缩接口中设置解压缩过滤字段;步骤S3当调用所述解压缩接口对一压缩包进行解压缩处理时,所述解压缩引擎跳过解压缩过滤字段所对应的压缩包内容,对所述压缩包中的其他内容进行解压缩。
2. 根据权利要求1所述的解压移动终端压縮包的方法,其特征在于, 所述解压缩过滤字段包括最后修改文件时间、最后修改文件日期、文件注 释长度、文件注释、内部文件属性、外部文件属性。
3. 根据权利要求1或2所述的解压移动终端压縮包的方法,其特征在 于,所述步骤S3包括步骤S31:在调用解压縮接口对一压縮包进行解压縮处理时,同时指 定解压縮文件;步骤S32:所述解压縮引擎针对性查找所述解压縮文件;步骤S33:所述解压缩引擎跳过解压縮过滤字段所对应的压縮包内容,并对査找到的解压縮文件进行解压縮。
4. 根据权利要求3所述的解压移动终端压縮包的方法,其特征在于, 所述步骤S32包括识别是否首次对所述压縮包进行解压縮处理,是则遍历所述解压縮包并査找所述解压縮文件,同时在所述解压縮包中标记每一文件的偏移量;否则根据已有的偏移量标记直接査找所述解压縮文件。
5. 根据权利要求1或2所述的解压移动终端压縮包的方法,其特征在于,还包括步骤S4:将解压縮后的数据释放到模拟环形内存区。
6. —种解压移动终端压缩包的装置,包括移植自PC的解压縮引擎;其 特征在于,还包括为所述解压縮弓1擎设置的解压縮接口 ;过滤字段设置单元,与所述解压縮接口连接,用于在所述解压縮接口 中设置解压縮过滤字段;解压縮接口调用单元,用于调用所述解压縮接口对一压縮包进行解 压縮处理;其中,所述解压縮引擎在对所述压縮包进行解压縮处理时,跳过解压 縮过滤字段所对应的压縮包内容,对所述压縮包中的其他内容进行解压 縮。
7. 根据权利要求6所述的解压移动终端压縮包的装置,其特征在于, 所述解压縮过滤字段包括最后修改文件时间、最后修改文件日期、文件注 释长度、文件注释、内部文件属性、外部文件属性。
8. 根据权利要求6或7所述的解压移动终端压縮包的装置,其特征在 于,还包括与所述解压縮接口连接的文件指定模块,用于在所述解压縮接口 被调用对一压縮包进行解压縮处理时进行解压缩文件的指定;则所述解 压縮引擎针对性査找所述解压縮文件并进行解压縮。
9. 根据权利要求8所述的解压移动终端压縮包的装置,其特征在于, 还包括与所述解压缩接口连接的偏移量标记模块,用于在所述解压縮接口被 调用对一压縮包进行解压縮处理时识别是否首次对所述压縮包进行解压縮 处理,是则遍历所述解压縮包,在解压縮包中标记每一文件的偏移量;则所 述解压縮引擎根据所述偏移量标记查找所述解压縮文件。
10. 根据权利要求6或7所述的解压移动终端压縮包的装置,其特征 在于,还包括模拟环形内存区,所述解压縮引擎将解压縮后的数据释放到所 述模拟环形内存区中。
全文摘要
本发明公开了一种解压移动终端压缩包的方法和装置。该方法包括移植PC解压缩引擎,并为该解压缩引擎设置解压缩接口;在该解压缩接口中设置解压缩过滤字段;当调用该解压缩接口对一压缩包进行解压缩处理时,该解压缩引擎跳过解压缩过滤字段所对应的压缩包内容,对该压缩包中的其他内容进行解压缩。通过本发明,能够有效的降低移动终端解压缩的系统开销和提高移动终端解压缩效率。
文档编号H03M7/30GK101398807SQ20081017099
公开日2009年4月1日 申请日期2008年10月21日 优先权日2008年10月21日
发明者王保红 申请人:北京无线恒远科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1