ساختار ديسکهاي سخت
Download
Report
Transcript ساختار ديسکهاي سخت
In the Name of God
Lecture 3
A Secondary Storage Device:
Magnetic Disk
(section 3.1)
File Structure
Dr. M. Rahgozar
حافظه هاي ثانوي
Secondary Storage Devices
انواع مختلف حافظه هاي ثانوي کدامند؟
مقايسه انواع حافظه ها از نظر سرعت و هزينه چگونه ميباشد؟
چه نوع حافظه برای چه حجم از داده ها مناسب ميباشد؟
ساختار ديسکهاي سخت چگونه ميباشد؟
اطالعات سربار ( )Non Data Overheadچيست؟
زمان دسترسي به ديسکها باعث چه مشکالتي ميشود؟
Dr. M. Rahgozar
3-2
File Structure
حافظه هاي ثانوي
Secondary Storage Devices
انواع مختلف حافظه هاي ثانوي کدامند؟
حافظه هاي با دسترسي مستقيم )(Direct Access Devices
ديسکهاي مغناطيسي )(Magnetic Disks
• ديسکهاي سخت ) : (Hard Disksظرفيت باال
• ديسکت ها ) : (Floppy Disksظرفيت پايين و سرعت کم
ديسکهاي نوري : CD-ROMظرفيت باال
ديسکهاي نوري : DVDظرفيت خيلي باال
حافظه هاي با دسترسي سلاير ) (Sequential Access Devices
نوارهاي مغناطيسي ) : (Magnetic Tapesدسترسي Sequentialسريع
Dr. M. Rahgozar
3-3
File Structure
مقايسه انواع حافظه ها
Comparing Storage Devices
مقايسه انواع حافظه ها از نظر سرعت و هزينه چگونه ميباشد؟
(هزينه؟)
چه نوع حافظه برای چه حجم از داده ها مناسب ميباشد؟
(حجم؟)
سرعت باال -هزينه زياد -احجام کم داده
سرعت کم – هزينه پايين -احجام باالي داده
Dr. M. Rahgozar
3-4
File Structure
ديسک مغناطيسي:يک حافظه ثانوي
)Magnetic Disk(
File Structure
3-5
Dr. M. Rahgozar
ساختار ديسکهاي سخت
)(Hard Disks
ساختار ديسکهاي سخت چگونه ميباشد؟
مجموعه اي از صفحات مغناطيسي سوار شده روي يک محور که به وسيله تعدادي
هد( )Headبه طور همزمان خوانده يا نوشته مي شوند.
Dr. M. Rahgozar
3-6
File Structure
ساختار ديسکهاي سخت
)(Hard Disks
ساختار ديسکهاي سخت چگونه ميباشد؟
مجموعه اي از صفحات مغناطيسي سوار شده روي يک محور که به وسيله تعدادي
هد( )Headبه طور همزمان خوانده يا نوشته مي شوند.
Dr. M. Rahgozar
3-7
File Structure
ساختار ديسکهاي سخت
)(Hard Disks
شيار ) (Trackچيست؟
هر صفحه به چندين شيار بصورت دايره هاي متحد المرکز تقسيم ميشوند.
بخش ) (Sectorچيست؟
هر شيار به تعدادي بخش که کوچکترين واحد آدرس دهي )(addressable units
ميباشند تقسيم ميشود.
سيلندر ( )Cylinderچيست؟
شيارهاي صفحات مجاور تشکيل يک سيلندرمجازي مي دهند که بطورهمزمان بوسيله
مجموعه هد ها قابل خواندن يا نوشتن ميباشند.
tracks
sector
Dr. M. Rahgozar
3-8
File Structure
ساختار ديسکهاي سخت
)(Hard Disks
ساختار ديسکهاي سخت ) (Hard Disksچگونه ميباشد؟
tracks
تعداد سيلندرها ؟
=
تعداد شيارها در يک صفحه
ظرفيت هر شيار؟
=
sector
تعداد سکتور در شيار * تعداد بايت در سکتور
ظرفيت هر سيلندر؟
=
تعداد سطوح مغناطيسي * ظرفيت هر شيار
ظرفيت ديسک؟
=
Dr. M. Rahgozar
تعداد سيلندرها * ظرفيت هر سيلندر
3-9
File Structure
مثال:
يک حافظه ثانوي :ديسک مغناطيسي
)(Magnetic Disk
(1فايلي با تعداد 50,000رکورد 256بايتي در نظر ميگيريم.
(2ديسکي با سکتورهاي 512بايتي ،شيارهاي 63سکتوري و سيلندرهاي 16
(تعداد صفحات؟)
شياري به تعداد 4092در نظر ميگيريم.
سوال:
چند سيلندر براي نگاهداري اين فايل الزم ميباشد؟
تعداد رکورد در هر شيار= 126 = 2 * 63
تعداد رکورد در هر سيلندر= 2016 = 16 * 126
تعداد سيلندر الزم = 24.8 =50000 / 2016
tracks
sector
)اگر ديسک فضاي آزاد با اين تعداد سيلندر بطور متوالي نداشته باشد ؟)
Dr. M. Rahgozar
3-10
File Structure
ساختار ديسکهاي سخت
)(Hard Disks
انواع سازماندهي شيارها روي ديسکهاي سخت چگونه ميباشد؟
(1سازماندهي شيارها بر حسب سکتور
(2سازماندهي شيارها بر حسب بلوک
(ديسکهاي )...
نوع اول :سازماندهي شيارها بر حسب سکتور:
هر شيار به چند بخش مساوي به نام سکتور تقسيم ميشود.
سکتورها کوچکترين واحد قابل آدرس دهي روي شيار ميباشند .
شماره گذاري سکتورها ممکن است بطور متناوب باشد!
Dr. M. Rahgozar
3-11
)چرا؟(
File Structure
نوع اول :سازماندهي شيارها
بر حسب سکتور
شماره گذاري سکتورها چگونه است؟
چرا شماره گذاري سکتورها ممکن است بطور متناوب باشد؟
Dr. M. Rahgozar
3-12
File Structure
نوع اول :سازماندهي شيارها
بر حسب سکتور
کالستر) (Clusterچيست ؟
تعدادي مشخص و ثابت از سکتورهاي متوالي ميباشد( .منطقا متوالي؟)
که بوسيله File Managerخوانده ،نوشته ،رزرو يا حذف مي شود.
(چه تعداد؟)
(کجا تعيين ميشود؟)
قسمت ) (Extentچيست؟
تعدادي کالستر متوالي ) منطقا؟ ( که بطور يکجا براي يک فايل رزرو شده باشند.
يک extentميتواند شامل چند شيار يا حتي چند سيلندر متوالي نيز باشد.
(چه تعداد؟)
(کجا تعيين ميشود؟)
Dr. M. Rahgozar
3-13
File Structure
نوع اول :سازماندهي شيارها
بر حسب سکتور
ناپيوستگي ( )Fragmentationچيست؟
تقسيم فضاي ديسک به اجزاء غير قابل استفاده ...
چگونه ناپيوستگي ايجاد ميشود؟
(1ناهمخواني طول رکوردهاي يک فايل با طول سکتورهاي ديسک …
در صورتي که نخواهيم که يک رکورد روي دو سکتور تقسيم شده باشد !
مثال:
اگر طول رکورد 300و
طول سکتور 512باشد
براي هر رکورد 212بايت بي استفاده خواهد ماند.
Dr. M. Rahgozar
3-14
File Structure
نوع اول :سازماندهي شيارها
بر حسب سکتور
چگونه ناپيوستگي ايجاد ميشود؟ (ادامه)...
(2ناهمخواني طول فايل با طول کالسترها ...
با فرض اينکه هر extentبرابر با يک کالستر باشد
ممکن است آخرين کالستر فايل فضاي خالي داشته باشد.
مثال:
اگرفايلي به طول يک بايت و
هر کالستر برابر با سه سکتور 512بايتي باشد،
در اين صورت 1535بايت از فضاي رزرو شده بي استفاده خواهد ماند.
Dr. M. Rahgozar
3-15
File Structure
ساختار ديسکهاي سخت
)(Hard Disks
نوع دوم :سازماندهي شيارها برحسب بلوک:
هر شيار به چند بخش به نام بلوک تقسيم ميشود.
بلوکها هيچ ربطي با سکتورها ندارند!
(چرا؟)
تعداد رکوردها در هر بلوک را فاکتور بلوک ( )Blocking Factorميناميم.
هر بلوک شامل چند قسمت ( )subblockميباشد:
: Count Sub Block (1حاوي طول بلوک بر حسب بايت.
: Key subblock (2حاوي کليد دسترسي ) (Hardبه بلوک.
: Data subblock (3حاوي داده هاي بلوک.
Dr. M. Rahgozar
3-16
File Structure
ساختار ديسکهاي سخت
)(Hard Disks
اطالعات سربار ( )Non Data Overheadچيست؟
انواع داده هاي مخصوص سيستم مديريت ديسک ...
که ربطي به داده هاي فايلها ندارند.
اطالعات سربار در ديسکهاي سکتوري کدامند؟
آدرس سکتور ،آدرس شيار ،شرط صحت سکتور )(Condition
و نيز فضاي خالي ) (Gapبين دو سکتور.
اطالعات سربار در ديسکهاي بلوکي کدامند؟
زير بلوکهاي غيرداده اي ( Countو) KEY
و نيز فضاي خالي ) (Gapبين بلوکها.
Dr. M. Rahgozar
3-17
File Structure
اطالعات سربار
()Non Data Overhead
مثال:
(1يک ديسک بلوکي با شيارهاي 20,000بايتي و با 300بايت اطالعات سربار بر
هربلوک در نظر ميگيريم،
(2تعداد رکوردهاي 100بايتي در هر شيار را براي دو حالت مختلف حساب ميکنيم:
حالت اول :اگر هر بلوک حاوي 10رکورد باشد:
فاکتور بلوک = 10
داده هاي هر بلوک = (10*100 ) = 1000
اطالعات سر بار= 300
تعداد بلوک در هر شيار= 15 = 15.38 = 20000 / 1300
تعداد رکورد در هر شيار = )150 = (15*10
(?)Fragmentation rate
Dr. M. Rahgozar
3-18
File Structure
اطالعات سربار
()Non Data Overhead
مثال (ادامه:)...
(1يک ديسک بلوکي با شيارهاي 20,000بايتي و با 300بايت اطالعات سربار بر
هربلوک در نظر ميگيريم،
(2تعداد رکوردهاي 100بايتي در هر شيار را براي دو حالت مختلف حساب ميکنيم:
حالت دوم :اگرهر بلوک حاوي 60رکورد باشد:
فاکتور بلوک = 60
داده هاي هر بلوک = 6000
اطالعات سر بار= 300
تعداد بلوک در هر شيار = 3 = 3.17 = 20,000 / 6300
تعداد رکورد در هر شيار= 180 = 3 * 60
(?)Fragmentation rate
Dr. M. Rahgozar
3-19
File Structure
زمان دسترسي به ديسکهاي سخت
)(Hard Disks Access Time
زمان دسترسي به داده هاي ديسکهاي سخت چگونه ميباشد؟
زمان دسترسي به داده هاي يک سکتور چگونه ميباشد؟
(1زمان جستجو ): (Seek Time
براي قرار گرفتن هد روي سيلندر مورد نظر
(2تاخير چرخشي ): (Rotational Delay
براي قرار گرفتن هد روي سکتور مورد نظر
(3زمان انتقال داده ): (Transfer Time
براي خواندن يا نوشتن داده هاي سکتور
Dr. M. Rahgozar
3-20
File Structure
زمان دسترسي به ديسکهاي سخت
)(Hard Disks Access Time
زمان دسترسي به داده هاي ديسکهاي سخت چگونه ميباشد؟
مثال :ديسکي با مشخصات زير در نظر ميگيريم:
زمان متوسط جستجو = 8ميلي ثانيه
)(Average Seek Time
تاخير متوسط چرخشي = 3ميلي ثانيه ()Average Rotation Time
تاخير چرخشي ماکزيمم = 6ميلي ثانيه ()Maximum Rotation Time
سرعت چرخش = 10000دور در دقيقه )(RPM
(رابطه با قبلي؟)
تعداد سکتورها در هر شيار = 170
اندازه هر سکتور = 512بايت
Dr. M. Rahgozar
3-21
File Structure
زمان دسترسي به ديسکهاي سخت
)(Hard Disks Access Time
مثال ) ادامه… (
سوال ( : )1زمان متوسط براي خواندن يک سکتور؟
زمان انتقال يک سکتور = حاصل تقسيم ) زمان چرخش ( بر )تعداد سکتور در شيار(
زمان انتقال يک سکتور= 0.035 = (60sec/10,000)/170ميلي ثانيه
زمان متوسط خواندن يک سکتور = حاصل جمع:
زمان متوسط جستجو ،
تاخير متوسط چرخشي و
زمان انتقال يک سکتور
زمان متوسط خواندن يک سکتور= 11.035 = 8+3+0.035ميلي ثانيه
Dr. M. Rahgozar
3-22
File Structure
زمان دسترسي به ديسکهاي سخت
)(Hard Disks Access Time
مثال ) ادامه… (
حال فايلي با مشخصات زير را در نظر ميگيريم:
تعداد رکوردها = 34,000
اندازه يک رکورد = 256بايت
تعداد شيارها (غير متوالي؟) = 100
(چرا غير متوالي؟)
سوال ( : )2زمان خواندن فايل با دسترسي Sequential؟
زمان متوسط جستجو = 8ميلي ثانيه
تاخير چرخشي متوسط = 3ميلي ثانيه
زمان انتقال متوسط براي يک شيار= 6=60/10,000ميلي ثانيه
زمان کل براي خواندن شيار = 17=8+3+6ميلي ثانيه
زمان کل براي خواندن فايل = 1.7=17*100ثانيه
Dr. M. Rahgozar
3-23
File Structure
زمان دسترسي به ديسکهاي سخت
)(Hard Disks Access Time
مثال ) ادامه… (
همان مشخصات قبل را در نظر ميگيريم:
تعداد رکوردها = 34,000
اندازه يک رکورد = 256بايت
تعداد شيارها (غير متوالي؟) = 100
(چرا غير متوالي؟)
سوال ( : )3زمان خواندن فايل با دسترسي مستقيم ( )Random؟
زمان متوسط خواندن يک رکورد = زمان متوسط خواندن يک سکتور
زمان متوسط خواندن يک رکورد = 11.035ميلي ثانيه
زمان کل براي خواندن فايل= 371.1 = 34,000 *11.035ثانيه
Dr. M. Rahgozar
3-24
File Structure
(چرا؟)
زمان دسترسي به ديسکهاي سخت
)(Hard Disks Access Time
زمان دسترسي به ديسکها باعث چه مشکالتي ميشود؟
همواره CPUو شبکه ( )Networkمنتظر ديسکها ميباشند!
چه راه حلهايي وجود دارد؟
()Multiprocessing
(چرا؟)
(1پردازنده ) (CPUبه چند کاربر سرويس دهد.
(2فايلهاي خيلي بزرگ روي چند ديسک تقسيم شوند)Disk Striping( .
(چرا؟)
(3استفاده از ديسکهاي RAIDجهت تقسيم هر بلوک داده روي ديسکهاي مختلف.
(4استفاده از ديسکهاي RAMکه رفتار يک ديسک (يا ديسکت) را سيموله مي کنند.
(5استفاده از Disk Cachingبراي جواب دادن سريع به درخواستهاي .I/O
Dr. M. Rahgozar
3-25
File Structure
(چگونه؟)
File Structure
3-26
Dr. M. Rahgozar