ما هو ملف LZMA؟
الملف بامتداد .lzma هو ملف أرشيف مضغوط تم إنشاؤه باستخدام طريقة ضغط LZMA (Lempel-Ziv-Markov chain Algorithm). تم العثور عليها / استخدامها بشكل أساسي على نظام التشغيل Unix وتشبه خوارزميات الضغط الأخرى مثل ZIP لتقليل حجم الملف. LZMA هو تنسيق ملف قديم ، يتم استبداله أو استبداله بتنسيق xz. نوع MIME لتنسيق .lzma هو \ `application / x-lzma ‘. تم تصميم تنسيق الملف هذا بواسطة Igor Pavlov للاستخدام في LZMA SDK.
تنسيق ملف LZMA
يتكون ملف LZMA من جزأين رئيسيين:
- العنوان
- البيانات المضغوطة
رأس LZMA
تحتوي ملفات LZMA على رأس مكون من 13 بايت متبوعًا ببيانات LZMA المضغوطة. يتكون رأس LZMA من:
- الخصائص
- حجم القاموس
- حجم غير مضغوط
خصائص رأس LZMA
يحتوي حقل الخصائص على ثلاث خصائص. يتم إعطاء اختصار بين قوسين ، متبوعًا بنطاق قيمة الخاصية. يتكون المجال من
- عدد بتات السياق الحرفي (lc، [0، 8]) ؛
- عدد بتات الموضع الحرفي (lp، [0، 4]) ؛ و
- عدد بتات الموضع (pb ، [0 ، 4]).
حجم قاموس LZMA
يتم تخزين هذا على أنه عدد صحيح صغير لا يوجد به إشارة 32 بت بقيم تتراوح بين 2 ^ n و 2 ^ n + 2 ^ (n-1). يمكن لـ LZMA Utils فك ضغط الملفات بأي حجم قاموس.
الحجم غير المضغوط
يتم تخزين الحجم غير المضغوط على أنه عدد صحيح صغير بدون إشارة 64 بت. تشير القيمة الخاصة لـ 0xFFFF_FFFF_FFFF_FFFF إلى أن الحجم غير المضغوط غير معروف. يتم تمثيل القيمة بواسطة علامة نهاية الحمولة النافعة (\ *) إذا وفقط إذا كان الحجم غير المضغوط غير معروف.