為避專利而寫的壓縮程式
瀏覽網頁時,不少伺服器先用 gzip 把網頁壓縮才傳出,這個格式正是 1992 年今日面世。1992 年 10 月 31 日,GNU 計劃的兩名參與者 Jean-loup Gailly 和 Mark Adler 公開發布 gzip 0.1 版。
GNU 計劃由程式員 Richard Stallman 在 1983 年提出,目標是寫出一套自由、與 UNIX 相容的作業系統。作業系統少不了壓縮和解壓檔案的工具,以節省儲存空間,但當時 UNIX 上通用的 compress 程式用的是 LZW 演算法。據維基百科,LZW 受 Unisys 和 IBM 的專利保護,要到 2003 及 2004 年才屆滿,自由軟件計劃不能放心使用。
兩人分工,借用 PKZIP 的方法
gzip 的名字來自「GNU zip」。Gailly 設計檔案格式並寫壓縮部分,Adler 寫解壓部分。gzip 的官方網頁形容,它的設計目的是取代 compress,主要優點是壓縮得更好,而且不受專利演算法限制。
gzip 採用的是無損壓縮演算法 DEFLATE。據巴西的 Museu Capixaba do Computador 整理,這套方法由 PKZIP 作者、PKWARE 創辦人 Phil Katz 開發;Katz 雖然為此申請了專利,卻容許任何人自由實作 ZIP 格式和演算法,為 gzip 這個自由、開源的版本開了路。1996 年,DEFLATE 和 gzip 格式分別寫成網際網絡標準文件 RFC 1951 和 RFC 1952。
由檔案壓縮到整個網絡
gzip 一次只壓縮一個檔案。UNIX 用戶的做法是先用 tar 把一批檔案打包成一個,再用 gzip 壓縮,副檔名 .tar.gz 或 .tgz 由此而來,至今仍是開源軟件發布原始碼的常見格式。gunzip 亦可解開 compress 舊格式的檔案,方便用戶轉用。
gzip 的格式可以一邊接收一邊解壓,因此廣泛用於網絡傳輸。據維基百科,它是 HTTP 協定指定的三種標準壓縮格式之一,伺服器先把網頁壓縮,瀏覽器收到後再解開,加快傳送速度。
Gailly 和 Adler 其後合作寫出 zlib 壓縮函式庫,讓其他程式直接在記憶體中壓縮和解壓資料,同樣支援 gzip 格式。Adler 另外寫了 pigz,可同時用盡電腦所有處理器核心壓縮檔案。gzip 現由 GNU 計劃維護,最新的 1.15 版在 2026 年 9 月推出。
來源
- O aplicativo gzip de compressão de arquivos de 1992(Museu Capixaba do Computador)
- gzip(維基百科)
- The gzip home page(gzip.org)




暫時未有留言
提交留言即表示你已閱讀我們的私隱政策。