Різниця між GZIP та BZIP2

GZIP проти BZIP2

GNU zip (також відомий як GZIP) - це програмне забезпечення з метою стиснення файлів. Спочатку він мав на меті замінити програму стиснення, що застосовувалася в ранніх системах Unix - використовуватись у проекті GNU (проект вільного програмного забезпечення).

BZIP2 - алгоритм стиснення даних з відкритим кодом без втрат - в основному, клас алгоритмів стиснення даних, який дає можливість повністю реконструювати вихідні дані стисненого файлу із стислих даних.

GZIP заснований на алгоритмі, відомому як DEFLATE. Це також алгоритм стиснення даних без втрат. Він використовує алгоритм LZ77 і кодування Хаффмана. По суті, GZIP посилається на однойменний формат файлу. Цей формат - 10-байтний заголовок, який містить магічне число (що означає числове або текстове значення, яке ніколи не змінюється і використовується для позначення формату файлу чи протоколу, неназваного числового значення, яке ніколи не змінюється, або відмінних значень, які не можна помилитися будь-що інше), додаткові заголовки, які можуть бути або не можуть бути фактично потрібними (наприклад, оригінальна назва файлу), тіло, що містить ПЕЧАТО-стиснене корисне навантаження (що є даними, які несуть заголовки), і 8-байтовий колонтитул який містить контрольну суму CRC-32, а також фактичну довжину вихідних нестиснених даних.

Існує різноманітна техніка стиснення, яку використовує формат BZIP2, які укладаються один на одного в кілька шарів. Вони відбуваються у дуже виразному порядку: кодування довжиною прогону (це будь-яка послідовність з чотирьох до 255 дублікатів символів, яка замінюється першими чотирма символами, і довжина кодування, що повторюється між 0 і 251), перетворення Берроуз-Уілера ( який є оборотним блоком-сортуванням, що складає саме ядро ​​BZIP2), Переміщення на передню частину (розмір оброблюваного блоку залишається незмінною), кодування довжиною виконання (яке складається з довгих ниток символів - як правило, нулів - що постійно повторення у висновку, і їх замінюють як символ, так і послідовність двох кодів), кодування Хаффмана (це процес, який замінює символи фіксованої довжини 8-бітових байтів кодами зміни довжини), множинне кодування Гофмана (які складаються з декілька таблиць Хоффмана однакового розміру), кодування Unary base 1, кодування Delta та розріджений масив бітів.

Підсумок:

1. GZIP - безкоштовна програма, що використовується для стиснення файлів; BZIP2 - алгоритм стиснення даних з відкритим кодом без втрат, що дозволяє отримати вихідні дані стислого файлу.

2. GZIP складається з 10-байтового заголовка, необов'язкових заголовків, корпусу та 8-байтового колонтитула; BZIP2 складається не менше ніж з дев'яти шарів методів стиснення.