جستجو در محصولات

گالری پروژه های افتر افکت
گالری پروژه های PSD
جستجو در محصولات


تبلیغ بانک ها در صفحات
ربات ساز تلگرام در صفحات
ایمن نیوز در صفحات
.. سیستم ارسال پیامک ..
ذخيره و بازيابي در حافظه هاي جانبي (1)
-(1 Body) 
ذخيره و بازيابي در حافظه هاي جانبي (1)
Visitor 483
Category: دنياي فن آوري

مقدمه

به هر وسيله اي كه توانايي حفظ و نگهداري اطلاعات را داشته باشد به گونه اي كه كاربر بتواند در هر زمان به داده ها ي آن دستيابي ( access ) داشته باشد را حافظه مي گويند .
حافظه ها به دو دسته كلي تقسيم مي شوند :
1- حافظه اوليه (اصلي – درون ماشيني) كه پردازنده جهت اجراي برنامه ها مستقيما با آن سر و كار دارد.
2- حافظه ثانويه ( جانبي- برون ماشين ) كه جهت ضبط اطلاعات فايل ها به كار مي روند .
ما در اين مقاله تنها با حافظه هاي جانبي سر و كار داريم و از يك نظر مي توان گفت سيستم هاي كامپيوتري از دو بخش محيط درون ماشيني و محيط برون ماشيني تشكيل يافته اند . منظور از محيط درون ماشيني پردازنده . حافظه اصلي و عناصر داخلي كامپيوتر است و منظور از محيط درون ماشيني تجهيزات جانبي آن مثل هارد ديسك پرينتر و غيره مي باشد .
ما در اين مقاله با ذخيره سازي اطلاعات بر روي تجهيزات برون ماشيني سر و كار داريم .

ويژگي هاي كلي حافظه

فرار و غير فرار : حافظه هايي كه با رفتن برق اطلاعات آنها از بين مي رود حافظه هاي فرار ( Volatile ) و آنهايي كه با رفتن برق داده هاي خود را حفظ مي كنند غير فرار ( non volatile ) مي باشند و حافظه هاي اصلي اغلب فرار و حافظه هاي جانبي غير فرار مي باشند.
خواندني يا نوشتني : بعضي حافظه ها مثل RAM يا هارد ديسك خواندني نوشتني هستند . ولي بعضي ديگر مثل CD_ROM فقط خواندني هستند . به خواندن اطلاعات از حافظه اصطلاحا واكشي يا fetch گفته مي شود .
آدرس دهي : هر حافظه اي داراي يك شيوه آدرس دهي مي باشد كه به كمك آن خانه هايش دستيابي مي گردد . مثلا حافظه RAM آرايه اي از بايتهاست كه هر كدام يك آدرس ( عدد يكتا ) دارند . يا هارد ديسك به صورت سه جفت عدد ( شماره هد- شماره سيلندر – شماره سكتور ) آدرس دهي مي شوند .
ظرفيت : ظرفيت حافظه بر حسب بيت يا بايت بيان مي گردد .
زمان دستيابي ( Access time ) : از لحظه اي كه دستور خواندن و نوشتن داده مي شود تا هنگامي كه حافظه مورد نظر مورد دستيابي قرار مي گيرد را زمان دستيابي گويند . مثلا زمان دستيابي حافظه RAM حدود 120 نانو ثانيه و زمان دستيابي ديسك حدود 30 ميلي ثانيه است . يعني از اين نظر RAM در حدود 250 برابر سريعتر از ديسك مي باشد . نرخ يا سرعت انتقال ( Transfer rate ): مقدار اطلاعاتي است كه در واحد زمان از حافظه قابل انتقال است و يكي از واحد هاي آن بايت در ثانيه است .

سلسله مراتب حافظه ها :

