نظام ملفات MINIX

نظام ملفات مينيكس هو نظام الملفات الأصلي لنظام التشغيل مينيكس . كتبه أندرو إس. تانينباوم في ثمانينيات القرن الماضي، وكان يهدف إلى محاكاة بنية نظام ملفات يونكس مع حذف الميزات المعقدة، وكان الغرض منه أن يكون أداة تعليمية. إلا أنه فقد شعبيته بين مستخدمي لينكس بحلول عام ١٩٩٤ بسبب انتشار أنظمة ملفات أخرى، أبرزها ext2 ، وافتقاره إلى بعض الميزات، بما في ذلك محدودية أحجام الأقسام وحدود طول أسماء الملفات.

تاريخ

كتب أندرو إس. تانينباوم نظام التشغيل مينيكس في ثمانينيات القرن العشرين، كنظام تشغيل شبيه بنظام يونكس، ويمكن استخدام شفرته المصدرية بحرية في التعليم. صُمم نظام ملفات مينيكس خصيصًا للاستخدام مع مينيكس؛ فهو ينسخ البنية الأساسية لنظام ملفات يونكس، لكنه يتجنب أي ميزات معقدة حرصًا على إبقاء الشفرة المصدرية نظيفة وواضحة وبسيطة، تحقيقًا للهدف العام من مينيكس وهو أن يكون أداة تعليمية مفيدة. [ 1 ]

عندما بدأ لينوس تورفالدز بكتابة نواة نظام التشغيل لينكس (1991)، كان يعمل على جهاز يعمل بنظام مينيكس، فاعتمد تصميم نظام ملفاته. لكن سرعان ما برزت مشاكل في هذا الأمر، إذ كان مينيكس يقيد طول أسماء الملفات إلى 14 حرفًا (30 في الإصدارات اللاحقة)، ويحد من حجم الأقسام إلى 64 ميجابايت، [ 2 ] كما أن نظام الملفات كان مصممًا لأغراض تعليمية لا لتحسين الأداء. [ 3 ] كان تطبيق لينكس لنظام ملفات مينيكس متعدد الخيوط، بينما كان تطبيق مينيكس لنظام الملفات أحادي الخيط. [ 4 ] طُوّر نظام الملفات الموسّع (ext؛ أبريل 1992) ليحل محل نظام مينيكس، ولكن لم يحصل لينكس على نظام ملفات تجاري إلا مع الإصدار الثاني منه، ext2 . [ 3 ] وبحلول عام 1994، كان نظام ملفات مينيكس "نادر الاستخدام" بين مستخدمي لينكس. [ 2 ]

التصميم والتنفيذ

يتكون نظام ملفات MINIX من ستة مكونات: [ 1 ]

  • كتلة التمهيد ، التي يتم تخزينها دائمًا في الكتلة الأولى. تحتوي على مُحمِّل التمهيد الذي يقوم بتحميل وتشغيل نظام التشغيل عند بدء تشغيل النظام.
  • الكتلة الثانية هي الكتلة الفائقة ، التي تخزن البيانات المتعلقة بنظام الملفات، والتي تسمح لنظام التشغيل بتحديد وفهم هياكل نظام الملفات الأخرى - على سبيل المثال، عدد العقد والمناطق ، وحجم خريطتي البت وكتلة البداية لمنطقة البيانات .
  • خريطة البتات الخاصة بالعقدة هي خريطة بسيطة للعقد التي تتعقب العقد المستخدمة والعقد غير المستخدمة من خلال تمثيلها إما برقم واحد (مستخدمة) أو برقم صفر (غير مستخدمة).
  • تعمل خريطة البتات الخاصة بالمنطقة بنفس طريقة خريطة البتات الخاصة بالعقدة ، باستثناء أنها تتعقب المناطق.
  • منطقة العقد (inodes) . يُمثَّل كل ملف أو مجلد بعقدة (inode)، التي تُسجِّل بيانات وصفية تشمل النوع (ملف، مجلد، كتلة، حرف، أنبوب)، ومعرّفات المستخدم والمجموعة، وثلاثة طوابع زمنية تُسجِّل تاريخ ووقت آخر وصول، وآخر تعديل، وآخر تغيير في الحالة. تحتوي العقدة أيضًا على قائمة عناوين تُشير إلى المناطق في منطقة البيانات ، حيث تُخزَّن بيانات الملف أو المجلد.
  • تُعد منطقة البيانات أكبر مكون في نظام الملفات، حيث تشغل الجزء الأكبر من المساحة. وهي المكان الذي تُخزن فيه بيانات الملفات والمجلدات.

انظر أيضاً

مراجع

  1. 1 2 تانينباوم، أندرو س؛ ألبرت س. وودهول (14 يناير 2006). أنظمة التشغيل: التصميم والتنفيذ ( الطبعة الثالثة). برنتيس هول . ISBN  0-13-142938-8.
  2. 1 2 ستروبل، ستيفان؛ أوهل، توماس (1994). لينكس - إطلاق العنان لمحطة العمل في جهاز الكمبيوتر الخاص بك . سبرينغر-فيرلاغ. ص 54. 
  3. 1 2 ماويرر، وولفغانغ (2010). بنية نواة لينكس الاحترافية . جون وايلي وأولاده. رقم ISBN 9781118079911.
  4. "إصدار لينكس 0.01 - refs/tags/v0.01 - pub/scm/linux/kernel/git/nico/archive - Git at Google" . kernel.googlesource.com . تم الاطلاع عليه بتاريخ 29-03-2024 .