تنسيق الملف
تنسيق الملف هو الطريقة التي تُشفّر بها المعلومات لتخزينها في ملف حاسوبي . وقد يصف التشفير على مستويات تجريدية مختلفة، بما في ذلك تخطيط البتات والبايتات على المستوى الأدنى ، بالإضافة إلى التنظيم على المستوى الأعلى، مثل الترميز والبنية الجدولية . قد يكون تنسيق الملف معياريًا (خاصًا أو مفتوح المصدر ) ، أو قد يكون اتفاقية مخصصة .
صُممت بعض تنسيقات الملفات لأنواع بيانات محددة للغاية: فملفات PNG ، على سبيل المثال، تخزن الصور النقطية باستخدام ضغط البيانات بدون فقدان . بينما صُممت تنسيقات ملفات أخرى لتخزين أنواع مختلفة من البيانات: فتنسيق Ogg يُمكن أن يكون حاوية لأنواع مختلفة من الوسائط المتعددة، بما في ذلك أي مزيج من الصوت والفيديو ، مع أو بدون نص (مثل الترجمة )، والبيانات الوصفية . يمكن أن يحتوي ملف نصي على أي سلسلة من الأحرف، بما في ذلك أحرف التحكم ، ويتم ترميزه باستخدام أحد أنظمة ترميز الأحرف المختلفة . بعض تنسيقات الملفات، مثل HTML ، والرسومات المتجهة القابلة للتوسيع ، وشفرة المصدر لبرامج الحاسوب، هي ملفات نصية ذات صيغ محددة تسمح باستخدامها لأغراض معينة.
مواصفة
تتضمن بعض تنسيقات الملفات مواصفات منشورة تصف التنسيق، وربما كيفية التحقق من صحة البيانات فيه. ولا يتوفر مثل هذا المستند لكل تنسيق (أحيانًا لأن التنسيق يُعتبر سرًا تجاريًا ، وأحيانًا أخرى لعدم وجود وثيقة مُعدّة). وفي بعض الأحيان، يُحدد التنسيق فعليًا من خلال سلوك البرنامج الذي يصل إلى الملف.
في حال عدم توفر مواصفات، قد يقوم المطور بتحليل تنسيق الملف عكسيًا عن طريق فحص الملفات بهذا التنسيق، أو الحصول على المواصفات مقابل رسوم وتوقيع اتفاقية عدم إفصاح . ونظرًا لتكلفة هذه الأساليب من حيث الوقت والمال، فإن تنسيقات الملفات ذات المواصفات المتاحة للعموم تحظى بدعم أكبر من البرامج.
حماية الملكية الفكرية
يمكن استخدام قانون براءات الاختراع (بدلاً من حقوق النشر ) لحماية الملكية الفكرية الكامنة في تنسيق الملفات. ورغم أن القانون الأمريكي لا يسمح صراحةً بالحصول على براءة اختراع لتنسيق ملف، إلا أن بعض التنسيقات تستخدم خوارزمية حاصلة على براءة اختراع لتشفير البيانات . على سبيل المثال، قبل عام ٢٠٠٤، كان استخدام الضغط مع تنسيق ملفات GIF يتطلب استخدام خوارزمية حاصلة على براءة اختراع، ورغم أن مالك البراءة لم يقم بإنفاذها في البداية، إلا أنه بدأ لاحقاً بتحصيل رسوم حقوق الملكية . وقد أدى ذلك إلى انخفاض ملحوظ في استخدام ملفات GIF، وهو ما ساهم جزئياً في تطوير تنسيق PNG البديل . مع ذلك، انتهت صلاحية براءة اختراع GIF في الولايات المتحدة في منتصف عام ٢٠٠٣، وفي جميع أنحاء العالم في منتصف عام ٢٠٠٤.
تعريف
يحتاج كل من المستخدمين والتطبيقات إلى تحديد تنسيق الملف لكي يتم استخدامه بشكل صحيح. وبشكل عام، تختلف طرق التحديد باختلاف نظام التشغيل ، ولكل طريقة مزاياها وعيوبها.
امتداد اسم الملف
إحدى الطرق الشائعة التي تستخدمها العديد من أنظمة التشغيل، بما في ذلك ويندوز ، وماك أو إس ، وسي بي/إم ، وإم إس-دوس ، وفي إم إس ، وفي إم/سي إم إس ، هي تحديد تنسيق الملف بإضافة لاحقة إلى اسم الملف ، تُعرف بالامتداد . على سبيل المثال، يُعرَّف مستند HTML باسم ملف ينتهي بـ .html أو .htm ، وتُعرَّف صورة GIF بـ .gif .
في نظام الملفات FAT القديم ، كانت أسماء الملفات تقتصر على ثمانية أحرف للاسم الأساسي بالإضافة إلى امتداد من ثلاثة أحرف، يُعرف باسم ملف 8.3 . ونظرًا لانتشار هذا النظام، لا تزال العديد من التنسيقات تستخدم امتدادات من ثلاثة أحرف، على الرغم من أن الأنظمة الحديثة تدعم امتدادات أطول. ولعدم وجود قائمة موحدة للامتدادات، يمكن لأكثر من تنسيق استخدام الامتداد نفسه ، خاصةً الامتدادات المكونة من ثلاثة أحرف نظرًا لمحدودية عدد تركيبات الأحرف الثلاثة. وقد يُسبب هذا الوضع ارتباكًا للمستخدمين والتطبيقات على حد سواء.
من تبعات تحديد نوع الملف باستخدام الامتداد، إمكانية خداع المستخدمين والتطبيقات للتعامل مع الملف كصيغة مختلفة بمجرد إعادة تسميته. على سبيل المثال، يمكن التعامل مع ملف HTML كنص عادي بإضافة الامتداد filename.txt (أو تغيير الامتداد الحالي) . مع أن هذه الطريقة مفيدة، إلا أنها قد تُربك المستخدمين الأقل خبرةً في المجال التقني الذين قد يتسببون عن غير قصد في جعل الملف غير قابل للاستخدام (أو "فقدانه"). لتجنب هذا السيناريو، يدعم نظاما التشغيل Windows و macOS إخفاء الامتداد.
مع ذلك، قد يؤدي إخفاء امتداد الملف إلى ظهور ملفات متعددة بنفس الاسم في المجلد نفسه، مما يُسبب ارتباكًا للمستخدمين. على سبيل المثال، قد يحتاج المستخدم إلى صورة بصيغة .eps (للنشر) وصيغة .png (للمواقع الإلكترونية)، وقد يُسميها بنفس الاسم الأساسي (مثل CompanyLogo.eps و CompanyLogo.png ). عند إخفاء الامتداد، يظهر أنها تحمل نفس الاسم: CompanyLogo .
قد يُشكل إخفاء امتدادات الملفات خطرًا أمنيًا. [ 1 ] على سبيل المثال، قد يُنشئ مُستخدم خبيث برنامجًا تنفيذيًا باسم بريء مثل " Holiday photo.jpg.exe ". سيتم إخفاء امتداد " .exe "، وسيرى المستخدم غير المُدرك " Holiday photo.jpg "، والذي سيبدو كصورة JPEG ، وعادةً ما يكون غير قادر على إلحاق الضرر بالجهاز. مع ذلك، سيظل نظام التشغيل يرى امتداد " .exe " ويُشغّل البرنامج، مما قد يُلحق الضرر بالكمبيوتر. وينطبق الأمر نفسه على الملفات ذات الامتداد الواحد: نظرًا لعدم ظهوره للمستخدم، لا يُمكن استنتاج أي معلومات عن الملف دون فحصه بشكلٍ صريح. ولمزيد من الخداع، يُمكن تخزين أيقونة داخل البرنامج، وفي هذه الحالة، سيتم استبدال أيقونة الملف التنفيذي ( .exe ) في بعض أنظمة التشغيل بأيقونة شائعة الاستخدام لتمثيل صور JPEG، مما يجعل البرنامج يبدو كصورة. يمكن أيضًا تزييف امتدادات الملفات: فبعض فيروسات الماكرو في برنامج مايكروسوفت وورد تُنشئ ملف وورد بتنسيق قالب وتحفظه بامتداد .doc . وبما أن برنامج وورد يتجاهل الامتدادات عادةً ويعتمد على تنسيق الملف، فإن هذه الملفات تُفتح كقوالب، وتُنفذ، وتنشر الفيروس. وهذا يُمثل مشكلة عملية لأنظمة ويندوز حيث يكون إخفاء امتدادات الملفات مُفعلاً افتراضيًا.
البيانات الوصفية الداخلية
قد يتم الإشارة إلى تنسيق الملف داخل الملف نفسه - إما كمعلومات مخصصة لهذا الغرض أو كبيانات قابلة للتحديد داخل التنسيق يمكن استخدامها للتعريف على الرغم من أن هذا ليس الغرض المقصود منه.
غالبًا ما تُوضع المعلومات عمدًا في بداية الملف، نظرًا لسهولة قراءتها نسبيًا من قِبل المستخدمين والتطبيقات على حدٍ سواء. عندما تكون المعلومات في بداية الملف عبارة عن بنية تحتوي على بيانات وصفية أخرى ، تُسمى هذه البنية عادةً رأس الملف . أما عندما يبدأ الملف ببيانات صغيرة نسبيًا تُشير فقط إلى التنسيق، فتُسمى عادةً رقمًا سحريًا .
رأس الملف
تُخزَّن البيانات الوصفية الموجودة في رأس الملف عادةً في بداية الملف، ولكن قد توجد في أماكن أخرى أيضًا، بما في ذلك النهاية غالبًا، وذلك حسب تنسيق الملف أو نوع البيانات. عادةً ما تحتوي الملفات النصية على رؤوس أحرف، بينما تحتوي الملفات الثنائية عادةً على رؤوس ثنائية، مع أن هذا ليس قاعدة ثابتة. تشغل رؤوس الملفات النصية مساحة أكبر عادةً، ولكن نظرًا لسهولة قراءتها، يمكن فحصها بسهولة باستخدام برامج بسيطة مثل محرر النصوص أو محرر الأرقام السداسية العشرية.
إلى جانب تحديد تنسيق الملف، قد تحتوي رؤوس الملفات على بيانات وصفية حول الملف ومحتوياته. على سبيل المثال، تخزن معظم ملفات الصور معلومات حول تنسيق الصورة وحجمها ودقتها ومساحة ألوانها ، بالإضافة إلى معلومات اختيارية عن مُنشئ الصورة، مثل اسم المصور وتاريخ ومكان التقاطها ونوع الكاميرا وإعدادات التصوير المستخدمة ( بيانات Exif )، وما إلى ذلك. يمكن للبرامج التي تقرأ الملف أو تفسره استخدام هذه البيانات الوصفية أثناء عملية التحميل وبعدها.
قد يستخدم نظام التشغيل رؤوس الملفات لجمع معلومات سريعة عن ملف ما دون تحميلها بالكامل في الذاكرة، إلا أن هذه الطريقة تستهلك موارد حاسوبية أكثر من القراءة المباشرة من معلومات الدليل . على سبيل المثال، عندما يحتاج مدير ملفات رسومي إلى عرض محتويات مجلد، عليه قراءة رؤوس العديد من الملفات قبل عرض الرموز المناسبة، وهذه الرؤوس موجودة في أماكن مختلفة على وسيط التخزين، مما يُطيل وقت الوصول إليها. وقد يتطلب مجلد يحتوي على العديد من الملفات ذات البيانات الوصفية المعقدة، مثل معلومات الصور المصغرة ، وقتًا طويلاً قبل عرضه.
إذا كان رأس الملف مُبرمجًا بشكل ثابت ثنائيًا بحيث يتطلب تفسيرًا معقدًا للتعرف عليه، خاصةً لأغراض حماية محتوى البيانات الوصفية، فهناك خطر من سوء تفسير تنسيق الملف. بل قد يكون مكتوبًا بشكل رديء في المصدر. وهذا قد يؤدي إلى تلف البيانات الوصفية، وفي أسوأ الحالات، قد يجعل الملف غير قابل للقراءة.
ومن الأمثلة الأكثر تعقيدًا لرؤوس الملفات تلك المستخدمة في تنسيقات ملفات التغليف (أو الحاويات).
الرقم السحري
إحدى طرق دمج بيانات تعريف نوع الملف هي تخزين "رقم سحري" داخل الملف نفسه. في الأصل، كان هذا المصطلح يُستخدم لمعرفات ثنائية البايت في بداية الملفات، ولكن بما أن أي تسلسل ثنائي يُمكن اعتباره رقمًا، فإن أي ميزة في تنسيق الملف تميزه بشكل فريد يُمكن استخدامها للتعريف. على سبيل المثال، تبدأ صور GIF دائمًا بتمثيل ASCII إما GIF87aأو GIF89a، اعتمادًا على المعيار الذي تتبعه. يصعب اكتشاف العديد من أنواع الملفات، وخاصة ملفات النصوص العادية، بهذه الطريقة. قد تبدأ ملفات HTML، على سبيل المثال، بالسلسلة (وهي غير حساسة لحالة الأحرف)، أو بتعريف نوع مستند مناسب يبدأ بـ ، أو، بالنسبة لـ XHTML ، بمعرف XML الذي يبدأ بـ . يمكن أن تبدأ الملفات أيضًا بتعليقات HTML، أو نص عشوائي، أو عدة أسطر فارغة، ولكنها تظل ملفات HTML قابلة للاستخدام.<html><!DOCTYPE html<?xml
يُوفر أسلوب الرقم السحري ضمانات أفضل لتحديد التنسيق بشكل صحيح، وغالبًا ما يُمكنه تحديد معلومات أدقّ حول الملف. ونظرًا لأن اختبارات "الرقم السحري" الموثوقة نسبيًا قد تكون معقدة، ويجب اختبار كل ملف فعليًا مقابل كل الاحتمالات في قاعدة بيانات الأرقام السحرية، فإن هذا الأسلوب غير فعال نسبيًا، خاصةً عند عرض قوائم كبيرة من الملفات (على عكس الطرق القائمة على اسم الملف والبيانات الوصفية التي لا تحتاج إلا إلى فحص جزء واحد من البيانات ومطابقته مع فهرس مُرتب). كما يجب قراءة البيانات من الملف نفسه، مما يزيد من زمن الاستجابة مقارنةً بالبيانات الوصفية المخزنة في الدليل. وعندما لا تُتيح أنواع الملفات التعرف عليها بهذه الطريقة، يجب على النظام اللجوء إلى البيانات الوصفية. ومع ذلك، فهي أفضل طريقة للبرنامج للتحقق مما إذا كان الملف الذي طُلب منه معالجته بالتنسيق الصحيح: فبينما قد يتغير اسم الملف أو بياناته الوصفية بشكل مستقل عن محتواه، فإن فشل اختبار الرقم السحري المصمم جيدًا يُعد علامة أكيدة على أن الملف إما تالف أو من نوع خاطئ. من ناحية أخرى، فإن الرقم السحري الصحيح لا يضمن أن الملف غير تالف أو أنه من النوع الصحيح.
تُعدّ أسطر "shebang" في ملفات البرامج النصية حالة خاصة من الأرقام السحرية. يتكون الرقم السحري فيها من نص قابل للقراءة داخل الملف، يُحدد مُفسِّرًا مُعينًا والخيارات التي سيتم تمريرها إليه.
نظام تشغيل آخر يستخدم الأرقام السحرية هو AmigaOS ، حيث كانت تُسمى هذه الأرقام "Magic Cookies" (ملفات تعريف الارتباط السحرية)، واعتُمد نظامًا قياسيًا للتعرف على الملفات التنفيذية بتنسيق Hunk ، ولتمكين البرامج والأدوات والمرافق من التعامل تلقائيًا مع ملفات البيانات المحفوظة، أو أي نوع آخر من الملفات، عند حفظ البيانات وتحميلها. ثم جرى تحسين هذا النظام بنظام التعرف على أنواع البيانات القياسي في Amiga . وهناك طريقة أخرى هي FourCC ، التي نشأت في نظام OSType على Macintosh، ثم تبناها لاحقًا تنسيق تبادل الملفات (IFF) ومشتقاته.
البيانات الوصفية الخارجية
تتمثل الطريقة الأخيرة لتخزين تنسيق الملف في تخزين معلومات حول التنسيق بشكل صريح في نظام الملفات، بدلاً من تخزينها داخل الملف نفسه.
يُبقي هذا الأسلوب البيانات الوصفية منفصلة عن كلٍّ من البيانات الرئيسية والاسم، ولكنه أقل قابليةً للنقل من امتدادات أسماء الملفات أو "الأرقام السحرية"، إذ يجب تحويل التنسيق من نظام ملفات إلى آخر. وبينما ينطبق هذا إلى حدٍّ ما على امتدادات أسماء الملفات - على سبيل المثال، للتوافق مع حدّ الأحرف الثلاثة في نظام MS-DOS - فإن معظم أشكال التخزين لها تعريفٌ مكافئٌ تقريبًا لبيانات الملف واسمه، ولكنها قد تحتوي على تمثيلٍ مختلفٍ أو معدومٍ للبيانات الوصفية الإضافية.
لاحظ أن ملفات ZIP وغيرها من ملفات الأرشيف تحل مشكلة التعامل مع البيانات الوصفية. يقوم برنامج مساعد بتجميع عدة ملفات مع بيانات وصفية لكل ملف والمجلدات/الأدلة التي ينتمي إليها، كل ذلك في ملف واحد جديد (مثل ملف ZIP بامتداد .zip ). يتم ضغط الملف الجديد، وربما تشفيره، ولكنه الآن قابل للنقل كملف واحد عبر أنظمة التشغيل عن طريق بروتوكول نقل الملفات (FTP) أو إرساله عبر البريد الإلكتروني كمرفق. عند الوصول إلى الوجهة، يجب فك ضغط الملف باستخدام برنامج مساعد متوافق ليكون قابلاً للاستخدام. بهذه الطريقة، تُحل مشاكل التعامل مع البيانات الوصفية باستخدام ملفات ZIP أو ملفات الأرشيف.
رموز أنواع نظام التشغيل ماك
يخزن نظام الملفات الهرمي (HIR) ونظام الملفات HFS+ في نظام التشغيل Mac OS، بالإضافة إلى نظام ملفات Apple، رموزًا للمنشئ والنوع كجزء من مدخل الدليل لكل ملف . تُعرف هذه الرموز باسم OSTypes. يمكن أن تكون هذه الرموز أي تسلسل من 4 بايت، ولكن غالبًا ما يتم اختيارها بحيث يُمثل تمثيل ASCII سلسلة من الأحرف ذات المعنى، مثل اختصار اسم التطبيق أو الأحرف الأولى من اسم المطور. على سبيل المثال، ملف "stack" في برنامج HyperCard له منشئ WILD (نسبةً إلى الاسم السابق لـ HyperCard، "WildCard") ونوع STAK . أما محرر النصوص BBEdit، فله رمز منشئ يشير إلى مبرمجه الأصلي، ريتش سيجل . يحدد رمز النوع تنسيق الملف، بينما يحدد رمز المنشئ البرنامج الافتراضي لفتحه عند النقر المزدوج عليه من قِبل المستخدم. على سبيل المثال، قد يمتلك المستخدم عدة ملفات نصية جميعها تحمل رمز النوع TEXT ، ولكن كل منها يُفتح في برنامج مختلف، نظرًا لاختلاف رموز المنشئ. كان الهدف من هذه الخاصية، على سبيل المثال، هو فتح ملفات النصوص العادية القابلة للقراءة البشرية في محرر نصوص عام، بينما تُفتح ملفات البرمجة أو أكواد HTML في محرر متخصص أو بيئة تطوير متكاملة (IDE) . مع ذلك، كانت هذه الخاصية مصدرًا لارتباك المستخدمين في كثير من الأحيان، إذ كان من غير المتوقع تحديد البرنامج الذي سيُفتح عند النقر المزدوج على الملفات.R*ch
يستخدم نظام التشغيل RISC نظامًا مشابهًا، يتكون من رقم مكون من 12 بت يمكن البحث عنه في جدول من الأوصاف - على سبيل المثال، يتم "تسمية" الرقم السداسي العشري بـ PoScript ، مما يمثل ملف PostScript .FF5
معرّفات النوع الموحد لنظام macOS (UTIs)
معرّف النوع الموحد (UTI) هو أسلوب يُستخدم في نظام macOS لتحديد فئات الكيانات "المصنفة" بشكل فريد، مثل تنسيقات الملفات. وقد طورته شركة Apple كبديل لنظام OSType (رموز النوع والمنشئ).
معرّف الملف الفريد (UTI) هو سلسلة أساسية في Core Foundation ، تستخدم سلسلة DNS عكسية . تستخدم بعض الأنواع الشائعة والمعيارية نطاقًا يُسمى public (مثل public.png لصورة Portable Network Graphics )، بينما يمكن استخدام نطاقات أخرى لأنواع جهات خارجية (مثل com.adobe.pdf لتنسيق المستندات المحمولة ). يمكن تعريف معرّفات الملفات الفريدة ضمن بنية هرمية، تُعرف باسم تسلسل التوافق. بالتالي، يتوافق public.png مع نوع فرعي من public.image ، والذي بدوره يتوافق مع نوع فرعي من public.data . يمكن أن يوجد معرّف الملف الفريد في تسلسلات هرمية متعددة، مما يوفر مرونة كبيرة.
بالإضافة إلى تنسيقات الملفات، يمكن استخدام معرّفات UTI أيضًا لكيانات أخرى يمكن أن توجد في نظام macOS، بما في ذلك:
- بيانات الحافظة
- المجلدات (الأدلة)
- الأنواع القابلة للترجمة (كما يتم التعامل معها بواسطة مدير الترجمة)
- حزم
- الأطر
- بيانات البث
- الأسماء المستعارة والروابط الرمزية
كتالوج VSAM
في أنظمة التشغيل IBM OS/VS حتى z/OS ، يحدد كتالوج VSAM (قبل كتالوجات ICF ) وسجل وحدة تخزين VSAM في مجموعة بيانات وحدة تخزين VSAM (VVDS) (مع كتالوجات ICF) نوع مجموعة بيانات VSAM.
VTOC
في أنظمة التشغيل IBM OS/360 حتى z/OS ، يحدد تنسيق 1 أو 7 كتلة التحكم في مجموعة البيانات (DSCB) في جدول محتويات وحدة التخزين (VTOC) تنظيم مجموعة البيانات ( DSORG ) لمجموعة البيانات الموصوفة به.
السمات الموسعة لنظام التشغيل OS/2
تتيح أنظمة الملفات HPFS و FAT12 وFAT16 (وليس FAT32) تخزين "السمات الموسعة" مع الملفات. تتألف هذه السمات من مجموعة من الثلاثيات: اسم، ونوع مُرمّز للقيمة، وقيمة، حيث تكون الأسماء فريدة، ويمكن أن يصل طول القيم إلى 64 كيلوبايت. توجد معانٍ موحدة لأنواع وأسماء معينة (في نظام التشغيل OS/2 ). على سبيل المثال، تُستخدم السمة الموسعة ".TYPE" لتحديد نوع الملف. تتضمن قيمتها قائمة بنوع ملف واحد أو أكثر مرتبط بالملف، كل منها عبارة عن سلسلة نصية، مثل "نص عادي" أو "مستند HTML". وبالتالي، قد يحتوي الملف على عدة أنواع.
يُتيح نظام ملفات NTFS أيضًا تخزين سمات OS/2 الموسعة، كأحد فروع الملفات ، ولكن هذه الميزة موجودة فقط لدعم نظام OS/2 الفرعي (غير موجودة في XP)، لذا يتعامل نظام Win32 الفرعي مع هذه المعلومات ككتلة بيانات مبهمة ولا يستخدمها. بدلاً من ذلك، يعتمد على فروع ملفات أخرى لتخزين البيانات الوصفية بتنسيقات خاصة بـ Win32. لا يزال بإمكان برامج Win32 قراءة وكتابة سمات OS/2 الموسعة، ولكن يجب على التطبيقات تحليل البيانات بالكامل.
سمات POSIX الموسعة
في أنظمة يونكس والأنظمة الشبيهة بيونكس ، تسمح أنظمة الملفات ext2 و ext3 و ext4 و ReiserFS الإصدار 3 و XFS و JFS و FFS و HFS + بتخزين سمات موسعة مع الملفات. تتضمن هذه السمات قائمة عشوائية من سلاسل "الاسم=القيمة"، حيث تكون الأسماء فريدة ويمكن الوصول إلى القيمة من خلال اسمها المرتبط بها.
معرفات PRONOM الفريدة (PUIDs)
معرّف PRONOM الفريد الدائم (PUID) هو نظام قابل للتوسيع لمعرّفات دائمة وفريدة لا لبس فيها لتنسيقات الملفات، وقد طوّرته الأرشيفات الوطنية البريطانية كجزء من خدمة سجل PRONOM التقنية . يمكن التعبير عن معرّفات PUID كمعرّفات موارد موحدة باستخدام مساحة الاسم info:pronom/ . على الرغم من أن نظام PUID لم يُستخدم على نطاق واسع خارج الحكومة البريطانية وبعض برامج الحفظ الرقمي ، إلا أنه يوفر دقة أكبر من معظم الأنظمة البديلة.
أنواع MIME
تُستخدم أنواع MIME على نطاق واسع في العديد من تطبيقات الإنترنت ، وتتزايد شعبيتها في مجالات أخرى، على الرغم من ندرة استخدامها لمعلومات أنواع الملفات على القرص. تتكون هذه الأنواع من نظام موحد للمعرفات (تديره هيئة IANA ) يتألف من نوع ونوع فرعي ، يفصل بينهما خط مائل - على سبيل المثال، text/html أو image/gif . صُممت هذه الأنواع في الأصل كوسيلة لتحديد نوع الملف المرفق بالبريد الإلكتروني ، بغض النظر عن نظامي التشغيل المصدر والهدف. تُستخدم أنواع MIME لتحديد الملفات على أنظمة BeOS و AmigaOS 4.0 و MorphOS ، كما تُستخدم لتخزين توقيعات التطبيقات الفريدة لتشغيلها. في نظامي AmigaOS وMorphOS، يعمل نظام أنواع MIME بالتوازي مع نظام أنواع البيانات الخاص بنظام Amiga.
لكن هناك مشاكل تتعلق بأنواع MIME؛ فقد قامت العديد من المنظمات والأفراد بإنشاء أنواع MIME الخاصة بهم دون تسجيلها بشكل صحيح لدى IANA، مما يجعل استخدام هذا المعيار صعبًا في بعض الحالات.
معرّفات تنسيق الملفات (FFIDs)
تُعدّ مُعرّفات تنسيقات الملفات طريقة أخرى، وإن لم تكن شائعة الاستخدام، لتحديد تنسيقات الملفات وفقًا لأصلها وفئتها. وقد صُممت هذه الطريقة خصيصًا لمجموعة برامج Description Explorer. تتكون من عدة أرقام على النحو التالي NNNNNNNNN-XX-YYYYYYY: . يشير الجزء الأول إلى الجهة المُنشئة/المسؤولة عن الملف (يمثل هذا الرقم قيمة في قاعدة بيانات شركة/منظمة معايير)، بينما يُصنّف الرقمان التاليان نوع الملف بالنظام الست عشري . أما الجزء الأخير، فيتكون من امتداد اسم الملف المعتاد أو رقم المعيار الدولي للملف، مع إضافة أصفار إلى اليسار. على سبيل المثال، يحتوي ملف PNG على مُعرّف تنسيق الملفات FFID التالي: 000000001-31-0015948حيث 31يشير إلى ملف صورة، 0015948و هو رقم المعيار، و 000000001يشير إلى المنظمة الدولية للمعايير (ISO).
تحديد تنسيق الملف بناءً على محتواه
هناك طريقة أخرى أقل شيوعًا لتحديد نوع الملف، وهي فحص محتوى الملف بحثًا عن أنماط مميزة بين أنواع الملفات. يتكون محتوى الملف من سلسلة من البايتات، ولكل بايت 256 تبديلًا فريدًا (من 0 إلى 255). وبالتالي، فإن حساب تكرار أنماط البايتات، والذي يُشار إليه غالبًا بتوزيع تردد البايتات، يُعطي أنماطًا مميزة لتحديد أنواع الملفات. توجد العديد من مخططات تحديد أنواع الملفات القائمة على المحتوى، والتي تستخدم توزيع تردد البايتات لبناء نماذج تمثيلية لنوع الملف، وتستخدم تقنيات إحصائية وتقنيات استخراج البيانات لتحديد أنواع الملفات. [ 2 ]
بنية الملفات
توجد عدة طرق لتنظيم البيانات في ملف. وفيما يلي وصف لأكثرها شيوعاً.
تنسيقات غير منظمة (تفريغات الذاكرة الخام)
كانت تنسيقات الملفات السابقة تستخدم تنسيقات البيانات الخام التي تتكون من تفريغ صور الذاكرة لهيكل واحد أو أكثر مباشرة في الملف.
لهذا الأمر عدة عيوب. فما لم تكن صور الذاكرة تحتوي على مساحات محجوزة للتوسعات المستقبلية، يصبح توسيع هذا النوع من الملفات المهيكلة وتحسينه أمرًا بالغ الصعوبة. كما أنه يُنشئ ملفات قد تكون خاصة بمنصة أو لغة برمجة معينة (على سبيل المثال، لا يتم التعرف على بنية تحتوي على سلسلة باسكال في لغة C ). من ناحية أخرى، يُعد تطوير أدوات لقراءة وكتابة هذه الأنواع من الملفات أمرًا بسيطًا للغاية.
أدت قيود التنسيقات غير المهيكلة إلى تطوير أنواع أخرى من تنسيقات الملفات التي يمكن توسيعها بسهولة وتكون متوافقة مع الإصدارات السابقة في نفس الوقت.
تنسيقات تعتمد على الأجزاء
في هذا النوع من بنية الملفات، تُضمّن كل بيانات في حاوية تُعرّفها بطريقة ما. ويمكن تحديد نطاق الحاوية من خلال علامات البداية والنهاية، أو من خلال حقل طول مُحدد، أو من خلال متطلبات ثابتة في تعريف تنسيق الملف.
خلال سبعينيات القرن العشرين، استخدمت العديد من البرامج تنسيقات من هذا النوع. على سبيل المثال، برامج معالجة النصوص مثل troff و Script و Scribe ، وملفات تصدير قواعد البيانات مثل CSV . كما استخدمت شركتا Electronic Arts و Commodore - Amiga هذا النوع من تنسيقات الملفات في عام 1985، من خلال تنسيق ملفات IFF (تنسيق تبادل الملفات).
يُطلق على الحاوية أحيانًا اسم "قطعة" ، على الرغم من أن "قطعة" قد تعني أيضًا أن كل جزء صغير، و/أو أن القطع لا تحتوي على قطع أخرى؛ العديد من التنسيقات لا تفرض هذه المتطلبات.
قد تُسمى المعلومات التي تُحدد "جزءًا" معينًا بأسماء مختلفة، مثل "اسم الحقل" أو "المُعرّف" أو "التسمية" أو "الوسم". غالبًا ما تكون المُعرّفات سهلة القراءة، وتُصنّف أجزاءً من البيانات، على سبيل المثال، "اسم العائلة" أو "العنوان" أو "المستطيل" أو "اسم الخط"، وما إلى ذلك. وهي تختلف عن المُعرّفات بالمعنى المتعارف عليه لمفتاح قاعدة البيانات أو الرقم التسلسلي (مع أن المُعرّف قد يُعرّف البيانات المرتبطة به كمفتاح).
مع هذا النوع من بنية الملفات، تتجاهل الأدوات التي لا تعرف مُعرّفات أجزاء معينة تلك التي لا تفهمها. وبحسب المعنى الفعلي للبيانات المتجاهلة، قد يكون هذا مفيدًا أو غير مفيد ( يُعرّف CSS هذا السلوك صراحةً).
تم استخدام هذا المفهوم مرارًا وتكرارًا بواسطة RIFF (المكافئ من مايكروسوفت وآي بي إم لـ IFF)، وPNG، وتخزين JPEG، وتدفقات وملفات DER ( قواعد التشفير المميزة ) المشفرة (التي تم وصفها في الأصل في CCITT X.409:1984 وبالتالي فهي تسبق IFF)، وتنسيق تبادل البيانات المهيكلة (SDXF) .
في الواقع، يجب على أي تنسيق بيانات أن يحدد بطريقة ما أهمية أجزائه المكونة، وتُعد علامات الحدود المضمنة طريقة واضحة للقيام بذلك:
- تستخدم رؤوس MIME تسمية مفصولة بنقطتين رأسيتين في بداية كل سطر منطقي. لا يمكن أن تحتوي رؤوس MIME على رؤوس MIME أخرى، على الرغم من أن محتوى البيانات في بعض الرؤوس يتضمن أجزاءً فرعية يمكن استخراجها باستخدام اصطلاحات أخرى.
- تستخدم ملفات CSV والملفات المشابهة عادةً سجلات رأسية تحتوي على أسماء الحقول، مع استخدام الفواصل لتمييز حدود الحقول. ومثل MIME، لا يدعم CSV هياكل البيانات ذات المستويات المتعددة.
- يمكن اعتبار لغة XML وما شابهها، بشكل عام، نوعًا من التنسيقات القائمة على الأجزاء، حيث تُعرَّف عناصر البيانات بواسطة علامات تشبه مُعرِّفات الأجزاء. ومع ذلك، فهي تتمتع بمزايا رسمية مثل المخططات والتحقق من الصحة ، بالإضافة إلى القدرة على تمثيل هياكل أكثر تعقيدًا مثل الأشجار والرسوم البيانية الموجهة غير الدورية والمخططات . إذا اعتُبرت XML تنسيقًا "للأجزاء"، فإن SGML وسلفها IBM GML يُعدّان من أوائل الأمثلة على هذه التنسيقات.
- JSON يشبه XML بدون مخططات أو مراجع متبادلة أو تعريف لمعنى أسماء الحقول المتكررة، وغالبًا ما يكون مناسبًا للمبرمجين.
- YAML يشبه JSON، ولكنه يستخدم المسافة البادئة لفصل أجزاء البيانات ويهدف إلى أن يكون أكثر قابلية للقراءة البشرية من JSON أو XML.
- تتشابه بروتوكولات المخازن بدورها مع JSON، حيث تستبدل بشكل ملحوظ علامات الحدود في البيانات بأرقام الحقول، والتي يتم ربطها بالأسماء من خلال آلية خارجية.
تنسيقات قائمة على الدليل
هذا تنسيق قابل للتوسيع آخر، يشبه إلى حد كبير نظام الملفات ( مستندات OLE هي أنظمة ملفات فعلية)، حيث يتكون الملف من "مدخلات دليل" تحتوي على موقع البيانات داخل الملف نفسه بالإضافة إلى توقيعاته (وفي بعض الحالات نوعه). ومن الأمثلة الجيدة على هذه الأنواع من هياكل الملفات: صور الأقراص ، والملفات التنفيذية ، ومستندات OLE، وملفات TIFF ، والمكتبات .
بعض تنسيقات الملفات مثل ODT و DOCX، كونها تعتمد على PKZIP ، يتم تقسيمها إلى أجزاء وتحمل دليلًا.
يُسهّل هيكل تنسيق الملفات القائم على الدليل إجراء التعديلات مقارنةً بالتنسيقات غير المهيكلة أو القائمة على الأجزاء. تسمح طبيعة هذا النوع من التنسيقات للمستخدمين بإنشاء ملفات بعناية، مما يدفع برامج القراءة إلى القيام بأمور لم يقصدها مُصممو التنسيق. ومن الأمثلة على ذلك ما يُعرف بـ" قنبلة ZIP ". كما تستخدم تنسيقات الملفات القائمة على الدليل قيمًا تُشير إلى مناطق أخرى في الملف، ولكن إذا أشارت قيمة بيانات لاحقة إلى بيانات تمت قراءتها سابقًا، فقد يؤدي ذلك إلى حلقة لا نهائية لأي برنامج قراءة يفترض صحة ملف الإدخال ويتبع الحلقة بشكل أعمى.
انظر أيضاً
- تنسيق ملف صوتي
- تنسيق الملف الكيميائي
- مقارنة بين تنسيقات الملفات القابلة للتنفيذ
- تنسيق حاوية رقمية
- تنسيق ملف المستند
- أداة تحديد تنسيق ملفات DROID
- ملف (أمر) ، أداة لتحديد نوع الملف
- تحويل الملفات
- الاستعداد للمستقبل
- ملخص تنسيق ملفات الرسومات
- تنسيقات ملفات الصور
- هندسة المعلومات
- قائمة تنسيقات الأرشيف
- قائمة تنسيقات الملفات
- قائمة بتوقيعات الملفات ، أو "الأرقام السحرية"
- قائمة بامتدادات أسماء الملفات (مرتبة أبجدياً)
- قائمة بتنسيقات الملفات المجانية
- قائمة بتنسيقات ملفات الحركة والإيماءات
- الرقم السحري (البرمجة)
- ملف الكائن
- تنسيق ملف الفيديو
- أنواع ملفات ويندوز
- امتداد اسم الملف
مراجع
- "أنواع بيانات السمات الموسعة" . نصائح وحيل REXX، الإصدار 2.80 . مؤرشف من الأصل في 25 ديسمبر 2004. تم الاطلاع عليه في 9 فبراير 2005 .
- "السمات الموسعة المستخدمة في WPS" . نصائح وحيل REXX، الإصدار 2.80 . مؤرشف من الأصل في 21 مارس 2005. تم الاطلاع عليه في 9 فبراير 2005 .
- "السمات الموسعة - ما هي وكيف يمكنك استخدامها ؟" . روجر أور . مؤرشف من الأصل في 21 مارس 2008. تم الاطلاع عليه في 9 فبراير 2005 .
روابط خارجية
- قائمة أبجدية لأوصاف تنسيقات الملفات في مكتبة الكونغرس
- أفضل الممارسات لتنسيقات الملفات ، الولايات المتحدة: مكتبات جامعة ستانفورد ، خدمات إدارة البيانات"تؤثر تنسيقات الملفات التي تستخدمها بشكل مباشر على قدرتك على فتح تلك الملفات في وقت لاحق وعلى قدرة الآخرين على الوصول إلى تلك البيانات"
- تنسيقات ملفات الحاسوب