در كامپيوتر هاي امروزي عموما سلسله مراتبي از حافظه ( مثل cache ,RAM و ديسك ) استفاده مي شود . چند علت براي اين امر عبارت است از :
1- حافظه اصلي RAM در حال حاضر همچنان محدوديت ظرفيتي دارند ( مثلا حدود 256 MB يا 1 GB )
2- فقط بخشي از اطلاعات برنامه هاي در حال اجرا لازم است در حافظه اصلي قرار گيرد و لازم نيست تمام بخشهاي همه برنامه ها به حافظه RAM آورده شود .
3- حافظه هاي سريع گران هستند .
4- اندازه اطلاعاتي كه انسان امروزي زخيره مي كند خيلي زياد است و به صورت تصاعدي نيز زيادتر مي شود . اين حجم عظيم داده ها را نمي توان در حافظه اصلي نگهداري كرد .
5- حافظه هاي درون ماشيني اغلب فرار هستند و داده هاي آنها با رفتن برق از بين مي رود .
6- بسياري از برنامه ها به حافظه اي بيشتر از RAM نياز دارند . در اين حال مثلا از بخشي از ديسك به عنوان حافظه مجازي استفاده مي كنند .
7- هنگامي كه چندين پردازنده مي خواهند به صورت موازي به اطلاعاتي دسترسي داشته باشند مي توان آن اطلاعات را مثلا بر روي ديسك به اشتراك گذاشت.
پس در عمل جهت به كارگيري مزاياي حافظه هاي درون ماشيني ( سرعت زياد ) و برون ماشيني ( ظرفيت بالا و هزينه كم و ماندگار بودن ) تركيبي از آن دو در كامپيوتر ها استفاده كرد .
در ليستي از حافظه كه در زير آمده به ترتيب ظرفيت ها افزايش يافته و سرعت و هزينه ها كاهش مي يابد :
1-ثبات
2-حافظه هاي cache يا نهان
3- حافظه اصلي
4- حافظه فلاش ( Flash )
5 - ديسك مغناطيسي
6- ديسك نوري
7- نوار مغناطيسي

منظور از ذخيره و بازيابي اطلاعات(ساختار فايل)

منظور از ساختار فايل سازماندهي داده ها روي دستگاههاي ذخيره سازي ثانويه است . به عبارت ديگر نحوه ذخيره داده ها در فايل ها و عمليات لازم براي دستيابي به داده ها بر روي حافظه هاي جانبي . بهينه كردن طراحي ساختار فايل ها ممكن است باعث گردد تا برنامه ها صدها بار سريعتر اجرا گردند . امروزه اغلب براي ذخيره و بازيابي از حافظه ديسك استفاده مي گردد و مشكل اصلي در طراحي ساختار فايل زمان نسبتا زيادي است كه براي بازيابي اطلاعات از ديسك لازم است . مهمترين فاكتور در طراحي ساختار فايلها به حداقل رساندن تعداد دستيابي به ديسك و به حداكثر رساندن احتمال وجود اطلاعات مورد نياز در حافظه اصلي است.
در اين طراحي سعي بر آن است كه اطلاعات مورد نياز را در صورت امكان تنها با يك بار مراجعه به ديسك بدست آوريم . زماني كه محتويات فايلها تغيير نمي كند رسيدن به اين هدف چندان سخت نيست ولي هنگامي كه فايلها بر اثر حذف و اضافه كوچك و بزرگ مي شوند حفظ اين ويژگي مشكل مي گردد .
بديهي است كه قبل از بررسي انواع ساختار فايلها لازم است كه شناخت كافي از حافظه هاي مورد نياز براي فايلها را داشته باشيم .
اگر فايلها فقط در حافظه اصلي نگهداري مي شدند نيازي به علم ساختار فايلها نبود . اين نياز از آنجا ناشي مي شود كه زمان دستيابي در حافظه جانبي بسيار بيشتر از زمان دستيابي به حافظه اصلي است و از طرف ديگر زمان دستيابي براي همه داده ها در حافظه جانبي يكسان نمي باشد .

تاريخچه طراحي ساختار فايل

