270 likes | 386 Views
Lecture 3 A Secondary Storage Device: Magnetic Disk (section 3.1). حافظه ها ي ثانوي Secondary Storage Devices. انواع مختلف حافظه ها ي ثانوي کدامند؟ حافظه هاي با دسترسي مستقيم (Direct Access Devices) ديسکهاي مغناطيسي (Magnetic Disks) ديسکهاي سخت : (Hard Disks) ظرفيت بالا
E N D
Lecture 3A Secondary Storage Device:Magnetic Disk (section 3.1) Dr. M. Rahgozar
حافظه هايثانويSecondary Storage Devices انواع مختلف حافظه هايثانوي کدامند؟ • حافظههايبادسترسيمستقيم (Direct Access Devices) • ديسکهايمغناطيسي (Magnetic Disks) • ديسکهايسخت : (Hard Disks) ظرفيتبالا • ديسکتها : (Floppy Disks) ظرفيتپايينوسرعتکم • ديسکهاينوري ) ياليزري ( يا CD-ROM : ظرفيتخيليبالا • حافظههايبادسترسيسريال (Sequential Access Devices) • نوارهايمغناطيسي : (Magnetic Tapes)دسترسي Sequential سريع Dr. M. Rahgozar
مقايسه انواع حافظه هاComparing Storage Devices مقايسه انواع حافظه ها از نظر سرعت و هزينه چگونه ميباشد؟ (هزينه؟)چه نوعحافظه برای چهحجم از داده ها مناسب ميباشد؟ (حجم؟) سرعت بالا - هزينه زياد - احجام کم داده سرعت کم – هزينه پايين - احجام بالاي داده Dr. M. Rahgozar
يک حافظه ثانوي:ديسک مغناطيسي(Magnetic Disk) Dr. M. Rahgozar
ساختارديسکهاي سخت (Hard Disks) ساختارديسکهاي سختچگونه ميباشد؟ • مجموعهايازصفحاتمغناطيسيسوارشدهروييکمحورکهبهوسيلهتعداديهد(Head)بهطورهمزمانخواندهيانوشتهميشوند. Dr. M. Rahgozar
ساختارديسکهاي سخت (Hard Disks) ساختارديسکهاي سختچگونه ميباشد؟ • مجموعهايازصفحاتمغناطيسيسوارشدهروييکمحورکهبهوسيلهتعداديهد(Head)بهطورهمزمانخواندهيانوشتهميشوند. Dr. M. Rahgozar
tracks sector ساختارديسکهاي سخت (Hard Disks) شيار(Track) چيست؟ • هرصفحهبهچندينشياربصورتدايرههايمتحدالمرکزتقسيمميشوند. بخش(Sector) چيست؟ • هرشياربهتعداديبخشکهکوچکترينواحدآدرسدهي (addressable units) ميباشندتقسيمميشود. سيلندر (Cylinder) چيست؟ • شيارهايصفحاتمجاورتشکيليکسيلندرمجازيميدهندکهبطورهمزمانبوسيلهمجموعههدهاقابلخواندنيانوشتنميباشند. Dr. M. Rahgozar
tracks sector ساختارديسکهاي سخت(Hard Disks) ساختارديسکهاي سخت (Hard Disks)چگونه ميباشد؟ • تعدادسيلندرها ؟ =تعدادشيارهادريکصفحه • ظرفيتهرشيار؟ =تعدادسکتوردرشيار * تعدادبايتدرسکتور • ظرفيتهرسيلندر؟ =تعدادسطوحمغناطيسي * ظرفيتهرشيار • ظرفيتديسک؟ =تعدادسيلندرها * ظرفيتهرسيلندر Dr. M. Rahgozar
tracks sector يک حافظه ثانوي: ديسک مغناطيسي(Magnetic Disk) مثال: • فايليباتعداد50,000رکورد256بايتيدرنظرميگيريم. • ديسکيباسکتورهاي512بايتي،شيارهاي63سکتوريوسيلندرهاي16شياريبهتعداد4092درنظرميگيريم.(تعداد صفحات؟) سوال: چندسيلندربراي نگاهدارياينفايللازمميباشد؟ • تعدادرکورددرهرشيار 126 = 2 * 63 = • تعدادرکورددرهرسيلندر 2016 = 16 * 126 = • تعدادسيلندرلازم 24.8 =50000 / 2016 = )اگرديسکفضايآزادبااينتعدادسيلندربطورمتوالينداشتهباشد ؟) Dr. M. Rahgozar
ساختارديسکهاي سخت(Hard Disks) انواعسازماندهيشيارهاروي ديسکهاي سخت چگونه ميباشد؟ • سازماندهيشيارهابرحسبسکتور • سازماندهيشيارهابرحسببلوک (ديسکهاي؟) نوع اول: سازماندهيشيارهابرحسبسکتور: • هرشياربهچندبخشمساويبهنامسکتورتقسيمميشود. • سکتورهاکوچکترينواحدقابلآدرسدهيرويشيارميباشند. • شمارهگذاريسکتورهاممکناستبطورمتناوبباشد!) چرا؟( Dr. M. Rahgozar
نوع اول: سازماندهيشيارهابرحسبسکتور شماره گذاري سکتورها چگونه است؟ چرا شماره گذاري سکتورها ممکن است بطورمتناوب باشد؟ Dr. M. Rahgozar
نوع اول: سازماندهيشيارهابرحسبسکتور کلاستر (Cluster)چيست ؟ • تعداديمشخصوثابتازسکتورهايمتواليميباشد.(منطقا متوالي؟) • کهبوسيلهFileManagerخوانده،نوشته،رزروياحذفميشود. (چه تعداد؟) (کجا تعيين ميشود؟) قسمت(Extent) چيست؟ • تعداديکلاسترمتوالي)منطقا؟(کهبطوريکجابراييکفايلرزروشدهباشند. • يکextentميتواندشاملچندشيارياحتيچندسيلندرمتوالينيزباشد. (چه تعداد؟) (کجا تعيين ميشود؟) Dr. M. Rahgozar
نوع اول: سازماندهيشيارهابرحسبسکتور ناپيوستگي (Fragmentation) چيست؟ • تقسيمفضايديسکبهاجزاءغيرقابلاستفاده... چگونه ناپيوستگيايجاد ميشود؟ • ناهمخوانيطولرکوردهاييکفايلباطولسکتورهايديسک… • درصورتيکهنخواهيمکهيکرکوردرويدوسکتورتقسيمشدهباشد! • مثال: • اگر طولرکورد300و • طولسکتور512باشد • برايهررکورد212بايتبياستفادهخواهدماند . Dr. M. Rahgozar
نوع اول: سازماندهيشيارهابرحسبسکتور چگونه ناپيوستگي ايجاد ميشود؟ (ادامه...) • ناهمخوانيطولفايلباطولکلاسترها ... • ممکناستآخرينکلاسترفايلفضايخاليداشتهباشد. • مثال: • اگرفايليبهطوليکبايتو • هرکلاستربرابر با سهسکتور512بايتي باشد، • دراينصورت1535بايتازفضايرزروشدهبياستفاده خواهد ماند. Dr. M. Rahgozar
ساختارديسکهاي سخت (Hard Disks) نوع دوم: سازماندهيشيارهابرحسببلوک: • هرشياربهچندبخشبهنامبلوکتقسيمميشود. • بلوکهاهيچربطيباسکتورهاندارند! (چرا؟) • تعدادرکوردهادرهربلوک را فاکتور بلوک (BlockingFactor) ميناميم. • هربلوکشاملچندقسمت(subblock)ميباشد: • : Count Sub Block حاويطولبلوکبرحسببايت. • : Key subblock حاويکليددسترسي (Hard) بهبلوک. • : Data subblock حاويدادههايبلوک. Dr. M. Rahgozar
ساختارديسکهاي سخت(Hard Disks) اطلاعاتسربار(Non Data Overhead) چيست؟ • انواع دادههايمخصوصسيستم مديريت ديسک ... • که ربطي به داده هاي فايلها ندارند. اطلاعاتسربار درديسکهايسکتوري کدامند؟ • آدرسسکتور،آدرسشيار،شرطصحتسکتور (Condition) • ونيزفضايخالي (Gap) بيندوسکتور. اطلاعاتسربار درديسکهايبلوکي کدامند؟ • زيربلوکهايغيردادهاي(Count وKEY) • ونيزفضايخالي (Gap) بينبلوکها. Dr. M. Rahgozar
اطلاعاتسربار(Non Data Overhead) مثال: • يکديسکبلوکيباشيارهاي20,000بايتيوبا300بايتاطلاعاتسرباربرهربلوکدرنظرميگيريم، • تعدادرکوردهاي100بايتيدرهرشياررابرايدو حالت مختلفحسابميکنيم: حالتاول: اگر هربلوک حاوي10 رکورد باشد: • فاکتوربلوک10 = • دادههايهربلوک (10*100 ) = 1000 = • اطلاعاتسربار300 = • تعدادبلوکدرهرشيار15 = 15.38 = 20000 / 1300 = • تعدادرکورددرهرشيار150 = (15*10) = (Fragmentation rate?) Dr. M. Rahgozar
اطلاعاتسربار(Non Data Overhead) مثال (ادامه...): • يکديسکبلوکيباشيارهاي20,000بايتيوبا300بايتاطلاعاتسرباربرهربلوکدرنظرميگيريم، • تعدادرکوردهاي100بايتيدرهرشياررابرايدو حالت مختلفحسابميکنيم: حالتدوم: اگرهربلوک حاوي60 رکورد باشد: • فاکتوربلوک60 = • دادههايهربلوک6000 = • اطلاعاتسربار300 = • تعدادبلوکدرهرشيار3 = 3.17 = 20000 / 6300 = • تعدادرکورددرهرشيار180 = 3 * 60 = (Fragmentation rate?) Dr. M. Rahgozar
زمان دسترسي به ديسکهاي سخت(Hard Disks Access Time) زماندسترسيبهدادههايديسکهاي سخت چگونه ميباشد؟ زماندسترسيبهداده هاي يک سکتور چگونه ميباشد؟ • زمانجستجو : (SeekTime) • برايقرار گرفتن هد رويسيلندرموردنظر • تاخيرچرخشي : (RotationalDelay) • برايقرار گرفتن هد رويسکتورموردنظر • زمانانتقالداده : (TransferTime) • برايخواندنيانوشتنداده هاي سکتور Dr. M. Rahgozar
زمان دسترسي به ديسکهاي سخت(Hard Disks Access Time) زماندسترسيبهداده هايديسکهاي سخت چگونه ميباشد؟ مثال:ديسکيبامشخصاتزيردرنظرميگيريم: • زمانمتوسطجستجو8 = ميليثانيه(Average Seek Time) • تاخيرمتوسطچرخشي = 3ميليثانيه(AverageRotation Time) • تاخيرچرخشيماکزيمم6 = ميليثانيه(Maximum Rotation Time) • سرعتچرخش10000 = دوردردقيقه(RPM)(رابطه با قبلي؟) • تعدادسکتورهادرهرشيار = 170 • اندازه هرسکتور512 = بايت Dr. M. Rahgozar
زمان دسترسي به ديسکهاي سخت(Hard Disks Access Time) مثال ) ادامه( … سوال (1): زمانمتوسطبرايخواندنيکسکتور؟ • زمانانتقاليکسکتور = حاصلتقسيم )زمانچرخش (بر) تعدادسکتوردرشيار( • زمانانتقاليکسکتور0.035 = (60sec/10,000)/170 =ميليثانيه • زمانمتوسطخواندنيکسکتور= حاصل جمع: • زمانمتوسطجستجو ، • تاخيرمتوسطچرخشيو • زمانانتقاليکسکتور • زمانمتوسطخواندنيکسکتور11.035 = 8+3+0.035 =ميليثانيه Dr. M. Rahgozar
زمان دسترسي به ديسکهاي سخت(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
زمان دسترسي به ديسکهاي سخت(Hard Disks Access Time) مثال ) ادامه( … • فايلي با مشخصاتزيررادرنظرميگيريم: • تعدادرکوردها34,000 = • اندازهيکرکورد256 = بايت • تعدادشيارها(غيرمتوالي؟)100 =(چرا غيرمتوالي؟) سوال (3): زمانخواندن فايل با دسترسي مستقيم (Random) ؟ • زمانمتوسطخواندنيکرکورد= زمانمتوسطخواندنيکسکتور(چرا؟) • زمانمتوسطخواندنيکرکورد11.035 = ميليثانيه • زمانکلبرايخواندنفايل371.1 = 34,000 *11.035 =ثانيه Dr. M. Rahgozar
زمان دسترسي به ديسکهاي سخت(Hard Disks Access Time) زماندسترسيبهديسکها باعث چه مشکلاتي ميشود؟ • هموارهCPUوشبکه (Network)منتظرديسکهاميباشند! چهراهحلهايي وجود دارد؟ • پردازنده (CPU) به چند کاربرسرويسدهد. (Multiprocessing) (چرا؟) • فايلهايخيليبزرگرويچندديسکتقسيمشوند . (DiskStriping) (چرا؟) • استفاده از ديسکهايRAID جهت تقسيمهربلوکدادهرويديسکهاي مختلف. • استفاده از ديسکهايRAMکهرفتاريکديسکياديسکتراسيمولهميکنند . • استفاده از DiskCachingبرايجوابدادنسريعبهدرخواستهايI/O. (چگونه؟) Dr. M. Rahgozar