aspose.info
EL

LZMA - Μορφή συμπιεσμένου αρχείου LZMA

Ενημερώθηκε

Τι είναι ένα αρχείο LZMA;

Ένα αρχείο με επέκταση .lzma είναι ένα συμπιεσμένο αρχείο αρχειοθέτησης που δημιουργήθηκε χρησιμοποιώντας τη μέθοδο συμπίεσης LZMA (Lempel-Ziv-Markov chain Algorithm). Αυτοί βρίσκονται/χρησιμοποιούνται κυρίως στο λειτουργικό σύστημα Unix και είναι παρόμοιοι με άλλους αλγόριθμους συμπίεσης όπως ο ZIP για την ελαχιστοποίηση του μεγέθους του αρχείου. Το LZMA είναι μια παλαιού τύπου μορφή αρχείου, η οποία βρίσκεται ή έχει αντικατασταθεί από τη μορφή .xz. Ο τύπος MIME της μορφής .lzma είναι `application/x-lzma’. Αυτή η μορφή αρχείου σχεδιάστηκε από τον Igor Pavlov για χρήση στο LZMA SDK.

Μορφή αρχείου LZMA

Το αρχείο LZMA αποτελείται από δύο κύρια μέρη:

  1. Κεφαλίδα
  2. Συμπιεσμένα δεδομένα

Κεφαλίδα LZMA

Τα αρχεία LZMA έχουν μια κεφαλίδα 13 byte που ακολουθείται από τα συμπιεσμένα δεδομένα LZMA. Η κεφαλίδα LZMA αποτελείται από:

  • Ιδιότητες
  • Μέγεθος λεξικού
  • Μη συμπιεσμένο μέγεθος

Ιδιότητες κεφαλίδας LZMA

Το πεδίο Ιδιότητες περιέχει τρεις ιδιότητες. Μια συντομογραφία δίνεται σε παρένθεση, ακολουθούμενη από το εύρος τιμών της ιδιότητας. Το πεδίο αποτελείται από

  1. τον αριθμό των bit κυριολεκτικού περιβάλλοντος (lc, [0, 8]).
  2. τον αριθμό των κυριολεκτικών bit θέσης (lp, [0, 4]). και
  3. τον αριθμό των bit θέσης (pb, [0, 4]).

Μέγεθος λεξικού LZMA

Αυτός αποθηκεύεται ως ένας ανυπόγραφος μικρός ακέραιος endian 32-bit με τιμές που κυμαίνονται από 2^n και 2^n + 2^(n-1). Το LZMA Utils μπορεί να αποσυμπιέσει αρχεία με οποιοδήποτε μέγεθος λεξικού.

Μη συμπιεσμένο μέγεθος

Το μη συμπιεσμένο μέγεθος αποθηκεύεται ως ανυπόγραφος μικρός ακέραιος endian 64-bit. Μια ειδική τιμή 0xFFFF_FFFF_FFFF_FFFF υποδηλώνει ότι το μη συμπιεσμένο μέγεθος είναι άγνωστο. Η τιμή αντιπροσωπεύεται από τον δείκτη τέλους ωφέλιμου φορτίου (*) εάν και μόνο εάν το μη συμπιεσμένο μέγεθος είναι άγνωστο.

βιβλιογραφικές αναφορές

Δείτε επίσης