Low Layer - seiyab/wiki GitHub Wiki

  • steps for implementing gzip
    • read from stdin as "bytes", and write it to stdout
    • implement non-compressed DEFLATE block (BTYPE=00)
    • implement gzip with Non-compressed DEFLATE block
    • implement fixed Huffman codes with only literal
    • add fixed Huffman codes with fixed length = 3 and fixed distance = 3
    • extend distance range to 1..(some fixed range)
    • extend length range to 3..(some fixed range)
    • extend distance range to 1..=32768
    • extend length range to 3..=258
    • encode alphabet using predefined huffman table
    • encode huffman table only with literal
    • compress huffman table
    • optimize huffman table