LZMA SDK (Software Development Kit)

LZMA SDK (Software Development Kit)

Das LZMA SDK bietet eine Dokumentation, Beispiele, Headerdateien, Bibliotheken und Werkzeuge, um Anwendungen zu entwickeln, die die LZMA-Kompression verwenden.

Link

Größe

Datum

Version

Beschreibung

Download

1 MB

11.08.2024

24.08

LZMA SDK
C, C++, C#, Java
x86/x64-Binärdateien für Windows

Download

1 MB

20.06.2023

23.01

Download

12 KB

14.06.2015

LZMA-Spezifikation (Entwurf)

Was ist neu:

  • 24.05: Neuer Filter für RISC-V-Programme.

  • 23.01: Neuer Filter für ARM64-Programme. BCJ2-Filter wurde für eine bessere Kompressionsrate verbessert. Einige Bugs wurden behoben.

  • 21.07: Einige kleine Änderungen und Korrekturen.

  • 21.06: Der Bug in der LZMA-Encoding-Funktion wurde behoben.

  • 21.03 beta: LZMA-Wörterbuch bis zu 4 GB. Geschwindigkeitsoptimierungen.

  • 21.02 alpha: Unterstützung für macOS und Linux. Geschwindigkeitsoptimierungen.

  • 19.00: Stärke der Verschlüsselung für 7z-Archive wurde erhöht.

  • 18.06: Einige Geschwindigkeitsoptimierungen im LZMA/LZMA2-Code.

  • 18.05: Einige Geschwindigkeitsoptimierungen im LZMA/LZMA2-Code.

  • 18.01: Einige Änderungen im LZMA2/xz-Multithreading-Code für Kompression. Einige Fehler wurden behoben.

  • 9.35: AES-Code und SFX-Module wurden in das SDK integriert.

  • 9.20: Neues kleines SFX-Modul für Installationsroutinen.

  • 9.11: Unterstützung für PPMd.

  • 9.04: Unterstützung für LZMA2 und XZ.

  • 4.62: LZMA SDK wird Public Domain.

LZMA / LZMA2 sind die voreingestellte und allgemeine Kompressionsmethoden des 7z-Formates in 7-Zip. LZMA bietet eine hohe Kompressionsrate und sehr schnelle Dekompression, so dass es sich sehr gut für eingebettete Anwendungen eignet. Beispielsweise kann es zur ROM (Firmware)-Kompression benutzt werden.

LZMA SDK beinhaltet:

  • C++-Quelltext des LZMA-Encoder und -Decoder

  • C++-Quelltext für .7z-Kompression und -Dekompression (reduzierte Version)

  • ANSI-C-kompatibler Quelltext für LZMA/LZMA2/XZ-Kompression und -Dekompression

  • ANSI-C-kompatibler Quelltext für 7z-Dekompression mit Beispielen

  • C#-Quelltext für LZMA-Kompression und -Dekompression

  • Java-Quelltext für LZMA-Kompression und -Dekompression

  • lzma.exe zur Kompression und Dekompression von .lzma

  • 7zr.exe zur Arbeit mit 7z-Archiven (reduzierte Version der 7z.exe von 7-Zip)

  • SFX-Module zur Erstellung von selbstextrahierenden Paketen und Installern

Die Quelltexte in ANSI-C und C++ des LZMA SDK sind Teile des Quelltextes von 7-Zip.

Eigenschaften von LZMA:

  • Kompressionsgeschwindigkeit: 2–8 MB/s auf einer 4-GHz-CPU mit zwei CPU-Threads.

  • Dekompressionsgeschwindigkeit auf einem einzelnen CPU-Thread:

    • 30–100 MB/s auf moderner 4-GHz-CPU (Intel, AMD, ARM).

    • 5–15 MB/s auf einfacher 1-GHz-RISC-CPU (ARM, MIPS, PowerPC).

  • Nur wenig Arbeitsspeicher zum Dekomprimieren nötig: 8–32 KB + Wörterbuchgröße

  • Geringe Größe beim Entpacken: 2–8 KB (abhängig von Geschwindigkeitsoptimierungen)

Der LZMA-Dekoder nutzt nur CPU-Integerbefehle und kann für jede moderne 32bit-CPU implementiert werden (auf 16bit-CPU mit Abstrichen).

Lizenz

LZMA SDK steht unter der Public Domain.

Jeder darf den originalen LZMA-SDK-Code kopieren, ändern, veröffentlichen, nutzen, kompilieren, verkaufen oder verteilen, sowohl als Quelltext als auch als kompilierte Binärdatei, für jeden Zweck, kommerziell oder nichtkommerziell, unter allen Umständen.