در ابتدا فايلها بر روي رسانه نوار ذخيره مي شدند و بدين دليل دستيابي به صورت ترتيبي بود و زمان دستيابي متناسب با اندازه فايل زياد مي شد . امروزه با گسترش ديسكها از نوارها تنها جهت بايگاني استفاده مي گردد .
يكي از روشهاي بهبود زمان دستيابي استفاده از انديسهايي بود كه به فايلها اضافه مي شدند . بدين ترتيب ليستي از كليدها و يا اشاره گر ها در يك فايل كوچك ذخيره مي شوند كه جستجو در آن با سرعت بيشتري انجام مي پذيرد . اين انديسها ساده مشابه فايل هاي داده اي طبيعي ترتيبي داشته و با رشد فايله انديسها نيز رشد كرده و مديريت آنها مشكل مي گردد .
در دهه 1960 ساختار درختي مطرح و استفاده گرديد . ولي درخت ها با حذف و اضافه شدن ركوردها ممكن است به صورت نا مناسبي رشد كرده و در نتيجه باعث گردد كه جستجوي يك ركورد به دستيابي هاي متعددي به ديسك نياز داشته باشد .
در سال 1963 درخت دودويي خود تنظيم ( AVL ) براي اطلاعات موجود در حافظه ابداع شد . بعد ازآن سعي شد اين ساختار به نحوي براي فايلها نيز استفاده گردد . مشكل اصلي آن بود كه حتي با يك درخت AVL دها دستيابي براي جست و جوي يك ركورد حتي در يك فايل با اندازه متوسط مورد نياز است . ده سال بعد اين مشكل با ابداع درخت B (B-tree ) بر طرف گرديد . هر چند كه سرعت دستيابي درخت B خيلي خوب است ولي دستيابي ترتيبي در آن كارآمد نمي باشد . اين مشكل با اضافه كردن يك ليست پيوندي به سطح پاييني درخت B بر طرف گرديد . تركيب درخت B و ليست پيوندي را درخت B مي گويند . سيستم هاي تجاري زيادي بر مبناي درختهاي B و B + پديد آمدند .
استفاده از درخت B تضمين مي كند كه جستجوي يك ركورد از ميان ميليون ها ركورد تنها با سه يا چهار بار مراجعه به ديسك امكان پذير است . همچنين با استفاده از درخت B با حذف و اضافه ركوردها كارآيي تغيير نمي كند .
با آنكه توانايي جستجوي اطلاعات با 3 يا 4 بار دستيابي خيلي خوب است ولي اگر بخواهيم داده ها را با يك دستيابي بدست آوريم از روش در هم سازي ( hashing ) استفاده مي كنيم . روش درهم سازي براي فايلهايي كه چندان تغيير نمي كنند مناسب است . البته با در هم سازي پويا مي توان اطلاعات را با يك يا حداكثر دو بار دستيابي به ديسك بدست آورد و اين ربطي به اندازه فايل ندارد .

انواع حافظه هاي جانبي

انواع حافظه هاي جانبي را از نظر تكنولوژي ساخت مي توان به چهار دسته زير تقسيم كرد :
1- تكنولوژي الكترو مكانيكي: كارت و نوار منگنه شدني
2- تكنولوژي الكترومغناطيسي : نوار مغناطيسي و ديسك و طبله
3- تكنولوژي الكترو ابتيك : ديسك نوري
4- تكنولوژي مغناطيسي نوري : ديسكهاي MD
در ادامه ويژگي هاي كلي حافظه نوار كاغذي و ديسك نوري و CD و DVD و حافظه هاي مغناطيسي را برسي مي كنيم .

نوار مغناطيسي (Magnetic Tape)

رسانه ايست از جنس نوعي پلاستيک با غشاء مغناطيس شونده بر يک رويه ( فرو مغناطيسي ) و لغزان بر ريل هايي با ابعاد مختلف، ابعاد نوعي از نوار 2500 فوت طول و 2/1 اينچ عرض است . در اندازه هاي ديگر نيز موجود است . اين رسانه ماهيتاً براي پردازش پي در پي رکوردها مورد استفاده قرار مي گيرد . از نظر تکنولوژي ساخت ، به چهار دسته کلي تقسيم مي شود :
1. ريل به ريل
2. نوار کارتريج
3. نوار کاست
4. نوار صوتي تطبيق داده شده با کامپيوتر
دستگاه نوار خوان مجهز است به نوک خواندن / نوشتن که مي تواند اطلاعات را روي نوار ظبط و يا اطلاعات ضبط شده را " حس " کند

نحوه ذخيره سازي داده روي نوار

