aspose.info
HE

LZ4 - LZ4 פורמט קובץ דחוס

עודכן

מהו קובץ LZ4?

קובץ עם סיומת .lz4 הוא קובץ ארכיון דחוס שנוצר עם יישומים/כלי עזר התומכים בדחיסת LZ4. אלגוריתם LZ4 מתמקד בהחלפה בין מהירות ויחס דחיסה. ניתן ליצור ארכיונים דחוסים של LZ4 באמצעות כלי השירות של שורת הפקודה LZ4 וניתן לשחרר אותם באמצעות אותו.

פורמט קובץ LZ4

פורמט הקובץ LZ4, המבוסס על אלגוריתם הדחיסה LZ4, אינו תלוי בסוג המעבד, מערכת ההפעלה, מערכת הקבצים וקבוצת התווים. זה מתאים לדחיסת קבצים ולדחיסת סטרימינג באמצעות אלגוריתם LZ4. היישום הראשוני של פורמט LZ4 בוצע בשפת C על ידי יאן קולט בשנת 2011 והוא זמין לעיון המפתחים ב-Github .

פורמט מסגרת LZ4

המבנה הכללי של פורמט הקובץ LZ4 הוא כפי שמוצג להלן.

MagicNbF. מתארחסום(…)EndMarkC. Checksum
4 בתים3-15 בתים4 בתים0-4 בתים

מספר קסם

4 בתים, פורמט ליטל אנדיאן. ערך: 0x184D2204

מתאר מסגרת

מתאר המסגרת מורכב מ-3 t0 15 בתים והוא החלק החשוב ביותר במפרטים. ביחד, השדות Magic_Number ו- Frame_Descriptor מכונים LZ4 Frame Header, וגודלו משתנה בין 7 ל-19 בתים. זה כפי שמוצג להלן.

FLGBD(גודל תוכן)(מזהה מילון)HC
1 בייט1 בייט0 - 8 בתים0 - 4 בתים1 בייט

חסימות נתונים

כל בלוק נתונים עוקב אחר הסדר הבא.

גודל בלוקנתונים(בלוק Checksum)
4 בתים0 - 4 בתים

EndMark

זרימת הבלוקים מסתיימת כאשר אחרי בלוק הנתונים האחרון מופיע הערך של 32 סיביות 0x00000000.

בדיקת תוכן

ה-Content_Checksum מאמת את תקפות התוכן המפוענח כהלכה ומתבצע באמצעות התוצאה של אלגוריתם xxHash-32. זה מאמת את התוצאות של שידור מוצלח של כל הבלוקים בסדר הנכון וללא כל שגיאה.

הפניות

ראו גם