![]() |
ماضي وحاضر ومستقبل أنظمة الملفات
http://www.g5g5.net//uploads/images/g5g5-55849f97d1.gif الجزء الأول لماذا نهتم بأنظمة الملفات؟ يمكن أن يصدر تأييد لمنصة حاسوب ما في أغرب الأماكن تتوقعها ، ففي مقابلة أجريت في مؤتمر عقد في استراليا ، وضع مؤسس نظام لينكس لينوس تورفالدس مجتمع ماكنتوش في وضع حرج عندما وصف نظام ملفات ماكنتوش أو أس أكس (Mac OS X) بأنها "فضلات بشكل كامل ومطلق ، وهو أمر مخيف". ماذا عنى بكلامه؟ وما هو المقصود بعبارة "نظام الملفات" على أية حال؟ ولماذا نهتم بأن نظام ما أفضل من الأنظمة الأخرى؟ قد يبدو للوهلة الأولى بأن أنظمة الملفات عبارة عن أداة تقنية مملة لن تؤثر بحياتنا بصورة مباشرة ، ولكن في الواقع ، فإن نظام الملفات المتواضع يملك تأثيرا مباشرا على كيفية استخدامنا وتفاعلنا مع أجهزة الحاسوب. ستبدأ هذه المقالة بتعريف نظام الملفات وماهية عملها. بعد ذلك سنأخذ نظرة للوراء في تاريخ كيفية ظهور هذه الأنظمة وسبب ابتكار أنظمة جديدة. وأخيرا سوف نأخذ لمحة موجزة في دوامة برنامجنا الزمني لنرى كيف يمكن لأنظمة الملفات أن تتغير في المستقبل. سنبدأ بالاطلاع على أنظمة الملفات في الماضي وبعد ذلك سنعرج على الأنظمة المستخدمة من قبل أنظمة التشغيل المفردة قبل الغوص في خبايا المستقبل لنطلع على ما يحمله لنا في هذا المجال. ماذا هو نظام الملفات؟؟ بصورة مختصرة ، نظام الملفات هو طريقة محددة بوضوح يستخدمها نظام تشغيل الحاسوب لتخزين ، و أرشفة واسترجاع الملفات. الملفات هي الأساس لكل شيء نستخدم الحاسوب لأجله : فجميع التطبيقات و الصور و الأفلام و المستندات ما هي إلا ملفات ، و هي بحاجة إلى أن تخزن في مكان ما . وهذا المكان لأغلب الحواسيب هو القرص الصلب مع إمكانية تخزين الملفات في وسائط أخرى مثل: أقراص فلاش ، والأقراص المدمجة وأقراص الفيديو الرقمية أو حتى أشرطة الأنظمة الاحتياطية. الملفات بحاجة إلى نظم تتبع ليس فقط للبيانات المكونة للملف نفسه و مكان تخزينها على القرص الصلب ، وإنما أيضا لتخزين معلومات حول الملف. وأهم شيء يجب أن يخزن هو أسم الملف ، فبدون الاسم سيكون من المستحيل تقريبا على البشر أن يعثروا على الملف مرة أخرى. كذلك ، فان نظام الملفات يحتاج لمعرفة كيفية تنظيم الملفات في تسلسل هرمي ، ومرة أخرى من أجل أولئك البشر المزعجين. وعادة ما يطلق على هذا التسلسل الهرمي بالمجلد. وآخر شيء يمكن أن تقلق عليه في نظم الملفات هو البيانات الوصفية. البيانات الوصفية تعني البيانات الوصفية metadata حرفيا "بيانات عن بيانات" وهو بالضبط ما يقصد بها، قد تبدو البيانات الوصفية حديثة وعصرية نسبيا ، ولكن كل أنظمة الملفات كانت ومنذ بداية نشأتها تقوم بتخزين بعض البيانات الوصفية جنبا إلى جنب مع الملف واسمه. أحد أهم جزئية من البيانات الوصفية هو تاريخ تعديل الملف ، وهذه الجزئية لا تعتبر ضرورية للحاسوب ولكن مرة أخرى تعتبر مهمة بالنسبة لأولئك البشر ليكونوا على يقين من أنهم يعملون على أحدث نسخة من الملف. أما الجزء الذي يعتبر غير مهم من البيانات الوصفية بالنسبة للبشر ولكن يعتبر من الأهمية بمكان لأجهزة الحاسوب هو موضع أو موقع (مواقع ) الملف على جهاز التخزين. أمثلة أخرى للبيانات الوصفية تشمل خصائص الملف مثل خاصية الإخفاء أو للقراءة فقط ، حيث من خلالها يقرر نظام التشغيل طريقة عرض الملف ومن يملك صلاحية التعديل عليه. تخزن أنظمة التشغيل متعددة المستخدمين صلاحيات المستخدمين على شكل بيانات وصفية (metadata). وحديثا أصبحت أنظمة الملفات مهوسة بالبيانات الوصفية ، بإضافة كل أنواع السمات المجنونة التي يمكن أن توصف بها أنواع الملفات الفردية: أسم الألبوم والفنان للملفات الصوتية ، أو العلامات للصور حتى تسهل عملية تصنيفهن في وقت لاحق. ميزات متقدمة في أنظمة الملفات مع وصول أنظمة الملفات لمرحة النضج ، تم إضافة الكثير والكثير من التحسينات ألى أنظمة ملفاتهن. المزيد من الخيارات ضمن البيانات الوصفية هو أحد هذه التحسينات ، ولكن هناك تحسينات أخرى مثل القدرة على فهرسة الملفات لسرعة الوصول إليهن ، وابتكار تصاميم جديدة لتخزين الملفات لتقليل التجزئة وإمكانية تصحيح الأخطاء بصورة أفضل. أحد أهم وأكبر أوجه التقدم في أنظمة الملفات هو إضافة التسجيلات حيث يحتفظ بسجل للتغييرات التي يرغب الحاسوب في القيام بها لكل ملف. ويعني هذا أنه في حالة توقف نظام التشغيل أو انقطاع مصدر الطاقة في منتصف عملية معالجة ملف ما ، يستطيع النظام فحص سجل التغييرات ويقوم بإنهاء العملية أو التخلي عنها بسرعة دون التسبب بتلف الملف. وهذا يجعل من إعادة التشغيل أسرع بكثير حيث لا يحتاج النظام إلى مسح كامل لنظام الملفات لمعرفة ما إذا كان هناك ملف خارج عن التزامن أم لا . نظم ملفات جوارسك (Jurassic) في الأيام الأولى للحواسيب وعندما كانت الداينوصورات تجوب بحرية وكانت شركة أي بي أم IBM تعتلي الأرض مثل العملاق ، ولدت أنظمة الملفات. وفي ذاك الوقت كانت نادرا ما يطلق عليها أسماء لأنها كانت ببساطة تعتبر في ذلك الوقت السحيق جزءا من نظام التشغيل المشغل للحاسوب، وفي تلك الأيام ، كانت أنظمة التشغيل نفسها جديدة ومبهرجة. و أحد أوئل نظم الملفات الذي حصل على اسم هو DECTape ، والذي يحمل اسم الشركة المنتجة (Digital Equipment Corporation شركة المعدات الرقمية) والجزء المادي التي تخزن عليها الملفات (أجهزة التسجيل العملاقة ذو البكرات التي التي نشاهدها كثيرا في أفلام الستينيات). كانت تعمل هذه الأشرطة مثل محرك أقراص بطيء جدا ، ومن الممكن أن تدير نظام التشغيل كاملا عليها لو كنت يائسا بما فيه الكفاية. يمكن أن يخزن قرص DECTape بصورة مذهلة 184 كيلوبايت (كيلو وليس ميجا) من البيانات لكل قرص على PDP-8 ، الحاسبات المتوسطة الشهيرة التابعة لـ DEC في تلك الحقبة. وكان يطلق عليها بالحاسبات المتوسطة برغم أنها في حجم الثلاجة إلا أنها أصغر من الحواسيب الضخمة لشركة IBM والتي كانت تشغل مساحة غرف كاملة. بطبيعة الحال، سمح اختراع الترانزستور والدوائر المتكاملة (أو رقاقة السيليكون) لجولة أخرى من تصغير حجم الأجهزة. بدأت شركة DEC بالانقراض شيئا فشيئا في حين أن بقية العالم انتقل إلى الحواسب الصغيرة (microcomputers) أو ما يسميها معظمنا بالحواسيب. (وبأعجوبة تمكنت شركة IBM من الصمود لكن لا أحد يستطيع الجزم كيف ) نظام CP/M اخترع غاري كيلدال نظام CP/M عام 1973م بسبب كسله. حيث كانت وظيفته تتمثل ببرمجة بعض الحواسيب العملاقة، ولم يشأ أن يذهب للعمل كل يوم. لذلك فقد كتب برنامج أطلق عليه "برنامج التحكم للحواسيب الصغيرة" والتي تخوله أن يخزن ملفات ويشغل برامج من محرك أقراص مرنة ذات 8 بوصات من شركة شوجارت (Shugart ) على حاسبه الصغير في منزله. كان لـCP/M نظام ملفات ، ولكن لم يكن يحمل اسما. وإن كان لابد أن يطلق عليه شيء فسيكون "نظام ملفات CP/M". كان تصميمه بسيطا للغاية ، وكان ذلك بسبب احتياجات غاري البسيطة. كان يخزن الملفات بشكل هرمي سطحي دون وجود أي مجلدات. أسماء الملفات كانت محصورة بثمانية أحرف مع ثلاثة أحرف إضافية تمثل "لاحقة الملف" والتي تحدد بدورها نوع الملف. وكان هذا معقول تماما لأنه هو نفس الحد المستخدم على حاسوب كيلدال الكبير. وسرعان ما أصبح غاري كيلدال والشركة التي أسسها (Intergalactic Digital Research) لتسويق CP/M أغنياء جدا. وكان قد تبين أن الكثير من شركات الحاسوب المصغر في حاجة لنظام تشغيلي ، وغاري قد صممه بطريقة فصل فيها كل بيانات الحاسوب (BIOS) من بقية نظام التشغيل. وكان هذا نتيجة الكسل أيضا حيث لم يرغب المصمم من إعادة كتابة الشفرة لكل حاسوب على حده. المغزى من هذه القصة هو كونك كسولا في بعض الأحيان يمكن أن يكون عملا ذكيا بصورة مذهلة. ومما يؤسف لغاري كيلدال أنه ظهر أناس حصلوا على نفس الفكرة وفي وقت قريب. حيث كان هناك مبرمج يدعى تيم باترسون كتب نظامه التشغيلي الخاص به وأسماه "QDOS" اختصارا لنظام تشغيلي سريع وقذر(Quick and Dirty Operating System). حيث كانت نسخة سريعة وقذرة من كل شيء في نظام CP/M لحاجته لنظام تشغيلي لشغله على جهاز حاسوب الجديد و المبهر ذو 16بت ،حيث أن غاري لم يزعج نفسه بكتابة نسخة 16-bit من CP/M بعد. (هنا حيث يكون كسلك مضرا لك). كان نظام ملفات QDOS مختلف قليلا عن نظام ملفات CP/M ، على الرغم من انه قام بنفس عمله ولم يكن يحتوي على أدلة أيضا. كان نظام ملفات باترسون قائم على برنامج لشركة مايكروسوفت في عام 1977م المسمى بـMicrosoft Disk Basic والذي كان أساسا نسخة من Basic والتي يمكن أن تكتب ملفاتها على الأقراص المرنة. وكانت تستخدم طريقة تنظيم تسمى جدول توزيع الملفات File Allocation Table ولذلك أطلق على نظام الملفات اسم FAT . ثم طبق بيل جيتس نظرية الكسل على نحو مدهش بصورة أكبر ، حيث اشترى كل من شفرة نظام QDOS بقيمة $50,000 وإعاد تسميته ليصبح مايكروسفت دوس MS-DOS. بحيث أصبح الآن قادرا على بيعه لشركة IBM ولكل شركة تقوم بعمل نسخة من نظام IBM والمسكين غاري وجد نفسه خارج منصة استخدام الحاسبات الشخصية. ومن الان فصاعدا سيكون على العالم التعامل مع نظام FAT بكل دمويته. هل قلت دموية؟ أقصد مجده!! أوقات نظام FAT في ريدجمونت هاي نظرا لأن هذا النظام كان في الأصل نسخة سريعة وقذرة من نظام ملفات مصمم لحواسيب ذات 8 بت في حقبة السبعينات والذي كان في حد ذاته نسخة سريعة وقذرة حاكت أجهزة الحاسبات المتوسطة المنتجة قبل عقد من الزمن. لم يكن يتوقع من نظام FAT أن يصل حقا إلى مستوى متقدم. حيث احتفظ بنفس الحد في تسمية الملفات (8+3) المطبق على نظام CP/M. وطريقة تخزين الملفات صممت حول الهيكل المادي لسواقة القرص المرن، جهاز التخزين الرئيسي في تلك الأيام. يحدد جدول توزيع الملفات File Allocation Table أجزاء القرص المخصصة لحفظ الملفات ، والأجزاء الفارغة ، وتلك التي أصيبت بأضرار تجعلها غير قابلة للاستعمال المسماة بـ (bad sectors). ولأن كل قرص مرن يحوي على مساحة تخزينية صغيرة (أول الأقراص أحادية الجانب في حواسيب IBM يستطيع تخزين 160 كيلوبايت فقط) لابد أن يكون تصميم الجدول بحد ذاته صغير جدا. ولإبقاء الجدول صغيرا ، تم تقسيم الجدول إلى ما يسمى بالعناقيد (clusters) وهي عبارة عن "مجموعات من قطاعات مخزنة بجوار بعضها البعض على القرص." كانت يطلق على النسخة الأولى من نظام FAT باسم FAT-12 لأنه كان يستخدم رقم 12 بت لإحصاء عدد العناقيد (clusters). حيث أن 2 أس 12 يعادل 4096 وكانت كل عنقود عبارة عن 8كيلو بايت. لذلك كان أقصى حجم تخزيني هو 32ميجا بايت. لم يكن لنظام FAT أدنى فكرة عن الأدلة أو تحسين طريقة تخزين الملفات ، حيث كان يرمي جميع أجزاء الملفات على أول جزء فارغ من القرص. هذا لا يهم كثيرا بالنسبة للقرص المرن بسبب قلة البرامج المخزنة عليه في الغالب. على أية حال ، كانت شركة IBM جاهزة لإصدار جهازها PC-XT بقرص صلب 20MB اختياري. حيث كانت هذه السعة في ذلك الوقت حجما هائلا وكان يعني بأن نظام الملفات FAT سيحتاج لوسيلة لتخزين الملفات بتسلسل هرمي مناسب. بالنسبة لنظام مايكروسفت دوس 2.0 ، قامت الشركة بإضافة المجلدات المتداخلة (nested directories) ، مصنفة باستخدام خط مائل عكسي () كفاصلة. لذلك تصبح طريقة تخزين الملف كالتالي ولنقل C:MYFILESNOTES على سبيل المثال. لماذا تم استخدام الخط المائل العكسي لا الخط المائل للأمام؟؟ حسنا. كان الخط المائل للأمام مستخدم مسبقا من قبل بعض برامج مايكروسوفت دوس 1.0 كمعامل تغيير. (ولنقل مثلا FORMAT A: /S ليقوم بإضافة ملفات النظام بعد تهيئة القرص.) وكان زحمة العمل تعيق مسألة تغييرها الآن. ولماذا أيضا حرف C:؟؟ حسنا، كل من A: و B: قد خصصت لكل من سواقة الأقراص المرنة الأولى والثانية والتي يجب على الجميع أن يمتلكها قبل أن تصبح الأقراص الصلبة أقراص قياسية بالأجهزة. مرحلة الزوال سبب إدخال الأقراص الصلبة في الحواسيب ؛نظام FAT-12 من الانظمة العتيقة ، لذا جاءت شركة مايكروسوفت بنسخة 16 بت من نظام دوس 3.31 في سنة 1984م. وكان يحوي على 32 كليو بايت من العناقيد مع امكانية الوصول إلى 2 اس 16 منهم ، ولحجم تخزيني مذهل بلغ 2 جيجا بايت. وماذا عن مشكلة تحسين التخزين؟ مع محرك الأقراص الصلبة ، يقوم المستخدم بنسخ وحذف الملفات بصورة متكررة مما يترك مساحات فارغة والتي بدورها تملئ بأجزاء الملفات الجديدة (لأن نظام FAT يقوم بتخزين الملفات الجديد في أول مكان فارغ بالقرص يحصل عليه) مما أدى إلى ظهور مشاكل جديدة في تجزئة القرص الصلب. وجعل هذا عمل القرص الصلب أصعب من أي وقت مضى ، حيث أصبح يقفز بصورة عشواء لمحاولة العثور على كل جميع أجزاء الملف والمبعثرة على القرص التخزيني. هل أصلحت شركة مايكروسوفت هذه المشكلة مع نظام FAT؟؟ لا أبدا. تركوا الفرصة للشركات الأخرى لإنتاج برامج مثل Norton Utilities و PC-Tools والتي من شأنها إصلاح مشاكل تجزئة القرص الصلب وجعله جزءا واحدا ، مما يمنح المستخدمين أمسيات سعيدة يتذكروها مدى الحياة عند جلوسهم لمشاهدة مستطيلات صغيرة وهي تتحرك على الشاشة. بحلول عام 1995م ، كانت سعات الأقراص الصلبة تنمو متخطية حدود 2 جيجابايت ، وأصبح تسمية الملفات (8.3) أعتق مما كانت عليه قبل 20 سنة. لحل هذه المشاكل ، ابتكرت مايكروسوفت نظام FAT-32 بسعة تخزينية تصل إلى 8TB تيرابايت مع خاصية سحرية أطلق عليها VFAT والتي تعطي نظام FAT القدرة على تسمية الملفات بأسماء طويلة وان كانت في الواقع لا تفعل ذلك. يأخذ VFAT الأسماء طويلة للملفات (حتى 255 حرفا) وينشئ صيغة قصيرة من الأسم تلائم قيود التسمية القديمة (8.3). فعلى سبيل المثال ، اذا كان اسم الملف كالتالي "Super-long file name.txt" فانه يقوم بتخزينه بالهيئة التالية "SUPER-~1.TXT". ويتم إلقاء ما تبقى من حروف إلى نوع غريب جدا من عالم اللاوجود ، كالعيش على صاروخ مكوكي. كانت تقسم إلى جزيئات من 13 حرف ويتم تخزينها على هيئة أدلة وهمية موسومة بميزات البيانات الوصفية كاسم الوحدة التخزينية ، نظام ، مخفية ، أو للقراءة فقط. مزيج أربك النسخ القديمة من نظام MS-DOS بصورة مزعجة مما أدى بهم إلى تجاهلها بصورة سطحية. ومع ذلك ، إذا تم حذف اسم ملف طويل من DOS ، سيتم اعتبار الدليل الوهمي المليء بمدخلات الوحدة التخزينية فارغا ويتم حذفه أيضا. حتى تم إضافة أغرب الحيل للتأكد من أن اسم الملف الطويل يطابق هيئة تسمية 8.3. وبفضل تطبيقات الطرف الثالث المهزوزة من نظام VFAT، لا تزال بعض هذه الخدع تخيم علينا حتى اليوم. فعلى سبيل المثال وعند كتابة هذا المقال ، كان لي متعة تجربة مشاهدة تغير اسم دليل على فلاش USB بصورة عفوية من اسم "Williams files" إلى "WILLIA~1" عند نقل الملف إلى جهاز iBook. اذن ، هل قامت شركة مايكروسوفت بمعالجة المشاكل المتعلقة بإعادة التجزئة في هذه النسخة من نظام FAT؟؟ الإجابة: ليس الكثير. ولكنه على الأقل قامت بإضافة نسخة محلية من برنامج إعادة التجزئة defragmenting program مع نسخة ويندوز 95. وبفضل قوة تعددية المهام حيث أنك تستطيع أن تقوم بمهام أخرى بينما يقوم الجهاز بمهمة إعادة التجزئة! باستثناء أنك لا تستطيع ، لأن النظام سيشكو من أن موقع الملفات قد تغير وعليك البدء من جديد. كان حل VFAT الغريب خدعة فظيعة ، ولكنها سمحت لترقيات سلسة من أنظمة DOS و Windows 3.1 إلى نظام Windows 95 وأسماء ملفات طويلة مع السماح لمستخدمي نظام DOS الفقير للوصول إلى هذه الملفات. كما أنها أدت لسخرية مستخدمي نظام ماكنتوش وابتكار نكت "MICROS~1" التي لا يمكن لأي أحد فهمها . لم يكن ينبغي عليهم الضحك ، وذك نظرا لأن نظام ملفات ماكنتوش يعاني من قصور وحدود أغرب. الجزء الثاني مرحبا HFS! يتذكر معظم الناس نظام ماكنتوش عام 1984م مع نوع من الرومانسية الضبابية ، متناسيين القيود الضخمة للوحدة الأصلية. جاء نظام ماكنتوش بمحرك أقراص مرن منفرد في زمن اعتاد مستخدمي الحاسوب الشخصي فيه على استخدام الأقراص الصلبة . كان نظام الملفات الأصلي يطلق عليه نظام ملفات ماكنتوش Macintosh File System ويشار اليه بالاختصار : MFS ، وكانت سعته التخزينية 20mb و4096 ملف. وكان يحتوي على أدلة ولا يحتوي عليها في الوقت ذاته!! يستطيع المستخدم إنشاء مجلدات رسومية ويقوم بسحب الملفات داخلهن ، ولكن لن تظهر هذه المجلدات في مربعات حوار الفتح والحفظ ، وبدلا من ذلك ، يقوم النظام بتخزين كل المعلومات المتعلقة بالملف والمجلد ضمن "مجلد فارغ" والذي من شأنه أن يختفي في حالة تعديله بأي طريقة كانت ، ويمكن فقط أن يحل محله "مجلد فارغ" جديد. من الإمكان أن تصلح هذه الطريقة بالنسبة للاقراص المرنة ولكنها تباطؤ أداء الأقراص الصلبة. يمكن أن يكون اسم الملف بطول 63 حرف. في عام 1985 استبدل نظام MFS بنظام يحوي على مجلدات ذو تسلسل هرمي مناسب. وبسبب هذا ، كان يطلق عليه نظام الملفات الهرمي Hierarchal File System أو HFS. لسبب ما ، كانت تقتصر تسمية الملفات على 31 حرف فقط ، والذي كان قصيرا بما فيه الكفاية ليكون مزعجا. ويتم تخزين بيانات الملف ، و المجلد والمساحة الفارغة في شجرة بيانات ثنائية B-Tree ، نوع من هيكلة التخزين الثنائية يسمح بفرز واسترجاع سريع للمعلومات المخزنة. يستخدم نظام HFS عناقيد سعة 512 كيلوبايت مع مؤشر 16بت ، وبالتالي فإن الحجم الأقصى للقرص يعادل 32 جيابايت. تم مضاعفة حجم المؤشر ل32 بت في الاصدارات الحديثة مع امكانية الوصول لإثنين تيرابايت في المرة الواحدة. أدخل كل من MFS و HFS طريقة مبتكرة لمعالجة الملفات تسمى الفروع "forks". فبدلا من تخزين البيانات الوصفية في مكان منفصل (مثلا مكان تخزين الأدلة) ، قام نظام HFS بتقسيم كل ملف إلى ملفين اثنين: الملف نفسه (فرع البيانات "data fork") وملف مخفي يسمى بـ(فرع الموارد "resource fork") والذي بدوره يحتوي على بيانات حول بنية الملف تتضمن معلومات حول الملف مثل أيقونته . تستخدم فروع الموارد لأكثر بكثير من البيانات الوصفية على سبيل المثال تحمل تفاصيل واجهة التطبيق وشفرة مصدرية قابل للتنفيذ في أجهزة ماكنتوش ما قبل PowerPC . كالسن في الشوكة ، تنتقل البيانات والموارد معا في كل الأوقات ، حتى يتم إرسال الملف إلى نوع آخر من أجهزة الحاسوب لا تعرف شيء عن الفروع. ولحسن الحظ ، كانت الأجهزة في تلك الفترة متغطرسة ونادرا ما تتحث لبعضها البعض ، فلذلك كان ذلك نادرا ما يمثل مشكلة. بدلا من استخدام ثلاثة أحرف تافهة كلاحقة للملف لتحديد نوع الملف ، استخدم HFS لاحقة ضخمة مكونة من 4 أحرف "نوع الملف" و أخرى لمنشئ الملف ، و كانتا تخزن في بيانات الملف الوصفية ، وتعامل كمعاملة المعلومات الوصفية الأخرى كتاريخ إنشاء الملف مثلا. لم يضيع نظام HFS وقته في استخدام كل من الشرطات والشرطات العكسية ليفرق بين أسماء المجلدات ، بل استخدم النقطتان (:) وتأكد بعد ذلك من عدم حصول البشر على أدنى فرصة في مشاهدة هذا الحرف في أي مكان في النظام ، حتى يحاولوا أن يدرجوها في اسم الملف. لنترك المزاح جانبا ، يعتبر نظام HFS أول مثال في التاريخ يتم تصميمه خصيصا لملائمة احتياجات واجهة المستخدم الرسومية الجديدة آنذاك. كانت فلسفة تصميم واجهة المستخدم الرسومية لنظام ماكنتوش آنذاك إخفاء التفاصيل الغير مهمة عن المستخدم. كان يقصد من هذا التصميم "المتمحور حول البشر" هو مساعدة الناس على زيادة تركيزهم على عملهم بدل الانشغال بالتفاصيل التقنية لنظام الملفات. وبطبيعة الحال ، لا شيء مثالي في هذه الحياة ، وكل النظم التي حاولت إخفاء التفاصيل التقنية بعيدا عن المستخدم ، عادة ما تتعارض مع ما اسماه جويل سبولسكي قانون التجريد المتسرب Law of Leaky Abstractions. حيث عندما يصاب شي بعطل ما مثل فقدان فرع الموارد عند إرسال الملف لجهاز حاسوب آخر وارجاعه مرة أخرى لنظام ماكنتوش ، لم يكن دائما واضحا ماذا ينبغي عمله لحل المشكلة. يحوي نظام HFS بعض الحدود التقنية الأخرى التي من الممكن أن تتسرب من حين لآخر. حيث تخزن كل سجلات الملفات والأدلة في مكان واحد يسمى Catalog File ويستطيع برنامج واحد فقط الوصول لهذا الملف في كل مرة. وكانت هناك بعض الفوائد من هذا النهج ، كالبحث السريع عن الملفات. لم تكن أجهزة ماكنتوش الأولى تحوي على خاصية تعدد المهام ، ولذلك فان هذا لا يشكل مشكلة لمستخدمي ماكنتوش. ولكن عندما تم إضافة خاصية تعددية المهام في وقت لاحق ، سببت بعض المشاكل مع بعض البرامج حيث سببت بتوقف النظام "hogging the system." ويمكن أيضا أن يتسبب بتخريب ملف Catalog File وبالتالي يصبح نظام الملفات كاملا غير قابل للاستخدام. تقوم بعض أنظمة الملفات بتخزين معلومات الملفات والأدلة في أماكن منفصلة ، ولذلك حتى لو فسد مجلد واحد فإنه لن يؤثر على بقية النظام. كما كان الحال بالنسبة للأنظمة الأخرى التي قمنا بتغطيتها لحد الآن ، كان عدد عناقيد النظام (تعرف بالمربعات blocks ) مثبت على رقم من 16 بت ، ولذلك لا يمكن أن يزيد عدد المربعات على 65535 في كل قسم من القرص ، مهما كان حجمه. يقوم نظام HFS (شأنه في ذلك شأن معظم نظم الملفات) بتخزين الملفات في مربعات مفردة ، لذلك كلما كان حجم المربعات كبيرا زادت المساحة الضائعة: فمثلا حتى ملف بحجم 1 كيلوبايت يلزمه مربع 16 كيلوبايت كامل على محرك أقراص بحجم 1GB. وتكون المشكلة أسوأ 8 مرات مع محرك أقراص سعة 8 جيجابايت ، وهلم جرا. تم معالجة المشكلة الأخيرة مع نظام HFS+ من قبل شركة Apple عام 1998م ، الذي جاء مدمجا مع اصدارة نظام تشغيل ماك Mac OS 8.1. استخدم نظام عدد 32بت لترقيم المربعات ، كما سمح بأسماء ملفات لحد 255 حرف. على الرغم من أن إصدارات ماك تقليدية (9.2.2 وسابقاتها) تدعم 32 حرف فقط عند تسمية الملفات. وبصورة غريبة ، لم تدعم حزمة مايكروسوفت أوفيس المكتبية (اصدارة ماكنتوش) أكبر من 32 حرف عند تسمية ملفاتها حتى عام 2004م. نظم ملفات أوميجا Amiga يحوي نظام أوميجا - أطلق بعد عام من أطلاق نظام ماكنتوش - على قدرات وسائط متعددة عالية بدت على أنها سابقة لأوانها بعقد من الزمن. ولكن وبسبب ضغوط الوقت لاطلاق نسخة نظام أوميجا الأصلية ، كان نظام الملفات واحد من أضعف أجزائه. حيث تم انتاجه من نظام TripOS - نظام تشغيلي تم تطويره من قبل MetaComCo-. كان يستخدم مربعات ذات حجم 512 كيلوبايت ، لكن كان يحتجز 24KB من كل مربع للبيانات الوصفية. أطلق مهندسو أوميجا على النظام اسم نظام ملفات قديم "OFS" ، والذين قاموا باستبداله بأسرع وقت ممكن. تم اصدار FFS أو نظام الملفات السريع عام 1987م جنبا إلى جنب مع أوميجا 500 ،و 2000 ، ونظام أوميجا 1.3. وكان الفرق الرئيسي هو نقل البيانات الوصفية من كل مربع وتخزينها في مكان منفصل. ومثل نظام HFS ، كان يقتصر تسمية الملفات على 32 حرف. ولدعم كل من نظام OFS و FFS أعيد تصميم نظام أوميجا التشغيلي ليقبل أنظمة ملفات متعددة في صيغة برنامج ملحق. وتم توثيق هذه الصيغة بحيث كان من مقدور أي شخص كتابة نظام ملفات خاص به حسب رغباته. وهناك الكثير من الناس من قاموا بذلك ، وكانت نتائج ذلك اصدار كل من نظام الملفات المحترف (PFS) و نظام الملفات الذكي (SFS) ، والتي لا تزال تستخدم من قبل مشجعي نظام أوميجا إلى يومنا هذا. وكان نظام Amiga OS4 التشغيلي لأوميجا بور بي سي يدعم أيضا بما يسمى FFS2 ، حيث تم إعادة كتابة كبيرة للنظام زاد من صعوبته أن شفرة التطبيق الأصلي غير قابل للنقل ، و أن توثيق طرق عمله الداخلية وتراكيب بياناته غير واضحة. أضاف نظام FFS2 القدرة على دعم تسمية الملفات لحد 105 حرف. أنظمة ملفات لينكس و يونكس نظام UFS بدأ يونكس مشواره كدعابة على MULTICS - نظام صارم لتشراك الوقت متعدد المستخدمين ولا يحب أن يسخر منه أحد - ولكنه مضى ليترك منافسة الصارم في مزبلة التاريخ. كان نظام يونكس يسيطر بعناية على سوق عمل المحطات العلمية والخوادم قبل أن يحل محله نسخة مشابهة له في طريقة عمله تدعى لينكس ، والذي بدأ بدوره كدعابة على نظام يونكس. مغزى القصة هو أن الدعابات يمكن أن تكون أمور قوية. وضع نظام يونكس على طول مشواره مجموعة من المعايير التي تحدد طرق تخزين ملفات المستخدمين. أصبح نظام ملفات يونكس (UFS) ، والذي كان يعرف أيضا نظام ملفات بيركلي السريع (Berkeley Fast File System) ، المعيار لنظم الملفات عندما قام باحثون من جامعة كاليفورنيا في بيركلي بتطوير نسخة محسنة من نظام ملفات يونكس الأصلي. ظهر نظام يونكس للوجود من ثقافة الهاكر بدلا من القطاع التجاري ، لذلك جاء نظام الملفات انعكاسا لهذه النشأة. حيث يعتبر نظام يونكس حساسا لحالة الأحرف ، مما يعني أن README.TXT مختلف تماما عن ملف readme.txt والذي هو أيضا مختلف عن Readme.Txt. معظم النظم الأخرى تحافظ على حالة الأحرف عند تسمية الملف ، ولكن لا تهتم لكيفية وصول المستخدم لها. وعلى الرغم من هذا النظرة الغامضة لأسماء الملفات ، إلا أنها صمدت حتى يومنا هذا لأن تغييره الآن من شانه أن يعطل بعض البرامج التي تعتمد عليها. وفي بعض الأحيان ، يمكن لهذين العالمين التصادم بعنف : فنقل موقع انترنت من خادم ويندوز لخادم لينكس يمكن أن ينتج وصلات مقطوعة عندما يطلب الخادم وصلة some_file.htm مثلا وآخر شخص قام بتحرير الملف قام بحفظه باسم Some_File.htm بدلا من ذلك. بعيدا عن التدقيق عن حالة الأحرف ، يكشف نظام الملفات جذوره كهاكر بطرق أخرى. يطلق على المؤشرات التي يستخدمها UFS لتحديد مكان الملفات على القرص اسم inodes ، وخلافا لنظم التشغيل الأخرى ، نظام يونكس سعيد جدا لاظهار بيانات هذه المؤشرات إلى المستخدم النهائي ، لم يكن نظام UFS يحوي ميزة السجلات (سجل بالتغييرات المراد تنفيذها على الملف) في بداية مشواره ، وبالتالي أي تحطم بالنظام أو انقطاع التيار الكهربائي يمكن أن يتلف بعض المؤشرات ويؤدي لفقدان بعض الملفات. وحل هذه المشكلة يتمثل في تشغيل أداة تدعى fsck (من File System Check التحقق من نظام الملفات) و مشاهدة النظام وهو يخبرك عن جميع أسراره القذرة عن المؤشرات! كما هو الأمر في نظم الملفات الأخرى ، يتم تخزين الملفات في مكونات منفصلة تدعى مربعات blocks. استمر حجم المربع القياسي بالزيادة كلما زاد حجم الأقراص ، ولكنه وحد في النهاية على 8 كيلو بايت . لأن هذا الحجم الكبير من شأنه تبديد مساحة كبيرة من القرص الصلب. قام نظام BSD من تنفيذ خوارزمية ذكية تدعى block suballocation حيث تقوم بتجميع المربعات المملوءة جزئيا في واحد واحدة. كما حاول نظام UFS التقليل من حركة رأس القرص الصلب من خلال تخزين الملفات والبيانات الوصفية قرب بعضها البعض ضمن مجموعات يطلق عليها الأسطوانات cylinders ومحاولة إبقاء كل الملفات ضمن مجلد واحد في أسطوانات متجاورة. قام الكثير من بائعي نظام يونكس بتنفيذ نسختهم من UFS ، مما يجعلها في كثير من الأحيان تتعارض مع غيرها من الأنظمة. كما أضافت شركة صن Sun توثيقات لنسختها من النظام في Solaris 7 بينما قامت NeXT بإنشاء نسخة خاصة من UFS لنظام NeXTstep. نظام ext2 استوحي نظام ext2 من تصميم UFS وهو في الأساس نسخة تعمل مثل نظام UFS مثلها في ذلك مثل كون نظام لينكس نسخة تعمل مثل نظام يونكس. وهذا ما سهل نقل العديد من من أدوات يونكس مثل أداة fsck ـ والتي تبدو قليلا مثل اللغة التجديفية عند قراءتها بالسرعة المناسبة. ومثل نظام UFS يفتقر نظام ext2 لسجلات التغييرات ولكن أيضا تجنب بعض اختبارات السلامة والتي قد تسرع من أداء النظام. وبسبب هذا ، كان من الضروري قول كلمة "fsck" مرارا وتكرارا. كان لدى لينكس - والذي بدأ كمشروع هاوي عام 1991م ليحل محل نظام اندرو تاننبام التعليمي OS Minix - نسخة من نظام ملفات Minix ، ولكنها كانت تقتصر على 64 ميجابايت والذي تم استبدالها بسرعة بــext. تم تطوير ext2 عام 1993 لمعالجة بعض قيود النسخة الأصلية من نظام ext والتي ضلت على قد الحياة لعدة سنوات بعد ذلك. كان يحوي نظام ext2 على نفس نظام الاسطوانات "cylinder" مثل نظام UFS ولكن كان يطلق عليها اسم مجموع المربعات block groups بدلا من ذلك. نظام ReiserFS بسبب افتقار نظام ext2 للسجلات ولأن لينكس مبني على روح المصادر المفتوحة ومساهمات الجميع ، كان هناك العديد من الناس من يريد أن يبني عالما أفضل من نظام ملفات لينكس. شخص واحد نجح فعلا وكان يدعى بهانز ريسر Hans Reiser وبسبب تواضعه الجم أسمى مشروعه باسمه ResierFS. لم يضف ReiserFS التوثيق فحسب ولكن حاول تحسين جوانب أخرى كثيرة من نظام ext2. أدت كل من فهرسة B-Tree وروتينات المتقدمة للتخصيص للمربعات إلى اسراع نظام الملفات بشكل كبير ، خاصة عند التعامل مع الملفات الصغيرة الحجم على غرار ملفات 1KB. نال ReiserFS على الكثير من الثناء وعلى دعم صناعي رئيسي من توزيعات لينكس مثل SuSE ، حتى بدأت العجلات بالسقوط لأسباب غير تقنية بالمقام الأول. في البداية ، قرر هانز ريسر عدم مواصلة دعم وتحديث ReiserFS وتفضيل العمل على النظام الوريث المدعو Reiser4. كان أداء النسخة الجديدة جيدا ، ولكن لم يكن تحديثا نظيفا من ReiserFS ويتطلب من المستخدمين إعادة تهيئة القرص. وكانت هناك بعض التساؤلات حول موثوقية واستقرار نظام Reiser4 ، ولكن هذه النقاط كان يمكن أن تعالج في الوقت المناسب. ما فاجأ المجتمع حقا هو شيء لا يمكن لأحد أن يتوقعه حيث وفي عام 2006م أُعلن عن فقدان زوجة هانز- نينا-. كما تم العثور على دم مطابق لحمضها النووي على حقيبة للنوم في سيارة هانز. ادعى هانز بأنه غير مذنب ، وحتى الآن لم تكتمل محاكمته الجنائية. نظام ext3 قد بدأت شعبية ReiserFS بالتلاشي ، وبسبب الارتباك بحقيقة مستقبل ReiserFS ، فان العديد من مستخدميه انتقلوا للنظام الأكثر أمانا ext3 ، والذي هو أساسا ext2 مع إضافة خاصية التوثيق. وفي حين أنه من غير المرجح أن يفوز بسباق سرعة ،حافظ على تراث أسلافه في اختبار الموثوقية. نظام JFS كان JFS مدخل شركة IBM للعبة نظام ملفات يونكس وقامت بإضافة السجلات لنظام UFS. حيث كان إعادة كتابة شفرة مفتوحة المصدر للنظام الملفات المملوك المستخدم من قبل AIX ، نسخة IBM الغريبة من نظام يونكس. استخدم نظام JFS الأشجار الثنائية لتسريع عملية الوصول إلى الملف ، كما أدخل فكرة التوسيعات extents ، والتي هي عبارة عن تجميعة ذات حجم 128 بايت من inodes. وهذا يحول دون قيام نظام الملفات من تخصيص كميات ثابته من مساحة القرص لـinodes كما كان يقوم به كل من ext2 و ext3. نظام XFS جاء نظام XFS من نسخة سيليكون جرافيكس Silicon Graphics من يونكس ، والتي أطلق عليها Irix. قدمت لأول مرة عام 1994م مع Irix 5.3 ، وقد تم تصميمه من أجل السرعة والموثوقية ، كما كسب العديد من اختبارات مقارنة السرعة. كان نظام ملفات 64-بت بحد أقصى يبلغ 8 إكسابايت. كان يستخدم خاصية التوسعات ويحوي العديد من الميزات مثل تحسينه تعدد المهام ، حيث يمكن لعدة مهام أن تنفذ على نفس نظام الملفات في وقت واحد. افرجت SGI عام 2000 عن الشفرة المصدرية لنظام XFS تحت رخصة GNU العامة ، وتم إضافة هذا النظام للعديد من توزيعات لينكس. الجزء الثالث مايكروسوفت و آي بي أم يتنافسان نظام OS/2 و HPFS مما لا يتذكره معظم الأطفال اليوم ، بأن شركة IBM شغلت بالها مرة بفكرة منافسة شركة مايكروسوفت من أجل الهيمنة على سوق أنظمة تشغيل الحواسيب الشخصية. والأغرب من هذا ، كون هذه المنافسة في الأصل شراكة بين الشركتين. حتى شركة IBM وبما تملكه من 10.000 طبقة من الإدارة والبيروقراطية أكثر من الاتحاد السوفيتي ، أدركت أن نظام دوس بحاجة ماسة لبديل. حيث قررت الشركة في تصميم نظام خليفة لنظام دوس أسمته بذكاء OS/2. حيث يكون هذا النظام مملوك لشركة IBM ولكن ستقوم شركة مايكروسوفت بعمل الكتابة الفعلية للنظام. وصف ستيف بالمر - قبل أن يعرف عنه بالقفز صعودا وهبوطا ورمي الكراسي- مرة كيف كان ينظر صناع الحواسيب لشركة IBM في ذلك الوقت. "كانوا الدب ، وكان أمامك خيارين إما أن تركب الدب أو أن تكون تحته." لذلك قامت شركة مايكروسوفت بمجاراة هذه الخطة الجنونية. كان نظام OS/2 نظام تشغيل متعدد المهام ، مع واجهة رسومية خيالية ، والتي كان من المقرر تثبيتها عليه في وقت لاحق. احتاج إطلاقه للوجود وقتا طويلا ، مع صعوبة تشغيل تطبيقات دوس DOS عليه. كما كان يحتاج إلى ذاكرة مؤقتة أكثر من قدرة أي مستخدم على توفيرها طول حياتهم. وفي نسخة 1.2 التي اطلاقت عام 1987م أرادت شركة IBM ابتكار نظام ملفات جديد لاستبدال نظام FAT المخيف . وهكذا ولد HPFS (نظام ملفات الأداء الرفيع) ، والذي قام بكتابته فريق صغير بقيادة غوردن لتوين Gordon Letwin - الموظف بشركة مايكروسوفت-. استخدم نظام HPFS فهرسة B-Trees. كما كان يدعم أسماء ملفات حتى 255 حرف ، مع استخدم خاصية التوسعات. و لتسريع عملية الوصول للملفات تم وضع الدليل الرئيسي في منتصف القرص بدل من بدايته. لم يكن نظام HPFS يدعم السجل التغييرات ولكنه كان يدعم الفروع مع قدرات متقدمة في مجال البيانات الوصفية . كانت تدعى هذه البيانات الوصفية الجديدة بالسمات الموسعة Extended Attributes ، مع إمكانية تخزينها على نظام FAT عن طريق تخزينها في ملف يسمى EA_DATA.SF. كان نظام HFS+ يدعم هذه البيانات ولكن لم يتم كشف النقاب عنها في نظام Apple OS حتى إصدارة Mac OS X 10.4. بعد ذلك ، انفصلاتا كل من شركتي IBM ومايكروسوفت ، وقامتابمتابعة حقوقهم القضائية وقت إصدار Windows 3 حيث كانت شركة IBM تطالب بحق تملكه أيضا مع رفض شركة مايكروسوفت لهذا الطلب. قامت شركة مايكروسوفت بعد ذلك بتركيز جهودها على ويندوز بعد أن أصبحت الإصدارة 3 نجاحا ساحقا ، بينما أبقت شركة IBM على الشفرة المصدرية التي كانت بحوزتها مع اضافة مجموعة من الشفرات الإضافية المتعلقة بواجهة المستخدم الرسومية والتي كانت مجموعة من افتراءات والدعابات مع شركتي Apple وNeXT. وبالتالي تم ولادة نظام OS/2 الأصدارة 2.0 مع مساحة عمل كائنية التوجه، والذي كان لديه يوم قصير في الشمس (تم الإعلان عنه بغرابة في Fiesta Bowl ) قبل إصدار ويندوز 95 والذي قام بسحقه على الأرض. قامت IBM لاحقا بترحيل JFS لنظام OS/2 ، وكان ذلك من دواعي سرور ثلاثة أشخاص الذين ما زالوا يستخدموه. ادركت شركة مايكروسوفت أيضا بأنها بحاجة لاستبدال نظام دوس DOS ، ولكنها كانت غاضبة من تجربتها مع شركة IBM. وفي تطبيق بيل جيتس الثاني المدهش لنظرية الكسل ، قام باستئجار ديف كتلر Dave Cutler ، المهندس المعماري لنظام VMS التشغيلي الصلب التابع لشركة DEC ، في الوقت تماما التي كانت فيه الشركة واقعة في دوامة من الاستحالة أن تتعافى منها. اصطحب ديف كتلر فريقه معه على الرغم من رفع دعاوي قضائية من قبل DEC الموشكة على الموت. حيث قام بتنفيذ تطبيق نظيف لنظام تشغيلي جديد. وإلى جانب النظام الجديد أتى نظام ملفات جديد أيضا ، والذي لم يكن يحمل اسما في البداية ، ولكن أطلق عليه لاحقا أسم NTFS عندما تم تسمية النظام نفسه باسم Windows NT. كان NT الاسم التسويقي والذي يعني تقنية جديدةNew Technology. ولكن كان لا يزال يعتبر مصادفة مسلية حيث WNT كان VMS عند استبدال كل حرف بالذي يليه. كان نظام NTFS تطبيقا شاملا لأفضل أفكار نظم الملفات يمكن أن تأتي على بال فريق كتلر في ذلك الوقت، حيث كان نظام ملفات 64-بت مع سعة تخزينية قصوى تصل حتى 16 إكسابايت ، كما أنه يحفظ جميع أسماء الملفات بترميز اليونيكود لذا فإن أي لغة يمكن أن تجد دعما لها. حتى سمات تاريخ الملف تم توسعتها إلى أقصى حدود السخرية: بحيث يستطيع المسافرون عبر الزمن وضع تاريخ الملف من عام 1601 بعد الميلاد حتى عام 60056 ، على الرغم من انه إذا استخدمت الإنسانية هذا النظام بحلول ذلك الوقت ، سوف يتبين لنا أن هناك خطأ ما حل بحضارتنا. في بداية الأمر ، لم يتم الكشف عنه للجمهور مع إطلاق الإصدارة المبدئية من نظام Windows NT (كان يطلق عليها نسخة 3.1 لأسباب تسويقية تافهة) ، وبتالي تم إصدارها عام 1993م. استخدم نظام NTFS تنسيق B+Trees (نسخة معدلة وسريعة من نظام B-Trees والمدعوم من قبل HFS+). كما دعم هذا النظام التوثيق من اليوم الأول لإصداره مع احتوائه على قدرات واضحة لضغط بيانات ، وإعدادات أمان قوية جدا عن طريق استخدام قوائم تحكم الوصول (تم اضافتها لاصدارة NT 3.5 التي تم إصدارها عام 1994). تم تصميمه بحيث تستطيع مايكروسوفت إضافة دعم بيانات وصفية إضافية وذلك حتى رجعت الأبقار من مرعاها. وبالفعل ، كان دعم نظام NTFS للبيانات الوصفية يفوق الحدود بحيث يلزم فريق نظام تشغيل شركة مايكروسفت في بعض الأحيان وقتا حتى يلحقوا بالسمات التي كانت موجودة مسبقا بالنظام. فعلى سبيل المثال ، كانت خاصية البحث الفائق السرعة في الفهارس لكل من الملفات والبيانات الوصفية متاح في نظام NTFS منذ اصدارة ويندوز 2000 ، ولكنه لم تصدر مايكروسوفت نسخة رسومية منه حتى عام 2005 ولكنه لم يصبح جزءا من النظام نفسه حتى اصدارة ويندوز فيستا عام 2006. مهلا ، في بعض الأحيان تصبح بعض الأشياء منسية. هل هناك شخص مستعد لإعادة تصميم مربع الحواري لإضافة خط جديد ؟؟ تم إضافة ميزات جديدة لنظام NTFS في نسخ لاحقة من نظام Windows NT. ففي الإصدارة 3.0 ، تم إصدارها مع ويندوز 2000، تم اضافة خاصية بحث البيانات الوصفية المفهرسة الأنفة الذكر، الى جانب تشفير و تخصيص حجم المساحة التخزين المتاحة لكل مستخدم ، بحيث لم يعد بإمكان الطلاب أن يملؤا الخادم بملفات MP3 مقرصنة. يخزن نظام NTFS البيانات الوصفية في ملفات منفصلة ، مخفية عن العمليات العادية لنظام التشغيل عن طريق احتواء أسماء الملفات على الرمز $ في بدايتها. من خلال تخزين كل شيء في ملف ، يسمح نظام ملفات NTFS لتراكيب نظام الملفات بالنمو بشكل ديناميكي. يقاوم نظام الملفات تجزئة الملفات عن طريق محاولة تخزين الملفات في المكان الفارغ بما فيه الكفاية لها ، وليس فقط في أول مساحة متاحة في بداية محرك الأقراص. لتسهيل عملية الانتقال من أنظمة التشغيل المبنية على نظام FAT لأنظمة NTFS ، قامت شركة مايكروسوفت بدورها بابتكار أداة مفيدة لمستخدمي نظام ويندوز 98 بحيث سيكون بإمكانهم تحويل تقسيمات القرص الصلب المبنية على أنظمة FAT16 و FAT32 لنظام NTFS. بالطبع لا يمكنك أن تقوم بالعملية بصورة عكسية، ولكن بأمانة هل سترغب بذلك؟؟ الشيء الوحيد المزعج الذي يمكن بالفعل أن يتذمر منه هو أن تصميم نظام NTFS كان سرا محفوظا لشركة مايكروسوفت فقط. وعلى الرغم من هذا التحدي ، تمكن مبرمجي أنظمة المصادر المفتوحة وبفضل الهندسة العكسية من دعم القراءة ولاحقا الكتابة على أقسام NTFS من أنظمة التشغيل الأخرى. حيث سمح مشروع NTFS-3G من القراءة والكتابة على أقراص NTFS. نهاية المطاف و الطريق العام نظام BeOS و BFS في عام 1990م ، كان لدى جين لويس جاسي ، الرئيس المتحمس لشركة أبل -فرنسا- رغبة بالشهرة وحب الظهور. حيث قرر أن المشكلة الحالية بأنظمة التشغيل المكتبية مثل ويندوز وماكنتوش هو ثقلها بالعديد من حزم دعم الإصدارات السابقة للأنظمة نفسها. وكان الحل المقترح هو البدء من الصفر ، عن طريق استحداث علامة تجارية جديدة لمنصة تحوي نظام تشغيلي و عتاد جديدين باستخدام أفضل الأفكار المتاحة ذلك الوقت. استوحى هذه الفكرة من فريق أوميجا Amiga والذي فعل الشيء نفسه سابقا عام 1982 بل ومن غروره فقد حاول جين لويس الحصول على رخصة "AMIGA96" كلوحة لسيارته. واجه الفريق المسئول عن العتاد والأجهزة بعض المتاعب عند تم إيقاف تطوير المعالج الذي اختاروه - AT&T Hobbitwas - من قبل الشركة المالكة. بعد الانتقال إلى معالج PowerPC ، أخرج الفريق حلم مهوسي التقنية: حاسوب سريع و متعدد المعالجات و ليس باهض الثمن مع أطنان من المنافذ و الأضواء الأنيقة. ولسوء الحظ ، فإنه تم بيع 500 وحدة فقط من نظام BeBox ، والذي تم إصداره عام 1995. عندما أكتشف ستيف جوبس مع شركة NeXT حقيقة بأنه لا يوجد متسع لمنصة عتاد جديدة في سوق ، فإنه سرعان ما قامت شركة Be, Inc. بتحويل نظامها التشغيلي إلى منصة ماكنتوش . ومن ثم إلى مضمار أكبر مع الاجهزة الشخصية المتوافقة مع نظام x86. كان نظام BeOS بحاجة لنظام ملفات ، وكانت في الواقع الأهداف الأولى لهذا النظام كبيرة. كان نظام الملفات الهرمي الأصلي على BeBox (يدعى OFS) مرتبط مباشرة بقاعدة بيانات علائقية ، مما يسمح بكل أنواع المرونة والقوة. و لسوء الحظ ، كان هذا التصميم المرتبط بقاعد البيانات بطيء جدا مع وجود بعض المشاكل المتعلقة بمزامنة نظام الملفات وقاعدة البيانات. مع الانتقال إلى أجهزة ماك بوربسي ، كان على نظام BeOS دعم نظام HFS أيضا ، لذلك كانت البنية التحتية لنظام الملفات بحاجة لتغيير. وهكذا تمت ولادة نظام ملفات Be أو BFS. كان نظام BFS -تم بنائه من قبل كل من دومينيك جيامباولو وسيريل ميوريلين- نظام 64-بت والذي يدعم السجل التغييرات ، ويستخدم فهرسة B+Trees تماما مثل نظام NTFS. كما كان بحاجة لدعم ميزات قاعدة البيانات التي استخدمت من قبل نظام BeBox's OS الأصلي ، والذي يسمح للمستخدمين بتخزين أي ملف معلومات في سلسلة من السجلات والحقول. وضعت هذه المعلومات في البيانات الوصفية وكان يسمح للمستخدمين بإضافة قدر ما يرغبوا من المجالات لكل ملف. بدت فكرة البيانات الوصفية التي يمكن توسيعها فكرة عبقرية في ذلك الوقت ، ولكن كان من المهم معرفة أن نظام NTFS كان في الأساس يدعم الشيء نفسه. كان الفرق الرئيسي في واجهة المستخدم: بحيث كانت نوافذ مجلدات BeOS تدعم إضافة ، و تحرير ، و فرز ،والبحث المفهرس بواسطة أي حقل بيانات وصفية. وكان هذا مفيدا للغاية لتنظيم الملفات الصوتية مثل MP3. بالرجوع لعام 1996 ، كانت قلة من الناس تستخدم ويندوزNT ونظام NTFS ، لذلك وبسبب دعم النظام لكل من 64-بت و سجل التغييرات وخاصية البيانات الوصفية المتقدمة عكس انطباعا بأن BeOS نظام تشغيلي متقدم. ومما يؤسف له بأن شركة Be, Inc. لم تتمكن من الحصول على نموذج تجاري محتمل لتسويق نظامها التشغيلي ، وبعد كارثة "تحول التركيز" على الأدوات المختصة بشبكة الانترنت مثل Sony eVilla ، نفدت أموال الشركة وتم بيعها لاحقا لشركة Palm عام 2001. ماك OS X و HFS+ أحد أسباب افلاس شركة Be.Inc. هو اعتماد جين لويس على شركته القديمة - شركة Apple - لإنقاذه عن طريق شراء BeOS لاستخدامها لنظامها التشغيلي المقبل. لم يستمر نظام Apple's Mac التقليدي طويلا. بحيث كان كل من افتقارالنظام لحماية الذاكرة ، وتخصيص الذاكرة التلقائي ، وتعدد المهام التحفظي بدأت تؤذي الشركة بصورة سيئة ، وحتى البديل الداخلي لشركة أبل ،Copland، تفكك في كومة من الأحشاء اللزجة ، مما حدا بالشركة أن تذهب للتسوق والبحث عن بديل. كان كل من Solaris و BeOS وحتى نظام ويندوز NT المبغوض في تنافس من أجل الجائزة وكان نظام BeOS المرشح الرئيسي. قال جاسي حينها أنه "يمسك بأبل من منطقة حساسة ، وسيتابع الضغط حتى تتأذى" . لكنه ضغط بقوة قليلا. فقام شخص من شركة Apple باجراء مكالمة لستيف جوبس في شركة NeXT أفصبحت البقية مجرد تاريخ. رجع ستيف لشركة Apple ممتطيا جواده الأبيض وكما أحضر معه فريق NeXTstep. وبعد بعض الغموض الذي أحاط بشركة Apple في كونها هل ستعرض كل من نظام ماكنتوش التقليدي Mac OS ونظام التشغيل الراقي المسمى Rhapsody ، سيطر ستيف سيطرة كاملة وقرر دمج النظامين. لذلك تم ولادة نظام Mac OS X. لم تكن عملية الدمج جميلة بالكامل. نواة نظام NeXT كانت مبنية على Mach ، وهي بحد ذاتها كانت قد أصبحت متورطة مع نظام BSD Unix في ماضيهن الأكاديمي. اعتبر نظام يونكس سطر الأوامر أمرا حيويا بينما تحاشى ذلك نظام MacOS. استخدم نظام يونكس امتدادات الملفات التقليدية لتحديد أنواع الملفات ، بينما أخفى MacOS هذه المعلومة في ملف فرع الموارد. وأخيرا كان UFS نظام ملفات يونكس ، بينما اعتمد نظام MacOS على HFS+. كان اختيار أي جانب تقوم بدعمه دائما بمثابة معركة. وبالنسبة لبعض هذه المعارك ، فاز فريق NeXT . اعتبر امتدادات الملفات "طريقة جديدة" لتحديد أنواع الملفات. وبالنسبة للإصدار الأول من OS X يتم الطلب من المستخدم الاختيار بين كل من نظام UFS وHFS+ عند تثبيت النظام على قرص صلب جديد. ومع ذلك ولأسباب التوافقية أو الملائمة ، يتم اختيار نظام HFS+ كنظام افتراضي. كما أنه لا يوصي باختيار نظام UFS بسبب حساسيته لحالة الأحرف ، وبالتالي سيؤدي لتعطيل بعض البرامج الحساسة بالنسبة لتسمية الملفات. وبمرور الوقت ، تضاؤل تأثير فريق NeXT ، كما تم اعادة النظر في بعض القرارات المتشددة. تم التخلي عن دعم UFS في ليبورد ، الإصدارة الأخيرة من نظام OS X. كما لم تعد امتدادات الملفات إلزامية برغم دعم النظام لها. كانت لا تزال هناك مسألة جلب نظام HFS+ للمعايير الأكثر حداثة. في نظام OS X 10.2 المسمى جاكور اضيف السجل التغيرات لنظام التشغيل ، على الرغم من أنه كان معطلا بصورة افتراضية ولا يمكن تفعيله إلا عن طريق سطر الأوامر. ولكن تم تفعيله بصورة افتراضية في الإصدارة 10.3 (بانثر). قامت شركة Apple أيضا باستإجار دومينيك جيامباولو ، المبتكر المساعد لنظام BFS ، والذي عمل لاضافة بيانات وصفية متقدمة ، توثيق ، والتطبيق المبدئي لكل من Spotlight و FSEvents. وأخيرا ، تم إضافة خاصية الوصول لأنظمة NTFS في نظام Mac OS X Server 10.4. نظام ZFS ومستقبل أنظمة الملفات يتساءل كثير من الناس من عدم استبدال شركة Apple لنظام HFS+ بنظام آخر أحدث وأكثر جاذبية ، مثل ZFS ، نظام شركة Sun. إن نظام ملفات Zettabyte ، تم الإعلان عنه عام 2004 ، هو نظام 128 بت والذي يدعم بدوره ملفات بأحجام خيالية (16 exabytes) وحجم أقصى سخيف حقا يعادل 256 zettabytes كحجم وصول أقصى لنظام الملفات. قائد المشروع جيف بونويك قال أن "مليء نظام ملفات 128-bit يتجاوز مقدار حدود التخزين المتعارف عليها. فأنت لا تستطيع ملء بركة تخزينية 128-بت من دون غلي المحيطات." ومعنى ذلك حرفيا بأنك حتما بحاجة لجهاز حاسوب مصنوع من طاقة خالصة ليطلق طاقة كافية ليرفع درجة حرارة جميع المحيطات لدرجة الغليان ، وبذلك تستطيع ملء حدود نظام ملفات 128-بت. ويبدو أنه من المستبعد أن يقوم أي شخص في أي وقت قريب ببناء نظام ملفات 256-بت . يملك نظام ZFS أيضا طريقة جديدة للتعامل مع الهم القديم لتقسيمات القرص المتعددة. بحيث يقوم النظام ببناء مستودعات تخزينية افتراضية تدعى zpools ، بحيث تبدو جميع تقسيمات القرص الصلب مرتبطة بجزء واحد عملاق. يمكن أن ترتب السواقات على شاكلة RAID افتراضية متعددة ، والتي يمكن بعد ذلك أن تعالج نفسها بنفسها في حالة تلف البيانات في بعض السواقات. كما يمكن أيضا لنظام ZFS أن يأخذ لقطات لكل تغيير يجرى لملف ما ، ويقوم بحفظ الفرق فقط ؛ لا يمكن لأن بيانات أن تضيع. هناك العديد من الميزات الخيالية لنظام ZFS ، بحيث يقوم بكل شيء ما عدا صنع عشائك ، فلماذا لم تقم شركة Apple بادراجه ضمن نظام Mac OS X؟ جزء من المشكلة هو أن نظام ZFS ما زال في طور النضوج ، وشركة Sun لا تزال تحل المشاكل التي فيه . لذلك ، حتى لو تم إصلاح جميع العلل ، فان انتقال المستخدم كليا إلى نظام ملفات جديد يعد بحد ذاته مهمة شاقة. يتوقع من نظم الملفات أن تكون موثوقة تماما ، و يحتفظ المستخدمون عادة بأقراص مهيئة بواسطة أنظمة الملفات القديمة ، تمكنت شركة مايكروسوفت من نقل بعض مستخدميها من نظام FAT لنظام NTFS باستخدام أداة التحويل المدمجة بنظام ويندوز، ولكن في الحقيقة تمت علمية الانتقال عن طريق الاستنزاف ؛ بعد أن تخلص المستخدمين من أجهزة عصر ويندوز 98 واستبدلوها بأجهزة جديدة مجهزة بنظام XP. لا يزال نظام FAT يطاردنا حتى اليوم ، إذ أن معظم أقراص الفلاش مهيئة على نظام FAT32. لماذا؟ لأنه يعتبر أحد أقدم أنظمة الملفات المتوفرة ، كما أنه أسهلها تطبيقا. من السهل في كثير من الأحيان الابقاء على استخدام نظام ملفات راسخ ، حتى عندما تكون تكلفة الانتقال إلى نظام ملفات أحدث في الظاهر "مجانية" . لنأخذ لينكس على سبيل المثال ، وهو نظام مفتوح المصدر بكل معنى الكلمة ؛ وهو يسمح لأي شخص كان بكتابة نظام ملفات جديد - وهو مفيد بحد ذاته- فعلى الرغم من المحاولات الباسلة الرامية لتحديد ReiserFS كمعيار جديد. والتفوق في القياسات لبعض الانظمة مثل XFS ، فإن أغلب مستخدمي لينكس لا يزالوا يعتمدوا على نظام ملفات ext3. نظام ملفات ext3 ليس بجديد ، وليس بنظام فائق السرعة ولا يملك أي جاذبية ولن يقوم بإعداد عشائك ، ولكنه في المقابل موثوق وصادق ، وهذا هو ما يهم المستخدمين بالمقام الأول. حاولت شركة مايكروسوفت في الآونة الأخيرة إعادة نشر فكرة نظام ملفات BeOS المبني على قاعدة البيانات مع نظام WinFS ، والذي كان من المقرر أصلا أن يكون مدرجا ضمن ويندوز فيستا. بيد أن التأخير في إطلاق إصدارة فيستا تسبب في إجبار مايكروسوفت على حذف نظام WinFS من النظام التشغيلي وبدلا من ذلك قامت بنقله كقسم اختياري في برنامج قاعدة بيانات SQL. يبقى مستقبل نظام WinFS مظلما ، ولكن يمكن أن تحاول شركة مايكروسوفت بإدراجه ضمن إصدارة قادمة من نظام ويندوز. من المرجح أن يبقى نظام NTFS لبعض الوقت ، وببساطة خارج القصور الذاتي. كما سيحاول أيضا نظام HFS+ أن يشق طريقه لبضع سنوات. حتى نظام FAT سيبقى في سواقة الفلاش ، يذكرنا بشبح CP/M بعد فترة طويلة بحيث نسي كل شخص ماذا كان هذا في السابق. وفي حين قد لا تبدو نظم الملفات بحد ذاتها مثيرة ، ولكن يخبرنا تاريخها حكاية كيف تطورت أجهزة الحاسب وأنظمة التشغيل على مر السنين. كما أن مقولة "عن طريق أعماله ، ستعرف ماهيته" تنطبق لكل من البشر وأنظمة الملفات. عن طريق معرفة طريقة تخزين النظام التشغيلي لملف وضيع ، ستقدم لمحة لتقييدات وطموحات مصمميه. http://www8.0zz0.com/2009/02/18/06/170176547.jpg http://www6.0zz0.com/2009/02/17/12/696571839.gif http://www.g5g5.net//uploads/images/g5g5-68041c72f3.png http://www.g5g5.net//uploads/images/g5g5-f9e1386930.gif http://www.g5g5.net//uploads/images/g5g5-68041c72f3.png |
| الساعة الآن 06:31 PM. |
Powered by vBulletin
قوانين المنتدى