كما يعلم أغلب المستخدمين فإن كل التعاملات تتم داخل الحاسب بالنظام الثنائي “Binary System” والذي يعتمد علي الصفر والواحد الصحيح كمكون اساسي له. حيث يعتبر الصفر حقل ليس له قيمه اما الواحد هو حقل له قيمة.
وسنفترض ان لدينا قرص صلب فارغ تماما ولا يوجد عليه أي محتوي (أي ان القرص كاملا لا يحتوي الا علي اصفار). وسنقوم بكتابة صورة صغيرة علي هذا القرص وسيكون اسم الصورة “Personal.jpg”، فان الحاسب الآلي سيقوم بتحويل الصورة الي الصيغة الثنائية “Binary” ولنفترض انه سيكون بالشكل التالي:
ويمكننا تمثيل شكل القرص الصلب افتراضيا بمصفوفة ثنائية التكوين لها 26 عمود بعدد الحروف الانجليزية من A الي Z ولها ثمانية اسطر فقط كما هو موضح بالشكل التالي (القرص الصلب فارغا)
والمساحة الموجودة في السطرين الاول والثاني والمسبوقة بـ TOC “Table Of Content” انما تحتوي علي فهرس القرص الصلب وهو عبارة عن مؤشر للملفات المخزنة حيث تحفظ بداية ونهاية الملف. وتبقي المساحة في الاسطر من الثالث الي الثامن مساحة حرة لتخزين البيانات ولو اعتبرنا ان كل خانة تمثل بايت واحد فقط “1 Byte” ستكون مساحة القرص الصلب لدينا 6×26=156 بايت.
وبعد تخزين الصورة السابق الاشارة اليها والتي يكون حجمها حسب المثال السابق 40 بايت (عدد الخانات كل خانة = 1 بايت) ستصبح مساحة التخزين الحرة في القرص الصلب = 156-40=116 بايت. وسيتم كتابة البيانات كالتالي:
وبذلك تم ارشفة بيانات الصورة في TOC باسم الصورة ونقطة البداية ونقطة النهاية في المساحة الحرة. فبحسب المثال سنجد ان الصورة تم تخزينها في المساحة من A3 الي N4.
والسؤال هنا: ماذا سيحدث اذا لم تتوافر مساحة حرة مستمرة في القرص الصلب كما في المثال السابق؟
ولنفترض بحسب المثال السابق ان هناك ملف نصي باسم “Hi.txt” والقيمة الثنائية له كالتالي 011010100111
والان لنضيف هذا الملف الي القرص الافتراضي لدينا
ستضاف البيانات الي المساحة الحرة التالية للمساحة المحجوزة للصورة حيث سيضاف اسم الملف الي TOC متبوعا بمكان بداية البيانات ونهايتها حيث يبدأ في O4 وينتهي Z4 كما بالجدول التالي علي اعتبار ان التخزين تم علي نظام الـFAT الخاص بالويندوز
وبالتالي لا توجد لدينا مشكلة حتي الان. الا ان المشكلة تأتي في حالة التعديل علي الصورة واضافة تأثيرات لها وبالتالي يزيد حجمها قليلا وبالتالي يكون السؤال كيف سيتم تخزينها بعد ان تم حجز المساحة الحرة التي تليها للملف النصي Hi.TXT.
وهنا يظهر لدينا احتمالين:
1- أن يتم حذف الصورة الأولي وإعادة كتابتها كاملة مرة اخري بعد نهاية الملف النصي الثاني، ولكن الأمر هنا سيتضمن الكثير من عمليات القراءة والكتابة.
2-أن يتم تجزئة الصورة الأولي بحيث تصبح البيانات في مكانين مختلفين وان كان هذا الأمر سيبطىء من عملية الوصول المتتالي للبيانات.
فعند التعديل علي الصورة بالطريقة الأولي تم حذف الصورة كاملة واعادة كتابتها بعد الملف النصي وتم تغيير مكان بداية ونهاية الملف في TOC فقط ليصبح شكل القرص الصلب كالتالي:
أماعند التعديل علي الصورة بالطريقة الثانية سيتم اضافة الجزء الزائد في البيانات بعد الملف النصي وسوف يتم تعديل مكان البداية والنهاية باضافة مكان بداية ثاني ومكان نهاية ثاني الي TOC الخاص بالصورة ليصبح شكل القرص الصلب كالتالي:
ومع الطريقة الثانية تظهر ضرورة عمل الغاء التجزئة للقرص الصلب “Disk Defragmentation” كل فترة لإعادة توزيع البيانات بالشكل الأمثل وتسهيل الوصول اليها للتخفيف من حركة الذراع الميكانيكية للقرص الصلب.
ولكن هناك بعض أنظمة الملفات الاخري التي تراعي هذه المشكلة عند تخزين البيانات فمثلا نظام EXT4 الخاص باللينكس. والان لنري كيف سيتم كتابة الملفين علي القرص الصلب تبعا لهذا النظام.
كتابة الصورة الاولي:
وعند كتابة الملف النصي التالي يتم كالتالي:
ان الفكرة في هذه الطريقة في أن ذراع القرص الصلب ستتوضع في المنتصف وستصل بسرعة لمعظم الملفات دون جهد. كما أن اعادة التعديل علي الصورة لن تصبح أمرا صعبا بعد الآن.
اتمني ان اكون قد وفقت في نقل الفكرة وفي انتظار استفساراتكم للرد عليها ان شاء الله.