تجزئة نظام الملفات

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

The following example is a simplification of an otherwise complicated subject. Consider the following scenario: A new disk has had five files, named A, B, C, D and E, saved continuously and sequentially in that order. Each file is using 10 blocks of space. (Here, the block size is unimportant.) The remainder of the disk space is one free block. Thus, additional files can be created and saved after file E.
If the file B is deleted, a second region of ten blocks of free space is created, and the disk becomes fragmented. The empty space is simply left there, marked as available for later use, then used again as needed.[b] The file system could defragment the disk immediately after a deletion, but doing so would incur a severe performance penalty at unpredictable times.
Now, a new file called F, which requires seven blocks of space, can be placed into the first seven blocks of the newly freed space formerly holding the file B, and the three blocks following it will remain available. If another new file called G, which needs only three blocks, is added, it could then occupy the space after F and before C.
If subsequently F needs to be expanded, since the space immediately following it is occupied, there are three options for the file system:
- Adding a new block somewhere else and indicating that F has a second extent
- Moving files in the way of the expansion elsewhere, to allow F to remain contiguous
- Moving file F so it can be one contiguous file of the new, larger size
The second option is probably impractical for performance reasons, as is the third when the file is very large. The third option is impossible when there is no single contiguous free space large enough to hold the new file. Thus the usual practice is simply to create an extent somewhere else and chain the new extent onto the old one.
Material added to the end of file F would be part of the same extent. But if there is so much material that no room is available after the last extent, then another extent would have to be created, and so on. Eventually the file system has free segments in many places and some files may be spread over many extents. Access time for those files (or for all files) may become excessively long.
Necessity
Some early file systems were unable to fragment files. One such example was the Acorn DFS file system used on the BBC Micro. Due to its inability to fragment files, the error message can't extend would at times appear, and the user would often be unable to save a file even if the disk had adequate space for it.
استخدم نظام الملفات الموزعة (DFS) بنية قرص بسيطة للغاية، حيث كان يتم تحديد مواقع الملفات على القرص بناءً على طولها وقطاع البداية فقط. هذا يعني أن جميع الملفات يجب أن تكون موجودة ككتلة متصلة من القطاعات، وأن التجزئة غير ممكنة. باستخدام المثال الموضح في الجدول أعلاه، فإن محاولة توسيع الملف F في الخطوة الخامسة كانت ستفشل على مثل هذا النظام مع ظهور رسالة الخطأ " لا يمكن التوسيع" . بغض النظر عن مقدار المساحة الحرة المتبقية على القرص إجمالاً، لم تكن هذه المساحة متاحة لتوسيع ملف البيانات.
كانت معايير معالجة الأخطاء في ذلك الوقت بدائية، وعلى أي حال، نادرًا ما كانت البرامج المضغوطة في الذاكرة المحدودة لجهاز BBC Micro قادرة على تحمل إهدار المساحة في محاولة معالجة الأخطاء بسلاسة. بدلًا من ذلك، كان المستخدم يجد نفسه مُجبرًا على العودة إلى موجه الأوامر مع رسالة "لا يمكن التوسيع "، وتُفقد جميع البيانات التي لم تُضَف بعد إلى الملف. لم يكن بالإمكان حل المشكلة بمجرد التحقق من المساحة الحرة على القرص مسبقًا. فبينما قد توجد مساحة حرة على القرص، لم يكن حجم أكبر كتلة متصلة من المساحة الحرة واضحًا على الفور دون تحليل الأرقام التي يعرضها فهرس القرص، وبالتالي كان يغيب عن انتباه المستخدم. إضافةً إلى ذلك، كان جميع مستخدمي نظام الملفات الموزعة تقريبًا قد استخدموا سابقًا تخزين الملفات على أشرطة الكاسيت ، والذي لا يعاني من هذا الخطأ. كانت الترقية إلى نظام الأقراص المرنة ترقية مكلفة، وكان من المفاجئ أن تؤدي هذه الترقية إلى فقدان البيانات دون سابق إنذار . [ 2 ] [ 3 ]
الأنواع
قد يحدث تجزئة نظام الملفات على عدة مستويات:
- التجزئة داخل الملفات الفردية
- تجزئة الفضاء الحر
- انخفاض موضعية المرجع بين الملفات المنفصلة، ولكن ذات الصلة
- التجزئة داخل هياكل البيانات أو الملفات الخاصة المحجوزة لنظام الملفات نفسه
تجزئة الملفات
يحدث تجزئة الملفات الفردية عندما يُقسّم ملف واحد إلى أجزاء متعددة (تُسمى امتدادات في أنظمة الملفات القائمة على الامتدادات). ورغم أن أنظمة ملفات القرص تحاول الحفاظ على تجاور الملفات الفردية، إلا أن ذلك لا يكون ممكنًا في كثير من الأحيان دون تأثير سلبي كبير على الأداء. وعادةً ما تأخذ أدوات فحص نظام الملفات وإلغاء تجزئته تجزئة الملفات في الحسبان فقط ضمن إحصائية "نسبة التجزئة".
تجزئة الفضاء الحر
يحدث تجزئة المساحة الحرة (غير المخصصة) عندما توجد عدة مناطق غير مستخدمة في نظام الملفات حيث يمكن كتابة ملفات أو بيانات وصفية جديدة. وعادةً ما ينتج تجزئة المساحة الحرة غير المرغوب فيها عن حذف الملفات أو اقتطاعها، ولكن قد تقوم أنظمة الملفات أيضًا بإدراج أجزاء ("فقاعات") من المساحة الحرة عمدًا لتسهيل توسيع الملفات المجاورة (انظر منع التجزئة أدناه).
تشتت الملفات
يشير تجزئة الملفات، أو تجزئة الملفات المرتبطة، أو تجزئة الملفات على مستوى التطبيق، إلى عدم وجود مرجعية متبادلة (داخل وسيط التخزين) بين الملفات المرتبطة. وعلى عكس النوعين السابقين من التجزئة، يُعد تشتت الملفات مفهومًا أكثر غموضًا، إذ يعتمد بشكل كبير على نمط الوصول لتطبيقات محددة. وهذا ما يجعل قياسه أو تقديره بموضوعية أمرًا بالغ الصعوبة. ومع ذلك، يُمكن القول إنه النوع الأكثر أهمية من التجزئة، حيث وجدت الدراسات أن الملفات الأكثر استخدامًا تميل إلى أن تكون صغيرة الحجم مقارنةً بمعدل نقل البيانات المتاح على القرص في الثانية. [ 4 ]
لتجنب تجزئة الملفات ذات الصلة وتحسين تجاور الملفات (أو ما يُسمى في هذه الحالة بتجاور الملفات )، لا بد من وضع افتراضات أو إجراء ملاحظات دقيقة حول كيفية عمل التطبيقات. ومن الافتراضات الشائعة جدًا أنه من المفيد الاحتفاظ بالملفات الأصغر حجمًا في مجلد واحد معًا، وترتيبها وفقًا لترتيب نظام الملفات الطبيعي. ورغم أن هذا الافتراض غالبًا ما يكون منطقيًا، إلا أنه ليس صحيحًا دائمًا. فعلى سبيل المثال، قد يقرأ تطبيق ما عدة ملفات مختلفة، ربما في مجلدات مختلفة، بنفس ترتيب كتابتها. وبالتالي، قد يكون نظام الملفات الذي يُرتب جميع عمليات الكتابة بالتتابع أسرع بالنسبة لهذا التطبيق.
تجزئة بنية البيانات
قد تتعرض الفهارس أو الكتالوجات التي يستخدمها نظام الملفات نفسه للتجزؤ بمرور الوقت، نتيجةً لإنشاء أو تغيير أو حذف البيانات التي تحتويها. ويُعدّ هذا الأمر أكثر أهميةً عندما يحتوي المجلد على عدد كبير من الملفات الصغيرة جدًا مقارنةً باحتوائه على عدد أقل من الملفات الكبيرة. وبحسب تصميم نظام الملفات، قد تتعرض الملفات أو المناطق التي تحتوي على تلك البيانات للتجزؤ أيضًا (كما هو موضح أعلاه بالنسبة للملفات "العادية")، بغض النظر عن أي تجزئة لسجلات البيانات الفعلية المحفوظة داخل تلك الملفات أو المناطق. [ 5 ]
بالنسبة لبعض أنظمة الملفات (مثل NTFS [ c ] و HFS / HFS Plus [ 6 ] )، لا يمكن إجراء عملية الترتيب / الفرز / الضغط اللازمة لتحسين هذه البيانات بسهولة أثناء استخدام نظام الملفات. [ 7 ]
العواقب السلبية
يُعدّ تجزئة نظام الملفات أكثر إشكاليةً في محركات الأقراص الصلبة الاستهلاكية نظرًا للتفاوت المتزايد بين سرعة الوصول التسلسلي وزمن استجابة الدوران (وإلى حدٍّ أقل زمن البحث ) الذي تُبنى عليه أنظمة الملفات عادةً. [ 8 ] لذا، تُشكّل التجزئة مشكلةً مهمةً في أبحاث وتصميم أنظمة الملفات. ولا يعتمد احتواء التجزئة على تنسيق نظام الملفات على القرص فحسب، بل يعتمد أيضًا بشكلٍ كبير على تنفيذه. [ 9 ] يكون تأثير تجزئة نظام الملفات على أداء محركات الأقراص الصلبة أقل ، لعدم وجود زمن بحث ميكانيكي . [ 10 ] مع ذلك، يحتاج نظام الملفات إلى تخزين بيانات وصفية إضافية لكل جزء غير متجاور من الملف. ويشغل كل جزء من البيانات الوصفية مساحةً ويتطلب طاقة معالجة ووقتًا من المعالج. وفي حال الوصول إلى الحد الأقصى للتجزئة، تفشل طلبات الكتابة. [ 10 ]
في اختبارات الأداء البسيطة لأنظمة الملفات ، غالبًا ما يتم إغفال عامل التجزئة، نظرًا لصعوبة نمذجة التقادم والتجزئة الواقعيين. ولتبسيط المقارنة، تُجرى اختبارات الأداء لأنظمة الملفات عادةً على أنظمة ملفات فارغة. وبالتالي، قد تختلف النتائج اختلافًا كبيرًا عن أنماط الوصول في الواقع العملي. [ 11 ]
التخفيف
طُوِّرت عدة تقنيات لمكافحة التجزئة، ويمكن تصنيفها عادةً إلى فئتين: استباقية ورجعية . ونظرًا لصعوبة التنبؤ بأنماط الوصول، فإن هذه التقنيات غالبًا ما تكون تجريبية بطبيعتها ، وقد تُؤدي إلى تدهور الأداء في ظل أحمال العمل غير المتوقعة.
منع التجزئة
تحاول التقنيات الاستباقية تقليل التجزئة إلى أدنى حد ممكن عند كتابة البيانات على القرص. وأبسط هذه التقنيات هي إلحاق البيانات بجزء موجود في مكانه كلما أمكن ذلك، بدلاً من تخصيص كتل جديدة لجزء جديد.
تحاول العديد من أنظمة الملفات الحالية تخصيص أجزاء أطول مسبقًا، أو أجزاء من مساحات تخزين حرة مختلفة، تُسمى " امتدادات" ، للملفات التي تُضاف إليها البيانات بشكل نشط. وهذا يمنع إلى حد كبير تجزئة الملفات عند إضافة البيانات إلى عدة ملفات في وقت واحد، وبالتالي يمنع تشابكها بشكل مفرط. [ 9 ]
إذا كان الحجم النهائي لملفٍ ما معروفًا، يُمكن تخصيص مساحة تخزين مُسبقة له بالكامل. على سبيل المثال، يُمكن تغيير حجم ملف التبديل (ملف الصفحة) في نظام التشغيل مايكروسوفت ويندوز ديناميكيًا أثناء التشغيل العادي، مما قد يؤدي إلى تجزئته بشكل كبير. يُمكن تجنب ذلك بتحديد ملف صفحة بنفس الحد الأدنى والحد الأقصى للحجم، مما يُؤدي فعليًا إلى تخصيص مساحة تخزين مُسبقة للملف بأكمله.
يحد برنامج BitTorrent وتطبيقات مشاركة الملفات الأخرى من نوع نظير إلى نظير من التجزئة عن طريق تخصيص المساحة الكاملة اللازمة للملف مسبقًا عند بدء التنزيلات . [ 12 ]
تُعدّ تقنية التخصيص المؤجل في أنظمة الملفات XFS و HFS+ [ 13 ] و ZFS تقنية حديثة نسبيًا ؛ وتُعرف هذه التقنية أيضًا باسم "التخصيص عند التفريغ" في نظامي الملفات reiser4 و ext4 . عند الكتابة إلى نظام الملفات، تُحجز كتل النظام، ولكن لا تُحدد مواقع الملفات بعد. لاحقًا، عندما يُجبر نظام الملفات على تفريغ التغييرات نتيجةً لضغط الذاكرة أو إتمام معاملة، يكون لدى مُخصِّص الذاكرة معرفة أفضل بخصائص الملفات. تحاول معظم أنظمة الملفات التي تعتمد هذا النهج تفريغ الملفات في دليل واحد بشكل متجاور. وبافتراض شيوع عمليات القراءة المتعددة من دليل واحد، تتحسن موضعية المرجع. [ 14 ] كما يُرتب نظام الملفات reiser4 تخطيط الملفات وفقًا لجدول تجزئة الدليل، بحيث تُقرأ الملفات دائمًا بالتسلسل عند الوصول إليها بترتيب نظام الملفات الطبيعي (كما يُحدده الأمر readdir ). [ 15 ]
إلغاء التجزئة
تحاول التقنيات الاسترجاعية الحد من التجزئة، أو آثارها السلبية، بعد حدوثها. توفر العديد من أنظمة الملفات أدوات إلغاء التجزئة ، التي تحاول إعادة ترتيب أجزاء الملفات، وأحيانًا تقليل تشتتها (أي تحسين تجاورها، أو موضع مرجعها ) عن طريق الاحتفاظ بالملفات الأصغر في مجلدات ، أو هياكل مجلدات، أو حتى تسلسلات ملفات قريبة من بعضها البعض على القرص.
يقوم نظام الملفات HFS Plus بإلغاء تجزئة الملفات التي يقل حجمها عن 20 ميجابايت والتي يتم تقسيمها إلى 8 أجزاء أو أكثر عند فتح الملف بشكل شفاف. [ 16 ]
كان نظام الملفات الذكي (SFS) الخاص بجهاز كومودور أميغا، والذي أصبح الآن قديمًا، يقوم بإلغاء تجزئة الملفات تلقائيًا أثناء استخدام النظام. وتتميز عملية إلغاء التجزئة بأنها لا تعتمد على حالة النظام تقريبًا (باستثناء الموقع الذي تعمل عليه)، مما يسمح بإيقافها واستئنافها فورًا. وخلال عملية إلغاء التجزئة، يتم ضمان سلامة البيانات ، سواءً البيانات الوصفية أو البيانات العادية.
انظر أيضاً
ملحوظات
- ↑ قد تقوم بعض أنظمة الملفات، مثل NTFS و ext2 +، بتخصيص مناطق متجاورة فارغة مسبقًا لأغراض خاصة.
- ↑ إن ممارسة ترك المساحة التي تشغلها الملفات المحذوفة دون إزعاج إلى حد كبير هي السبب في قدرة برامج استعادة الملفات المحذوفة على العمل؛ فقد استعادت ببساطة الملف الذي تم حذف اسمه من الدليل، ولكن محتوياته لا تزال موجودة على القرص.
- ↑ يحجز نظام الملفات NTFS نسبة 12.5% من وحدة التخزين لمنطقة MFT، ولكن فقط حتى تحتاج ملفات أخرى إلى هذه المساحة. (أي، إذا امتلأت وحدة التخزين بنسبة تزيد عن 87.5%، فلن يكون من الممكن ضمان عدم تجزئة MFT.) [ 5 ]
مراجع
- ↑ فيشر، رايان (11 فبراير 2022). "هل يجب عليّ إلغاء تجزئة قرص SSD الخاص بي؟" . مجلة PC Gamer . مؤرشف من الأصل في 18 فبراير 2022. تم الاطلاع عليه في 26 أبريل 2022 .
- ↑ http://www.8bs.com/hints/083.txt - وصفخطأ " لا يمكن التمديد "
- ↑ http://8bs.com/mag/1to4/basegd1.txt - احتمال فقدان البيانات بسببخطأ "لا يمكن التوسيع "
- ↑ دوسور، جون ر.؛ بولوسكي، ويليام ج. (يونيو 1999). "دراسة واسعة النطاق لمحتويات نظام الملفات" . مجلة ACM SIGMETRICS لتقييم الأداء . 27 (1): 59-70 . doi : 10.1145/301464.301480 .
- 1 2 "كيف يحجز نظام الملفات NTFS مساحة لجدول الملفات الرئيسي (MFT)" . learn.microsoft.com . مايكروسوفت . تم الاطلاع عليه بتاريخ 22 أكتوبر 2022 .
- ↑ "DiskWarrior in Depth" . Alsoft . تم الاطلاع عليه بتاريخ 22 أكتوبر 2022 .
- ↑ "الحفاظ على الأداء الأمثل لنظام التشغيل Windows 2000 من خلال إلغاء التجزئة" . learn.microsoft.com . مايكروسوفت . تم الاطلاع عليه بتاريخ 22 أكتوبر 2022 .
- ↑ كرايدر، مارك هـ. (2006-04-03). تقنيات التخزين المستقبلية: نظرة إلى ما وراء الأفق (ملف PDF) . مؤتمر عالم شبكات التخزين. شركة سيجيت للتكنولوجيا . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 17 يوليو 2006.
- 1 2 ماكفوي، إل دبليو؛ كلايمان، إس آر (شتاء 1991). "أداء مشابه لـ Extent من نظام ملفات UNIX" ( PostScript ) . وقائع مؤتمر USENIX شتاء 1991. دالاس، تكساس: شركة صن مايكروسيستمز، ص 33-43 . تم الاطلاع عليه بتاريخ 14 ديسمبر 2006 .
- 1 2 هانسيلمان، سكوت (3 ديسمبر 2014). "القصة الحقيقية والكاملة - هل يقوم نظام ويندوز بإلغاء تجزئة محرك الأقراص ذي الحالة الصلبة (SSD)؟" . مدونة سكوت هانسيلمان .
- ↑ سميث، كيث أرنولد (يناير 2001). "معايير أداء أنظمة الملفات الخاصة بأحمال العمل" (ملف PDF) . كامبريدج، ماساتشوستس : جامعة هارفارد . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 17 نوفمبر 2004. تم الاطلاع عليه بتاريخ 14 ديسمبر 2006 .
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ↑ لايتون، جيفري (29 مارس 2009). "من ext3 إلى ext4: مقابلة مع ثيودور تسو" . مجلة لينكس . كوين ستريت . مؤرشف من الأصل في 1 أبريل 2009.
- ↑ سينغ، أميت (مايو 2004). "التجزئة في وحدات تخزين HFS Plus" . Mac OS X Internals . مؤرشف من الأصل في 18 نوفمبر 2012. تم الاطلاع عليه في 27 أكتوبر 2009 .
- ↑ سويني، آدم؛ دوسيت، دوغ؛ هو، وي؛ أندرسون، كورتيس؛ نيشيموتو، مايك؛ بيك، جيف (يناير 1996). "قابلية التوسع في نظام ملفات XFS" (ملف PDF) . وقائع المؤتمر التقني السنوي لـ USENIX لعام 1996. سان دييغو، كاليفورنيا : سيليكون غرافيكس . تاريخ الاسترجاع: 14 ديسمبر 2006 .
- ↑ رايزر، هانز (2006-02-06). "نظام ملفات رايزر 4" . جوجل تيك توكس . مؤرشف من الأصل في 19 مايو 2011. تم الاطلاع عليه في 14 ديسمبر 2006 .
- ↑ سينغ، أميت (2007). "12 نظام ملفات HFS Plus" . أساسيات نظام التشغيل Mac OS X: منهج النظم . أديسون ويسلي . ISBN 0321278542.
للمزيد من القراءة
- سميث، كيث؛ سيلتزر، مارغو. تخطيط الملفات وأداء نظام الملفات (ملف PDF) (ورقة بحثية). جامعة هارفارد .
- إدارة نظام الملفات
