LZMA SDK (Software Development Kit)

O LZMA SDK disponibiliza par aos desenvolvedores documentação, código fonte, e códigos de exemplo necessários para escrever software que use a compactação LZMA.

Link Tamanho Data Versão Descrição
Download 1 MB 20/06/2023 23.01 LZMA SDK (C, C++, C#, Java) (com binários para Windows)
Download 1 MB 15/07/2022 22.01
Download 12 KB 14/06/2015   Especificação do LZMA (Draft)

O que há de novo:

  • 23.01: Novo filtro para executáveis ARM64. O filtro BCJ2 foi melhorado para taxas de compressão melhores. Alguns bugs consertados.
  • 21.07: Alguns pequenos ajustes e alterações.
  • 21.06: Bug na função de codificação LZAM consertado.
  • 21.03 beta: Dicionário LZMA até 4Gb. Otimizações de velocidade.
  • 21.02 alpha: Suporte a macOS a Linux. Otimizações de velocidade.
  • 19.00: A força na criptografia para arquivos 7z archives foi aumentada.
  • 18.06: Algumas otimizações de velocidade no código do LZMA/LZMA2.
  • 18.05: Algumas otimizações de velocidade no código do LZMA/LZMA2.
  • 18.01: Algumas mudanças no código de multithreading do LZMA2/xz, para compressão. Alguns bugs foram consertados.
  • 9.35: Alguns bugs foram consertados. Foram incluídos código dos módulos AES e SFX na SDK.
  • 9.20: Novo módulo SFX pequeno, para programas instaladores.
  • 9.11: Suporte a PPMd.
  • 9.04: Suporte a LZMA2 e XZ.
  • 4.62: Alguns consertos. LZMA SDK é colocada sob domínio público.

LZMA é o método geral e padrão de compactação do formato 7z no 7-Zip. O LZMA provê uma alta taxa de compressão, e descompactação muito rápida, de modo que é muito util para aplicações embutidas. Por exemplo, pode ser usado para compressão de ROM (firmware).

O LZMA SDK inclui:

  • Código fonte em C++ do LZMA (Codificador e Decodificador)
  • Código fonte em C++ para compactação e descompactação .7z (versão reduzida)
  • Código fonte compatível com ANSI-C para compactação e descompactação LZMA / LZMA2 / XZ
  • Código fonte compatível com ANSI-C para compactação e descompactação 7z com exemplo
  • Código fonte em C# para compactação e descompactação LZMA
  • Código fonte em Java para compactação e descompactação LZMA
  • lzma.exe para compactação e descompactação .lzma
  • 7zr.exe para trabalhar com arquivos 7z (versão reduzida do 7z.exe do 7-Zip)
  • Módulos SFX para criar pacotes "self-extracting" e instaladores

O código fonte em ANSI-C e C++ no LZMA SDK é um subconjunto do código fonte do 7-Zip.

Características do LZMA:

  • Velocidade de compactação: 3 MB/s em CPUs 3 GHz dual-core.
  • Velocidade de descompactação:
    • 20-50 MB/s em CPUs modernas de 3 GHz (Intel, AMD, ARM).
    • 5-15 MB/s em CPUs RISC simples de 1 GHz (ARM, MIPS, PowerPC).
  • Pequenos requisitos de memória para descompactação: 8-32 KB + DictionarySize
  • Pequeno tamanho de código para descompactação: 2-8 KB (dependendo das otimizações de velocidade)

O decodificador LZMA usa somente operações inteiras e pode ser implementado em qualquer CPU de 32 bits moderna.

 

License

LZMA SDK está colocado em domínio público.

Qualquer pessoa é livre para copiar, modificar, publicar, usar, compilar, vender ou distribuir o código LZMA SDK original, seja no formato de código-fonte, seja em binário compilado, para qualquer proposta, comercial ou não-comercial, e por quaisquer meios.

Links sobre o LZMA


Copyright (C) 2022 Igor Pavlov
Portuguese Version by Renato Nunes Bastos