داده ها به صورت رشته هاي بيتي روي شيارهايي که در سطح نوار وجود دارد ، ذخيره مي شوند . بيت هاي يک کاراکتر ، روي شيارها و در عرض نوار ضبط مي گردند .
از نظر تعداد شيار ، دو نوع نوار رايجتر است : نوار 7 شياره و نوار 9 شياره . يکي از شيارها ، به عنوان شيار کنترل پاريتي به کار مي رود .
در نوار دو نوع بيت پاريتي وجود دارد :
1. بيت پاريتي عرضي يا کاراکتري
2. بيت پاريتي طولي
بيت پاريتي عرضي براي هر کاراکتر و بيت پاريتي طولي ، براي تعدادي کاراکتر مثلاً به ازاء يک بلاک ايجاد مي شود .
داده هاي ذخيره شده روي نوار ، در سطح فيزيکي ، تعدادي رشته بيتي موازي هستند . چنين ديدي از داده ذخيره شده روي سيستم فايل مطرح نيست . به بيان ديگر ، از نظر سيستم فايل ( که خود سطوحي دارد ) داده ها در قالب تقسيمات خاصي ذخيره مي شوند ، هريک با ساختار مشخص ( اين تقسيمات عبارتند از فيلد ، رکورد ، بلاک ، تعدادي بلاک با نام مشخص ، فايل و گروه فايلها . ) توجه داريم که فيلد مي تواند حاوي يک کاراکتر هم باشد .

چگالي نوار Density :

تعداد بيت هاي قابل ضبط در هر اينچ نوار را چگالي گويند . چگالي را با واحد بيت در اينچ (bpi) بيان مي کنند که با توجه به نحوه نشست کاراکترها روي شيارها ، همان بايت در اينچ يا کاراکتر در اينچ است . از جمله چگالي رايج ، 800bpi ,1600bpi است . البته نوار با چگالي 3200bpi , 6250bpi و بيشتر نيز وجود دارد .

گپ

فضايي است بلا استفاده بين دو گروه کاراکتر ضبط شده . کلمه گروه در اينجا هم به رکورد اطلاق مي گردد و هم به بلاک . در صورتي که بين هر دو بلاک باشد به آن گپ بين بلاکها و اگر گپ بين دو رکورد باشد ، به آن گپ بين رکوردها مي گويند .
وجود گپ براي متوقف کردن نوار و يا حرکت دوباره آن لازم است.زيرا براي آنکه نوک خواندن / نوشتن بتواند داده اي ذخيره شده را " حس " کند ، بايد که نوار ، پس از توقف به سرعتي مطلوب و يکنواخت موسوم به سرعت حس برسد ، ودر اين اثناء اين مدت تکه اي از نوار زير نوک R/W مي گذرد ، ضمن اينکه در حين کاهش سرعت حس تا توقف نيز تکه اي از نوار از زير نوک رد مي شود . اين دو تکه نوار همان گپ را تشکيل مي دهند و چون اين قسمت از نوار در حالت توقف – حرکت با سرعت کمتر از سرعت حس طي مي شود ، نمي توان داده اي را در اين قسمت حس کرد و در نتيجه بلا استفاده ( "هرز " ) است .

پارامترهاي نوار

دودسته پارامتر وجود دارد :
1. پارامترهاي ظرفيتي
2. پارامترهاي زماني ( يا وابسته به زمان )
پارامترهاي ظرفيتي عبارتند از :
1. چگالي ( تراکم ) : به واحد بيت در اينچ (BPI)
2. طول نوار : به واحد فوت
با داشتن اين دو پارامتر مي توان ظرفيت اسمي نوار را به دست آورد S=L×D
پارامترهاي زماني عبارتند از :
1. سرعت لغزش نوار به واحد اينچ در ثانيه .
2. نرخ انتقال به واحد بايت در ثانيه ( يا اضعافي از بايت در ثانيه)نرخ انتقال دو نوع است : اسمي و واقعي . نرخ اسمي توسط سازنده اعلام مي شود و نرخ انتقال واقعي قابل محاسبه است .
3. زمان حرکت – توقف به واحد ميلي ثانيه . اين زمان در واقع تفاوت بين زمان طي کردن گپ با سرعت حس و زمان طي کردن گپ در حالت توقف نوار و حرکت دوباره آن تا رسيدن به سرعت حس است .
ادامه دارد ....
ارسال مقاله توسط عضو محترم سايت با نام کاربري : sm1372
Add Comments
Name:
Email:
User Comments:
SecurityCode: Captcha ImageChange Image