خزانة (تنسيق الملف)

ملف Cabinet (أو CAB ) هو تنسيق ملفات أرشيفية لنظام التشغيل مايكروسوفت ويندوز ، يدعم ضغط البيانات بدون فقدان البيانات والشهادات الرقمية المضمنة المستخدمة للحفاظ على سلامة الأرشيف. تتميز ملفات Cabinet .cabبامتدادات أسماء الملفات ، ويتم التعرف عليها من خلال أول أربعة بايتات منها (وتُسمى أيضًا رقمها السحري ) MSCF . كانت ملفات Cabinet تُعرف في الأصل باسم ملفات Diamond.

تصميم

يمكن أن يحتوي أرشيف CAB على ما يصل إلى 65,535 مجلدًا (مختلفة عن أدلة نظام التشغيل القياسية)، ويمكن أن يحتوي كل منها على ما يصل إلى 65,535 ملفًا، ليصل إجمالي الملفات إلى 4,294,836,225 ملفًا. داخليًا، يُعامل كل مجلد ككتلة مضغوطة واحدة ، مما يوفر ضغطًا أكثر كفاءة من ضغط كل ملف على حدة.

يجب أن يكون كل عنصر في المجلد ملفًا. [ 1 ] وبسبب هذا الهيكل، لا يمكن تخزين المجلدات الفارغة في أرشيفات CAB.

يوضح الشكل التالي مثالاً على بنية ملف CAB، مما يدل على العلاقة بين المجلدات والملفات:

  • ملف CAB
    • المجلد الأول
      • Records/Student_01 .tsv
      • Records/Photos/Student_01 .jpg
    • المجلد الثاني
      • Records/Student_02.tsv
      • Records/Photos/Student_02.jpg

لم يتم تحديد كيفية التعامل مع المسارات في تنسيق ملف CAB، مما يترك الأمر لتنفيذ البرنامج:

  • تُلحق بعض البرامج مسارات الملفات بأسماء الملفات فقط، كما لو كانت جميع الملفات في أرشيف CAB موجودة في مجلد واحد. يعمل برنامج Internet Explorer بهذه الطريقة، وكذلك مستكشف Windows، الذي يمكنه فتح أرشيفات CAB كمجلد.
  • يمكن لبعضها تخزين المسارات، وعند الاستخراج، إنشاء مجلدات حسب الحاجة. CABARC.EXE و EXTRACT.EXE (أدوات من Microsoft Cabinet SDK [ 2 ] ) بالإضافة إلىlcab[ 3 ] ومستخلص الكاجو[ 4 ] (أدوات المصادر المفتوحةالتابعة لجهات خارجية) تعمل بهذه الطريقة.
  • برنامج EXPAND.EXE ، بدءًا من الإصدار 6 (المضمن في أنظمة التشغيل Windows Vista والإصدارات الأحدث)، قادر على استخراج الملفات إلى مساراتها. أما الإصدارات السابقة فلا تقوم بذلك. [ 5 ]

قد يستخدم تنسيق ملف CAB خوارزميات الضغط التالية :

  • DEFLATE : اخترعه فيل كاتز ، مؤلف تنسيق ملف ZIP (وتحديدًا، تغليف MSZIP) [ 6 ]
  • الضغط الكمي: مرخص من ديفيد ستافورد، [ 7 ] مؤلف برنامج الأرشفة الكمي (غير متوفر في جميع إصدارات makecab.exe/diamond.exe) [ 8 ] [ 9 ]
  • LZX : ابتكره جوناثان فوربس وتومي بوتانين، وتم منحه لشركة مايكروسوفت عندما انضم فوربس إلى الشركة
  • فارغ: مخزن

يمكن لأرشيف CAB حجز مساحات فارغة في الأرشيف وكذلك لكل ملف في الأرشيف، وذلك لبعض الاستخدامات الخاصة بالتطبيقات مثل التوقيعات الرقمية أو البيانات العشوائية.

التطبيقات

يدعم نظام التشغيل مايكروسوفت ويندوز إنشاء ملفات أرشيف CAB باستخدام أداة makecabسطر الأوامر . كما يدعم استخراج محتويات ملفات أرشيف CAB باستخدام مستكشف الملفات ، وواجهة برمجة تطبيقات الإعداد ، وأوامر سطر الأوامر [ 10 ] و [ 11 ] و [ 12 ] .expand.exeextract.exeextrac32.exe

من البرامج الأخرى المعروفة التي تدعم أرشيفات CAB: WinZip و WinRAR و7- Zip . يُعدّ WinRAR cabextractأداة شائعة لأنظمة Linux، [ 13 ] ولكنه يقتصر على استخراج الأرشيفات. gcabأما WinRAR، فيمكنه استخراج وإنشاء أرشيفات CAB. [ 14 ] للاطلاع على القائمة الكاملة، راجع قسم مقارنة برامج أرشفة الملفات §  تنسيقات الأرشيف .

الاستخدامات

