آی پی امداد
abtahi
آریا الکترونیک mehrinfo تکشو

ساختار هارددیسک

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM
ساختار هارددیسک :
دستگاه هاي ذخيره سازي ثانوي :
دونوع دستگاه ذخيره سازي ثانوي وجود دارد :
- دستگاه ذخيره سازي با دسترسي مستقيم (DASD)
- دستگاههاي سريال

دستگاه هاي ذخيره سازي با دسترسي مستقيم :
اين نوع دستگاه ها به اين دليل با اين نام خوانده مي شوند كه امكان دسترسي مستقيم به داده ها را فراهم مي كند .شامل 2 نوع دستگاه زير مي با شند:
1) Magnetic Disk (ديسك مغناطيسي) : اين نوع دستگاه ها شامل هاردديسك ها و فلاپي ديسك ها مي باشد هاردديسك ها ظرفيت بالاتر نسبت به فلاپي ديسك ها دارند و هزينه كمتري به ازاي هر بيت خواهند داشت . فلاپي ديسك ها ظرفيت پايين ، سرعت كم و بسيار ارزان هستند .
2) Nonmagnetic Disk (ديسك هاي غير مغناطيسي مثلا نوري) : ديسك هاي فشرده (CD)از اين نوع دستگاه ها مي باشند .
 

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM
دستگاه هاي سريال:
اين نوع دستگاه ها به اين دليل با اين نام خوانده مي شود كه امكان دسترسي به داده ها به صورت پشت سرهم و نوبتي است . در اين نوع دستگاه ها يك داده read يا write نمي شود مگر در صورتي كه همه داده هاي قبلي read يا write شده باشند .نوارهاي مغناطيسياز اين نوع دستگاه ها مي باشند .


ساختار ديسك :
اطلاعات در سطح يك يا تعداد بيشتري پلاتر بصورت track هاي پشت سرهم ذخيره مي شوند .
 

پیوست‌ها

  • 25.7 کیلوبایت بازدیدها: 289

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM
سطح :
- يك سطح از track هاي هم محور تشكيل شده است .
- يك track از تعدادي سكتور تشكيل شده است .
- يك سكتور كوچكترين جزء قابل آدرس دهي در ديسك مي باشد .
 

پیوست‌ها

  • 36.9 کیلوبایت بازدیدها: 286

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM
* سوال : زماني كه دستور read صادر مي شود ، چه اتفاقاتي رخ مي دهد ؟
جواب : سيستم عامل (OS) سطح ، track و سكتور صحيح را پيدا مي كند و سكتور را در يك ناحيه ي خاص در RAM كه بافر ناميده مي شود ، مي خواند سپس بايت مورد نظر را در ميان بافر پيدا مي كند .

سيلندر :
-سيلندر يك مجموعه از track هاكه بر روي هم قرار گرفته اند (هم شعاع ).
-اطلاعات روي يك سيلندر ، بدون حركت بازوي نگهدارنده هدهاي read / write قابل دسترسي است .
-حركت بازو ، جستجو (Seeking) ناميده مي شود
 

پیوست‌ها

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM
ظرفيت :
- تعداد سيلندر ها = تعداد track ها
- ظرفيت track = تعداد سكتور ها در هر track × تعداد بايت ها در هر track
- ظرفيت سيلندر= تعداد track ها در هر سيلندر× ظرفيت track
- ظرفيت هارد = تعداد سيلندرها × ظرفيت سيلندر .
* اگر تعداد بايت هاي يك فايل را بدانيم مي توان با استفاده از اين روابط فضايي از ديسك كه آن فايل به آن نياز دارد را محاسبه كرد .

مثال :
- خصوصيات فايل :
· ركوردهاي با اندازه ثابت .
· تعدادركوردها = 50000
· اندازه ركورد = 256 بايت
- خصوصيات ديسك :
· تعداد بايت ها در هر سكتور = 512
· تعداد سكتور ها در هر track = 63
· تعداد track ها در هر سيلندر = 16
· تعداد سيلندر ها = 4092

چه تعداد سيلندر لازم است ؟
راه حل :
512 ÷ 256 = 2 تعداد ركورد ها در هر سكتور
2 × 63 = 126 trackتعداد سكتور ها در هر
16 × 126 = 2016 تعداد ركورد ها در هر سيلندر
5000 ÷ 2016 ≈ 24.8 تعداد سيلندرها

روش ديگر :
512 ÷ 256 = 2 تعداد ركوردها در هر سكتور
50000 ÷ 2 = 25000 تعداد سكتور ها
63 × 16 = 1008 تعداد سكتورها در هر سيلندر
25000 ÷ 1008 ≈ 24.8 سيلندر
 

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM
توجه :
- ديسك نمي تواند تعداد سيلندر نزديك به هم داشته باشد . دراين مورد فايل برروی تعداد زيادي سيلندر پخش مي شود .
- 2 راه براي سازماندهي داده ها روي ديسك وجود دارد :
* بوسيله سكتور
* بوسيله دسته بندي كه توسط كاربر تعريف مي شود .

سازماندهي track ها بوسيله سكتور :
گمارش فيزيكي سكتورها :
- ساده ترين نمايش اين است كه سكتور ها بصورت بخش هاي مجاور و با اندازه ثابت كنارهم قرار بگيرند .
- اين ممكن است از نظر منطقي كفايت کند اما از نظر فيزيكي نه !
 

پیوست‌ها

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM
ممكن است براي خواندن يك فايل 11 گردش انجام شود .

