aspose.info
AR

تنسيق ملف مضغوط LZ4 - LZ4

تاريخ التحديث

ما هو ملف LZ4؟

الملف بامتداد .lz4 هو ملف أرشيف مضغوط تم إنشاؤه باستخدام تطبيقات / أدوات مساعدة تدعم ضغط LZ4. تركز خوارزمية LZ4 على المفاضلة بين السرعة ونسبة الضغط. يمكن إنشاء أرشيفات LZ4 المضغوطة باستخدام الأداة المساعدة لسطر الأوامر LZ4 ويمكن فك ضغطها باستخدام نفس الأداة.

تنسيق ملف LZ4

تنسيق ملف LZ4 ، المستند إلى خوارزمية ضغط LZ4 ، مستقل عن نوع وحدة المعالجة المركزية ونظام التشغيل ونظام الملفات ومجموعة الأحرف. إنه مناسب لضغط الملفات وضغط التدفق باستخدام خوارزمية LZ4. تم تنفيذ التنفيذ الأولي لتنسيق LZ4 بلغة C بواسطة Yann Collet في عام 2011 وهو متاح كمرجع للمطور على Github .

تنسيق الإطار LZ4

الهيكل العام لتنسيق ملف LZ4 كما هو موضح أدناه.

MagicNbF. الواصفمنع(…)علامة النهايةج. اختباري
4 بايت3-15 بايت4 بايت0-4 بايت

الرقم السحري

4 بايت ، تنسيق Endian صغير. القيمة: 0x184D2204

واصف الإطار

يتكون واصف الإطار من 3 t0 15 بايت وهو الجزء الأكثر أهمية في المواصفات. يُشار إلى الحقلين Magic_Number و Frame_Descriptor معًا باسم LZ4 Frame Header ويتراوح حجمه بين 7 و 19 بايت. كما هو موضح أدناه.

FLGBD(حجم المحتوى)(معرف القاموس)HC
1 بايت1 بايت0 - 8 بايت0 - 4 بايت1 بايت

كتل البيانات

كل كتلة بيانات تتبع الترتيب التالي.

حجم الكتلةالبيانات(المجموع الاختباري للكتلة)
4 بايت0-4 بايت

علامة النهاية

ينتهي تدفق الكتل عندما تتبع آخر كتلة بيانات بقيمة 32 بت 0x00000000.

المجموع الاختباري للمحتوى

يتحقق Content_Checksum من صحة المحتوى الذي يتم فك تشفيره بشكل صحيح ويتم تنفيذه باستخدام نتيجة خوارزمية xxHash-32. إنه يتحقق من صحة نتائج الإرسال الناجح لجميع الكتل بالترتيب الصحيح وبدون أي خطأ.

مراجع

انظر أيضًا