zlib库介绍一:zlib简介

目录

1.库简介

2.算法

3.计算资源

4.数据长度

5.业界使用


1.库简介

zlib是一套通用的解压缩开源库,提供了内存(in-memory)压缩和解压函数,能检测解压出来的数据完整性,由Jean-loup Gailly与Mark Adler所开发。源码网址:zlib Home Sitehttp://www.zlib.net/

zlib初始版本于1995年5月1日发表。zlib支持gzip文件(.gz格式)的读写。

2.算法

zlib使用Deflate算法,最初是为libPNG库所写。Deflate是huffman编码的加强算法。

Deflate算法使用很少的系统资源,对各种数据提供很好的压缩效果。ZIP压缩包基本上都使用了这个算法。(当然,ZIP压缩包格式也支持其他解压缩算法)。

3.计算资源

zlib库提供了对处理器和内存使用控制的能力。不同的压缩级别数值可以指示不同的压缩执行速度。

4.数据长度

对于压缩和解压缩,没有数据长度的限制。当压缩一个长(无限)数据流时,最好写入全刷新点。

5.业界使用

目前,数以千计的应用程序直接或间接使用zlib库,包括:
* Linux核心:使用zlib以实作网络协定的压缩、档案系统的压缩以及开机时解压缩自身的核心。
* libpng,用于PNG图形格式的一个实现,对bitmap数据规定了DEFLATE作为流压缩方法。
* Apache:使用zlib实作http 1.1。
* OpenSSH、OpenSSL:以zlib达到最佳化加密网络传输。
* FFmpeg:以zlib读写Matroska等以DEFLATE算法压缩的多媒体串流格式。
* rsync:以zlib最佳化远端同步时的传输。
* The dpkg and RPM package managers, which use zlib to unpack files from compressed software packages.
* Subversion 、Git和 CVS 版本控制 系统,使用zlib来压缩和远端仓库的通讯流量。
* dpkg和RPM等包管理软件:以zlib解压缩RPM或者其他封包。
因为其代码的可移植性,宽松的许可以及较小的内存占用,zlib在许多嵌入式设备中也有应用。

你可能感兴趣的:(解压缩库,#,zlib库,算法,c语言,c++)