GZIP vs BZIP2
O GNU zip (também conhecido como GZIP) é um aplicativo de software com o objetivo de compactar arquivos. Originalmente, ele pretendia substituir o programa de compactação usado nos primeiros sistemas Unix - para ser usado no Projeto GNU (um projeto de software livre).
O BZIP2 é um algoritmo de compactação de dados sem perda de código aberto - basicamente, uma classe de algoritmos de compactação de dados que possibilita que os dados originais de um arquivo compactado sejam completamente reconstruídos a partir dos dados compactados.
O GZIP é baseado em um algoritmo conhecido como DEFLATE. Este também é um algoritmo de compactação de dados sem perdas. Ele usa o algoritmo LZ77 e a codificação Huffman. Essencialmente, GZIP refere-se ao formato de arquivo com o mesmo nome. Esse formato é um cabeçalho de 10 bytes que contém um número mágico (que significa um valor numérico ou de texto que nunca muda e é usado para significar um formato ou protocolo de arquivo, um valor numérico sem nome que nunca muda ou valores distintos que não podem ser confundidos para qualquer outra coisa), cabeçalhos extras que podem ou não ser realmente necessários (nome do arquivo original, por exemplo), um corpo que contém uma carga útil compactada com DEFLATE (que são os dados que os cabeçalhos carregam) e um rodapé de 8 bytes que contém uma soma de verificação CRC-32, bem como o comprimento real dos dados não compactados originais.
Há uma variedade de técnicas de compactação usadas pelo formato BZIP2, que são empilhadas umas sobre as outras em várias camadas. Eles ocorrem em uma ordem muito distinta: codificação de comprimento de execução (que é qualquer sequência de quatro a 255 símbolos duplicados que é substituída pelos quatro primeiros símbolos e um comprimento de codificação que se repete entre 0 e 251), transformação de Burrows-Wheeler ( que é o tipo de bloco reversível que compõe o núcleo do BZIP2), Mover para frente (deixa o tamanho do bloco processado inalterado), Codificação de execução (que consiste em longas cadeias de símbolos - geralmente zeros - que constantemente repita na saída e são substituídos pelo símbolo e uma sequência de dois códigos), codificação Huffman (que é um processo que substitui símbolos de comprimento fixo de bytes de 8 bits por códigos de alteração de comprimento), codificação múltipla de Hoffman (que consiste em várias tabelas Hoffman de tamanho idêntico), codificação Unary base 1, codificação Delta e matriz de bits esparsos.
Resumo:
1. GZIP é um aplicativo gratuito usado para compactar arquivos; BZIP2 é um algoritmo de compactação de dados sem perda de código aberto que possibilita recuperar os dados originais de um arquivo compactado.
2. O GZIP consiste em um cabeçalho de 10 bytes, cabeçalhos opcionais, um corpo e um rodapé de 8 bytes; BZIP2 consiste em nada menos que nove camadas de técnicas de compressão.