تستخدم العديد من تقنيات تثبيت مايكروسوفت تنسيق CAB، ومنها: Windows Installer ، وWindows Setup (من Windows 95 إلى Windows Server 2003وSetup API ، و Device Installer ، و Theme Pack ، و AdvPack (الذي يستخدمه Internet Explorer لتثبيت مكونات ActiveX ). كما ترتبط ملفات CAB غالبًا ببرامج ذاتية الاستخراج مثل Internet Explorer Express، حيث يقوم البرنامج التنفيذي باستخراج ملف CAB المرتبط بها. وفي بعض الأحيان، تُضمّن ملفات CAB في ملفات أخرى. على سبيل المثال، عادةً ما تتضمن ملفات MSI و MSU ملف CAB واحدًا أو أكثر.

يستخدم نظام التشغيل ويندوز تنسيق الملفات المضغوطة لأرشفة سجلات خدمة المكونات (CBS)، والتي تُحفظ في المجلد C:\Windows\Logs\CBS . قد يتسبب خلل في عملية الضغط في توليد كميات هائلة من ملفات السجلات غير الضرورية في هذا المجلد وفي المجلد C:\Windows\Temp ، مما قد يؤدي إلى استهلاك مساحة تخزين القرص الصلب بالكامل. [ 15 ] [ 16 ] كما أن حذف الملفات دون اتباع إجراء محدد [ 16 ] قد يتسبب في إعادة توليد الملفات المحذوفة بوتيرة أسرع.

في أنظمة لينكس ، يتم استخدام أرشيفات CAB بواسطة fwupd لتوزيع تحديثات البرامج الثابتة من موردي الأجهزة [ 17 ] والتي يمكن تثبيتها على الذاكرة غير المتطايرة .

.cabيستخدم برنامج التثبيت الآخر (مثل InstallShield ) امتداد اسم الملف هذا لتنسيقات الأرشفة الخاصة به. يستخدم InstallShield مكتبة zlib للضغط (انظر Deflate )، لكن رؤوس ملفاته تختلف عن رؤوس ملفات Microsoft CAB، لذا فهي غير متوافقة ولا يمكن معالجتها أو تعديلها باستخدام البرامج المصممة لتنسيق CAB القياسي. يمكن لبرامج خارجية متخصصة، مثل Unshield، استخراج هذا التنسيق الخاص. [ 18 ] يحتوي هذا التنسيق على رقم سحري مختلف هو ISC( ) . [ 19 ]

يتم توزيع برامج Windows CE و Windows Mobile كملفات CAB، حيث يحتوي الملف الأول بداخلها، والذي ينتهي بالامتداد ".000"، على تفاصيل كيفية تثبيته. [ 20 ]

قد تحتوي.msi ملفات تثبيت مايكروسوفت أحيانًا على ملفات CAB، ولكنها في الأصل بتنسيق الملف الثنائي المركب الذي يجب فك تشفيره أولًا. يمكن استخدام برامج مثل لفك ضغط هذه الملفات.lessmsi

يحتوي برنامج مايكروسوفت ببليشر على ميزة "التجميع والتشغيل" التي تجمع مستند ببليشر، مع جميع الروابط الخارجية، في ملف CAB .PUZ. يتم تفعيل هذه الملفات باستخدام ملف EXE مرفق يتم توزيعه معها .PUZ. ويمكن فتح هذه الملفات باستخدام أي برنامج لفك ضغط ملفات CAB.

انظر أيضاً

مراجع

  1. تنسيق خزانة مايكروسوفت
  2. "مجموعة أدوات تطوير برامج Microsoft Cabinet" . الدعم . Microsoft . تم الاسترجاع في 27 مارس 2013 .
  3. "lcab" . Freecode . Dice . تم الاسترجاع في 27 مارس 2013 .
  4. "مستخلص الكرنب" .
  5. " [ غير موثق ] [ أخطاء ] Expand.exe (المزيد عنه) (الصفحة 1) / موجه أوامر ويندوز / منتدى SS64" . ss64.org . تم الاطلاع عليه بتاريخ 21 أبريل 2018 .
  6. " [ MS-MCI ] : بنية بيانات ضغط وفك ضغط Microsoft ZIP (MSZIP)" . docs.microsoft.com . 13 أكتوبر 2020.
  7. سالومون، د. (ديفيد) (2007). ضغط البيانات : المرجع الكامل . مكتبة جينيسيس. لندن : سبرينغر. ص 187. ISBN    978-1-84628-602-5.{{cite book}}: CS1 maint: publisher location ( link )
  8. "تنسيق الضغط الكمي" . ماثيو روسوتو . مؤرشف من الأصل في 11 مايو 2021. تم الاطلاع عليه في 29 مارس 2022 .
  9. "تنسيق ملف الخزانة - وثائق المواصفات المفتوحة" (ملف PDF) . شركة مايكروسوفت. 4 مارس 2011. مؤرشف (ملف PDF) من الأصل في 18 نوفمبر 2016. تم الاطلاع عليه في 15 فبراير 2023 .
  10. توسيع – موجه أوامر ويندوز – SS64.com
  11. كيفية استخراج ملف CAB باستخدام أدوات سطر الأوامر في نظام التشغيل Windows 10
  12. برنامج Extrac32 – فك ضغط الملفات – موجه أوامر ويندوز – SS64.com
  13. كيفية استخراج ملفات CAB في لينكس
  14. مشروع gcab على جنوم
  15. "تنظيف سجلات الصيانة القائمة على المكونات" . مايكروسوفت تك نت . 7 يوليو 2017.
  16. ليونارد ، وودي ( 25 أغسطس 2016). "خلل في ضغط ملفات سجلات ويندوز 7 قد يملأ القرص الصلب" . كمبيوتر وورلد . مؤرشف من الأصل في 8 يناير 2019. تم الاطلاع عليه في 8 يناير 2019 .
  17. "LVFS: موردي الأجهزة" . مشروع خدمة البرامج الثابتة لموردي لينكس . تم الاطلاع عليه بتاريخ 3 مايو 2022 .
  18. "twogood/unshield" . GitHub . تم الاطلاع عليه بتاريخ 21 أبريل 2018 .
  19. "kyz/libmspack: doc/magic" . GitHub . 2 يناير 2022.
  20. "ملف تثبيت Windows CE (.CAB) بتنسيق ملف" . cabextract .