• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            Zlib與GZip

            zlib

              zlib是提供資料壓縮之用的函式庫,由Jean-loup GaillyMark Adler所開發(fā),初版0.9版在199551發(fā)表。zlib使用DEFLATE算法,最初是為libpng函式庫所寫的,后來普遍為許多軟件所使用。此函式庫為自由軟件,使用zlib授權(quán)。

              zlib是用于資料壓縮的函式庫,由Jean-loup GaillyMark Adler所開發(fā),是使用抽象化的DEFLATE壓縮算法gzip文件壓縮程序。初版0.9版在199551發(fā)表,最初是為libpng函式庫所寫的,后來普遍為許多軟件所使用。此函式庫為自由軟件,使用zlib授權(quán)。

              截至20073月,zlib是包含在Coverity的美國國土安全部贊助者選擇繼續(xù)審查的開源項(xiàng)目。

            [編輯本段]

            功能

              * 數(shù)據(jù)頭(header) - zlib能使用一個(gè)gzip數(shù)據(jù)頭,zlib數(shù)據(jù)頭或者不使用數(shù)據(jù)頭壓縮數(shù)據(jù)。

              通常情況下,數(shù)據(jù)壓縮使用zlib數(shù)據(jù)頭,因?yàn)檫@提供錯(cuò)誤數(shù)據(jù)檢測。當(dāng)數(shù)據(jù)不使用數(shù)據(jù)頭寫入時(shí),結(jié)果是沒有任何錯(cuò)誤檢測的原始DEFLATE數(shù)據(jù),那么解壓縮軟件的調(diào)用者知道壓縮數(shù)據(jù)在什么地方結(jié)束。

              gzip數(shù)據(jù)頭比zlib數(shù)據(jù)頭要大,因?yàn)樗4媪宋募推渌募到y(tǒng)信息,事實(shí)上這是廣泛使用的gzip文件的數(shù)據(jù)頭格式。注意zlib函式庫本身不能創(chuàng)建一個(gè)gzip文件,但是它相當(dāng)輕松的通過把壓縮數(shù)據(jù)寫入到一個(gè)有gzip文件頭的文件中。

              * 算法 - 目前zlib僅支持一個(gè)LZ77的變種算法,DEFLATE的算法。

              這個(gè)算法使用很少的系統(tǒng)資源,對各種數(shù)據(jù)提供很好的壓縮效果。這也是在ZIP檔案中無一例外的使用這個(gè)算法。(盡管zip文件格式也支持幾種其他的算法)。

              看起來zlib格式將不會(huì)被擴(kuò)展使用任何其他算法,盡管數(shù)據(jù)頭可以有這種可能性。

              * 使用資源 - 函式庫提供了對處理器和內(nèi)存使用控制的能力

              不同的壓縮級別數(shù)值可以指示不同的壓縮執(zhí)行速度。

              還有內(nèi)存控制管理的功能。這在一些諸如嵌入式系統(tǒng)這樣內(nèi)存有限制的環(huán)境中是有用的。

              * 策略 - 壓縮可以針對特定類型的數(shù)據(jù)進(jìn)行優(yōu)化

              如果你總是使用zlib庫壓縮壓縮特定類型的數(shù)據(jù),那么可以使用有針對性的策略可以提高壓縮效率和性能。例如,如果你的數(shù)據(jù)包含很長的重復(fù)數(shù)據(jù),那么可以用RLE(運(yùn)行長度編碼)策略,可能會(huì)有更好的結(jié)果。

              對于一般的數(shù)據(jù),默認(rèn)的策略是首選。

              * 錯(cuò)誤處理 - 錯(cuò)誤可以被發(fā)現(xiàn)和跳過

              數(shù)據(jù)混亂可以被檢測(只要數(shù)據(jù)和zlib或者gzip數(shù)據(jù)頭一起被寫入-參見上面)

              此外,如果全刷新點(diǎn)(full-flush points)被寫入到壓縮后的數(shù)據(jù)流中,那么錯(cuò)誤數(shù)據(jù)是可以被跳過的,并且解壓縮將重新同步到下個(gè)全刷新點(diǎn)。(錯(cuò)誤數(shù)據(jù)的無錯(cuò)恢復(fù)被提供)。全刷新點(diǎn)技術(shù)對于在不可靠的通道上的大數(shù)據(jù)流是很有用的,一些過去的數(shù)據(jù)丟失是不重要的(例如多媒體數(shù)據(jù)),但是建立太多的全刷新點(diǎn)會(huì)極大的影響速度和壓縮。

              * 數(shù)據(jù)長度 - 對于壓縮和解壓縮,沒有數(shù)據(jù)長度的限制

              重復(fù)調(diào)用庫函數(shù)允許處理無限的數(shù)據(jù)塊。一些輔助代碼(計(jì)數(shù)變量)可能會(huì)溢出,但是不影響實(shí)際的壓縮和解壓縮。

              當(dāng)壓縮一個(gè)長(無限)數(shù)據(jù)流時(shí),最好寫入全刷新點(diǎn)。

            [編輯本段]

            使用zlib的軟件

              今天,zlib是一種事實(shí)上的業(yè)界標(biāo)準(zhǔn),以至于在標(biāo)準(zhǔn)文檔中,zlibDEFLATE常常互換使用。數(shù)以千計(jì)的應(yīng)用程序直接或間接依靠zlib壓縮函式庫[2],包括:

              * Linux核心:使用zlib以實(shí)作網(wǎng)絡(luò)協(xié)定的壓縮、檔案系統(tǒng)的壓縮以及開機(jī)時(shí)解壓縮自身的核心。

              * libpng,用于PNG圖形格式的一個(gè)實(shí)現(xiàn),對bitmap數(shù)據(jù)規(guī)定了DEFLATE作為流壓縮方法。

              * Apache:使用zlib實(shí)作http 1.1

              * OpenSSHOpenSSL:以zlib達(dá)到最佳化加密網(wǎng)絡(luò)傳輸。

              * FFmpeg:以zlib讀寫Matroska等以DEFLATE算法壓縮的多媒體串流格式。

              * rsync:以zlib最佳化遠(yuǎn)端同步時(shí)的傳輸。

              * The dpkg and RPM package managers, which use zlib to unpack files from compressed software packages.

              * Subversion Git CVS 版本控制系統(tǒng),使用zlib來壓縮和遠(yuǎn)端倉庫的通訊流量。

              * dpkgRPM等包管理軟件:以zlib解壓縮RPM或者其他封包。

              因?yàn)槠浯a的可移植性,寬松的許可以及較小的內(nèi)存占用,zlib在許多嵌入式設(shè)備中也有應(yīng)用。

            zlib和gzip是一回事,gzip不過外面多了一個(gè)文件格式,作者都是同一個(gè)人。
            據(jù)說7zip比zlib有更高的壓縮比和解壓速度,但沒有用過。

            posted on 2009-09-07 21:25 肥仔 閱讀(3928) 評論(0)  編輯 收藏 引用 所屬分類: 庫 & 代碼段

            久久国语露脸国产精品电影| 久久有码中文字幕| 国产成年无码久久久久毛片| 久久久久久a亚洲欧洲aⅴ | 国产精品久久久久久| 久久国产成人| 久久狠狠爱亚洲综合影院 | 狠狠色婷婷久久综合频道日韩| 人妻无码αv中文字幕久久| 国产精品热久久无码av| 麻豆一区二区99久久久久| 久久精品成人欧美大片| 久久这里只有精品18| 亚洲精品国产自在久久| 91精品国产91久久| 久久精品蜜芽亚洲国产AV| 久久精品极品盛宴观看| 国产综合成人久久大片91| 亚洲第一极品精品无码久久| 久久伊人中文无码| 国产成人精品久久亚洲高清不卡 | 久久综合亚洲色HEZYO社区| 久久精品国产精品亚洲| 欧美亚洲国产精品久久蜜芽| 丰满少妇高潮惨叫久久久| 波多野结衣AV无码久久一区| 人妻无码久久精品| 久久国产精品一区| 久久国产影院| 欧美一级久久久久久久大片| 精品久久综合1区2区3区激情| 久久精品国产精品青草| 久久国产精品久久| 久久无码av三级| 国产精品青草久久久久福利99| 欧美777精品久久久久网| 久久国产精品-久久精品| 国内精品伊人久久久久| 91久久精品电影| 久久久这里有精品中文字幕| 久久久久综合中文字幕|