จีซิป

จีซิป () เป็นโปรแกรมบีบอัดข้อมูล เขียนโดย ฌอน-ลูป เกลลี (Jean-loup Gailly) และ มาร์ค แอดเลอร์ (Mark Adler) เวอร์ชันแรก 0.1 เผยแพร่เมื่อ 31 ตุลาคม พ.ศ. 2535 เวอร์ชัน 1.0 ออกตามมาเมื่อกุมภาพันธ์ พ.ศ. 2536

 รูปแบบไฟล์ 
gzip อาศัยขั้นตอนวิธีชื่อ DEFLATE ซึ่งผสมผลาน LZ77 กับรหัสฮัฟแมน DEFLATE ออกแบบมาแทนที่ LZW และขั้นตอนวิธีบีบอัดข้อมูลอื่นที่มีปัญหาเรื่องสิทธิบัตร ทำให้ใช้โปรแกรมเช่น compress ได้จำกัด

คำว่า gzip ยังนิยมเรียกรูปแบบไฟล์ที่สร้างโดยโปรแกรม gzip ซึ่งประกอบด้วย
 ส่วนหัวไฟล์ หรือ เฮดเดอร์ ขนาด 10 ไบต์ มีสัญลักษณ์ของไฟล์ หมายเลขเวอร์ชัน วันและเวลา
 เฮดเดอร์เพิ่มเติมเช่นชื่อไฟล์เดิม ส่วนนี้อาจไม่มีก็ได้
 ข้อมูลไฟล์ที่บีบโดยขั้นตอนวิธี DEFLATE
 ส่วนท้ายไฟล์ขนาด 8 ไบต์ ประกอบด้วยค่า CRC-32 และความยาวของข้อมูลเดิมก่อนบีบอัด

ถึงแม้ว่าไฟล์รูปแบบนี้สามารถเก็บไฟล์หลายไฟล์ต่อ ๆ กัน gzip มักถูกใช้บีบเพียงไฟล์เดียว โดยไฟล์ต่าง ๆ จะถูกรวมเข้าด้วยกันก่อนโดยใช้โปรแกรม tar แล้วค่อยบีบอัดไฟล์ที่ได้ด้วย gzip ไฟล์ที่ได้มักใช้นามสกุล .tar.gz หรือ .tgz และนิยมเรียกว่า "compressed tarball"

gzip เป็นไฟล์คนละชนิดกับ ZIP ซึ่งใช้ขั้นตอนวิธี DEFLATE เช่นเดียวกัน ZIP สามารถเก็บไฟล์หลายไฟล์ในตัวมันเองโดยไม่ต้องพึ่งโปรแกรมอื่นแต่ก็ไม่ได้ขนาดเล็กเท่าการบีบโดยใช้ tar และ gzip เนื่องจาก ZIP บีบข้อมูลแต่ละไฟล์แยกจากกัน แต่ gzip สามารถใช้ข้อมูลที่ซ้ำซ้อนระหว่างไฟล์มาเป็นประโยชน์ในการบีบ

ขั้นตอนวิธีใน gzip ยังออกมาในรูปของไลบรารีชื่อ zlib ซึ่งสนับสนุนรูปแบบไฟล์ gzip และรูปแบบเฉพาะของมันเองที่ชื่อ zlib stream รูปแบบ zlib stream, DEFLATE และ gzip กำหนดโดยมาตรฐาน RFC 1950, RFC 1951 และ RFC 1952 ตามลำดับ

เนื่องจากส่วนหัวไฟล์ gzip มีวันที่และเวลาที่สร้าง ในการเปรียบเทียบข้อมูลในไฟล์สองไฟล์ว่าเหมือนกันหรือไม่จำเป็นต้องใช้โปรแกรม zcmp หรือ zdiff ถึงจะได้ผลที่ถูกต้อง

โปรแกรมสำหรับคลายข้อมูลที่บีบโดย gzip เรียกว่า gunzip

ข้อดีของ gzip คือสามารถบีบอัดไฟล์ได้อย่างรวดเร็วและมีประสิทธิภาพสำหรับไฟล์เดียว แต่สำหรับหลายไฟล์มักต้องรวมไฟล์ด้วย tar ก่อน นอกจากนี้ gzip ใช้งานได้บนระบบปฏิบัติการหลายประเภท เช่น Linux, macOS และ Windows และสามารถคลายไฟล์ด้วยคำสั่ง gunzip

 การใช้งานอื่น 
ในโพรโทคอล HTTP รุ่น 1.1 ยอมให้เว็บเบราว์เซอร์ดึงข้อมูลจากเซิร์ฟเวอร์ในรูปไฟล์บีบอัด ในมาตรฐานระบุไว้สองชนิด คือ รูปแบบ gzip (มีส่วนหัวและส่วนท้ายไฟล์ด้วย) และ deflate (ไม่มีส่วนหัวและท้าย)

 โปรแกรมอื่น 
ตั้งแต่ช่วงประมาณปี 2540 เป็นต้นมา ผู้คนหันมาใช้โปรแกรม bzip2 แทนที่ gzip มากขึ้น โปรแกรม bzip2 ใช้ขั้นตอนวิธี block-sorting สามารถบีบไฟล์ได้เล็กกว่าแต่ต้องใช้หน่วยความจำและการประมวลผลมากขึ้นถึง 4 เท่า ไฟล์ที่ผ่านโปรแกรม tar และ bzip2 มักมีนามสกุล .tar.bz2

AdvanceCOMP เป็นโปรแกรมอีกตัวที่ใช้ขั้นตอนวิธี DEFLATE และสร้างไฟล์รูปแบบ gzip แต่สามารถบีบได้มากกว่าโปรแกรม gzip เดิม

 อ้างอิง 
 ประวัติ gzip

 แหล่งข้อมูลอื่น 
 เว็บไซต์ gzip อย่างเป็นทางการ

หมวดหมู่:โครงการกนู
หมวดหมู่:ซอฟต์แวร์บีบอัดข้อมูลเสรี
หมวดหมู่:รูปแบบหน่วยเก็บถาวร
หมวดหมู่:ซอฟต์แวร์บนยูนิกซ์