os3h

 

Directory Implementation

Page history last edited by Anonymous 1 yr ago
 
 
 
 
 
 
 
 
 
 
Directory Implementation
 
الاختيار للدليل ودليل تخصيص ادارة الخوارزميات يؤثر بشكل ملحوظ على الكفاءه والاداء ، والاعتماد على نظام الملفات وهناك طريقتان لذلك
 
1-      قائمة خطية  linear list
 اسهل طريقة لتنفيذ الدليل هي استخدام القائمة الخطية لاسماء الملفات مع مؤشرات لبيانات البلوك في الذاكرة وهي سهلة للبرنامج ولكن تستغرق وقتاً طويلاً لتنفيذه
وعند انشاء ملف جديد , يجب في البداية البحث في الدليل للتاكد من عدم وجود ملف يحمل نفس الاسم و بعدها يُضاف هذا الملف الجديد لنهاية الدليل
ولحذف ملف معين , ابحث في الدليل عن اسم الملف ثم اُفرغ المساحة الخصصة له
ولاعادة استخدام مدخُلات الدليل نستطيع استخدام عدة طرق :
0 وضع علامة (mark ) عند المُدخل كمعطل او غير مستخدم اما باسناده الى اسم معين كجميع الاسماء الفارغة او ببت المستخدم\غيرمستخدم لكل مُدخل
0 او نضعه في قائمة مُدخلات الدليل الحرة
0 او نسخ آخر مُدخل في الدليل الى مساحة حرة وهذا يقلل من طول الدليل
والقائمة الخطية تستخدم لتقليل الوقت المستخدم لحذف ملف.
ولكن عيب القائمة الخطية هو البحث عن ملف معين في الدليل .
ومعلومات الدليل تستخدم بكثرة وقد يلاحظ المستخدم بطئها عند المعالجة
2. الجدول hash table :
في هذه الطريقة, قائمة خطية (linear list) تخزن مُدخلات الدليل بالاضافة  الى تركيب بيانات مبعثر ( hash data structured ) , والجدول ياخذ قيمة محسوبة من اسم الملف و يُرجع مؤشر (pointer) للملف في القائمة الخطية
وهذا يقلل من الوقت المستغرق اثناء عملية البحث عن ملف
ومن عيوبه

0 امكانية حدوث تصادم , فقد يكون هناك ملفان لنفس المكان

0 محدودية الحجم , فعلى سبيل المثال : فاذا كان في القائمة الخطية 64 ملف يكون حدم الجدول 64
وعند اضافة الملف الــ65 يجب ان يزيد حجم الجدول ,, و يصبح حجمه 128 ( يجب ان يكون من مضاعفات 2 )
ويجب اعادة تنظيم الملفات في الجدول الجديد
 
 
 ***

 

اماني الشهراني 

مصادري : 

الكتاب Operating system concept

  http://arb3.maktoob.com/Translate/index.php  وترجمته بتصريف من موقع

Comments (0)

You don't have permission to comment on this page.