سوال : كنترلر ديسك ، ممكن است به زمان پردازش داده ها قبل از اينكه آماده دريافت آنها باشد به آنها نياز داشته باشد . در اين حالت ممكن است سكتور آغازين را از دست دهيم ؟
جواب :‌Interleaving (پخش بصورت لفافي) است .
Interleaving يعني وقفه هاي بين سكتورهاي فيزيكي را با سكتورهاي مجاور logical پر كنيم . مثلاً براي 11 سكتور با فاكتور Interleaving = 3 همانطور كه در شكل ديده مي شود تنها 3 گردش خواهيم داشت .
 

پیوست‌ها

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM
معمولاً سرعت كنترلر با اين كار 1 برابر افزايش پيدا مي كند . در اين حالت سكتور ها بصورت logical و physical مجاور هم قرار گرفته اند .

كلاستر :
- file fragmentation يك بخش از سيستم عامل است كه وظيفه مديريت فايل ها را به عهده دارد و بخش هاي logical يك فايل را در ميان موقعيت های فيزيكي آنها قرار مي دهد .
- كلاستر يك تعداد ثابت سكتورهاي مجاور هم مي باشند file manager يك تعداد كلاستر را به فايل تخصيص مي دهد .
- ممكن است در آخرين كلاستر فايل ، فضاي بدون استفاده اي وجود داشته باشد . اين فضا در تكه تكه سازي داخلي بكار مي رود . به عنوان مثاب اگر اندازه سكتور 512 بايت باشد ؛ اندازه كلاستور ، 2 سكتور است و فايل حاوي 10 بايت باشد كلاستور 1024 تخصيص داده مي شود .
- File manager حاوي جدول تخصيص جاي فايل (FAT) مي باشد كه حاوي محل هر كلاستر در ديسك مي باشد .

حوزه (Extent) :
حوزه يك گروه از كلاستور هاي مجاور است . اگر فايل در يك حوزه ذخيره شده باشد جستجوي فايل فقط در آن حوزه انجام مي شود . اگر تعداد كافي كلاستر براي نگهداري فايل وجود نداشته باشد ، فايل به 2 يا تعداد بيشتري حوزه تقسيم مي شود .
 

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM
تكه تكه سازي (fragmentation):
Fragmentation به دلايل زير انجام مي شود :
1) ركوردها دقيقاً با 1 سكتور fit نمي شود :
- اگر اندازه ركورد 200 بايت باشد و اندازه سكتور 512 بايت باشد سكتور در 2 ركورد قرار مي گيرد و 112 بايت فضاي غير مفيد در هر سكتور مي باشد اين فضا در fragment كردن بكار مي رود .
- راه حل اين است كه اجازه دهيم ركوردها در 2 سكتور جاي بگيرند اما در اين مورد براي خواندن فايل بايد به هر دو سكتور دسترسي داشته باشيم .
2) به دليل استفاده از كلاسترها :
- اگر اندازه فايل مضربي از اندازه كلاستر نبود ، آخرين كلاستر طور ناقص استفاده مي شود .
- وقتي كه ديسك حاوي فايل با اندازه بزرگ باشد در حالتي كه پردازش بصورت ترتيبي و متوالي انجام مي شود از كلاستر با اندازه بزرگ استفاده مي شود .
- بر عكس در حالتي كه ديسك حاوي فايل با اندازه كوچك باشد از كلاستر با اندازه كوچك استفاده مي شود اين در حاليست كه پردازش بصورت تصادفي و random انجام مي شود .

سازماندهي track ها بوسيله بلوك :
- trackها مي توانند به جاي اينكه به سكتورتقسيم بندي شوند به بلوك هايي كه خود كاربر تعريف مي كند تقسيم بندي شوند .
- بلوك معمولاً از تعداد صحيحي ركوردهاي logical تشكيل مي شود .
- فاكتور بلوكه سازي ، تعداد ركوردهاي ذخيره شده درهر بلوك مي باشد .
- نتيجه اين است كه هيچ fragment داخلي وجود نداردو ركوردها در 2 بلوك جستجو نمي شوند .
- هر بلوك مي تواند حاوي بلوك هاي فرعي باشد .
 

kami_in2000

کاربران vip(افتخاری)
vip افتخاری
کاربر
2009-02-04
558
2,880
QOM

Nondata overhead :
- ميزاني از فضاست كه براي پر كردن كه براي پركردن به جاي داده بكار مي رود .
- ديسك هاي برمبناي سكتور آدرس دهي مي شوند : در ابتداي هر سكتور ، يك سري اطلاعات مثل آدرس سكتور ، آدرس track ، وضعيت (در صورتيكه معيوب باشد .) ذخيره مي شود . فاصله هايي بين سكتور ها وجود دارد .
- ديسك هايي كه بر مبناي بلوك سازماندهي شده اند : بلوك هاي فرعي و Gap بين بلوك ها بخشي از اين فضاي اضافي مي باشند اما بيشتر اين فضا مربوط به آدرس دهي بر مبناي سكتور مي باشد .

مثال :
* خصوصيات ديسك :
- ديسك بر مبناي بلوك آدرس دهي شده است .
- اندازه track = 20000 بايت.
- فضاي Non data over head در هر بلوك = 300 بايت .
* خصوصيات فايل :
- اندازه ركورد = 100 بايت .
* چه تعداد ركورد در هر track با فاكتورهاي زير مي توان ذخيره كرد ؟
Ø فاكتور بلوكه سازي = 10
Ø فاكتور بلوكه سازي = 60
 
بالا