• مشکی
  • سفید
  • سبز
  • آبی
  • قرمز
  • نارنجی
  • بنفش
  • طلایی
کد: 62723

پرسش

با سلام
لطفا در موردحافظه های جانبی كامّیوتر
(cache)توضیح بفرمایید.

باتشكر

پاسخ

حافظه و انواع آن در كامپیوتر

حافظه با هدف ذخیره سازی اطلاعات ( دائم ، موقت ) در كامپیوتر استفاده می گردد. انواع متفاوتی از حافظه دركامپیوتر استفاده می شود:

· RAM

· ROM

· Cache

· Dynamic RAM

· Static RAM

· Flash Memory

· Virtual Memory

· Video Memory

· BIOS

استفاده از حافظه صرفا" محدود به كامپیوترهای شخصی نبوده و در دستگاههای متفاوتی نظیر : تلفن های سلولی، PDA ، رادیوهای اتومبیل ، VCR ، تلویزیون و ... نیز در ابعاد وسیعی از آنها استفاده می شود.هر یك از دستگاه های فوق مدل های متفاوتی از حافظه را استفاده می كنند.

مبانی اولیه حافظه

با اینكه می توان واژه " حافظه " را بر هر نوع وسیله ذخیره سازی الكترونیكی اطلاق كرد، ولی اغلب ازاین واژه برای مشخص نمودن حافظه های سریع با قابلیت ذخیره سازی موقت استفاده می شود. در صورتیكه پردازنده مجبور باشد برای بازیابی اطلاعات مورد نیاز خود بصورت دائم از هارد دیسك استفاده كند، قطعا" سرعت عملیات پردازنده ( با آن سرعت بالا) كند خواهد گردید. زمانیكه اطلاعات مورد نیاز پردازنده در حافظه ذخیره گردند، سرعت عملیات پردازنده از بعد دستیابی به داده های مورد نیاز بیشتر خواهد گردید. از حافظه های متعددی به منظور نگهداری موقت اطلاعات استفاده می گردد.





همانگونه كه در شكل فوق مشاهده می گردد ، مجموعه متنوعی ازانواع حافظه ها وجود دارد . پردازنده با توجه به ساختار سلسله مراتبی فوق به آنها دستیابی پیدا خواهد كرد. زمانیكه در سطح حافظه های دائمی نظیر هارد یا حافظه دستگاه هائی نظیر صفحه كلید، اطلاعاتی موجود باشد كه پردازنده قصد استفاده از آنها را داشته باشد ، اطلاعات فوق از طریق حافظه RAM در اختیار پردازنده قرار می گیرند. در ادامه پردازنده، اطلاعات و داده های مورد نیاز خود را در حافظه Cache و دستورالعمل های خاص عملیاتی خود را در رجیسترها ذخیره می نماید.

تمام عناصر سخت افزاری ( پردازنده، هارد دیسك ، حافظه و ...) و عناصر نرم افزاری ( سیستم عامل و...) بصورت یك گروه عملیاتی به كمك یكدیگر وظایف محوله را انجام می دهند . بدون شك در این گروه " حافظه " دارای جایگاهی خاص است . از زمانیكه كامپیوتر روشن تا زمانیكه خاموش می گردد ، پردازنده بصورت پیوسته و دائم از حافظه استفاده می نماید. بلافاصله پس از روشن نمودن كامپیوتر اطلاعات اولیه ( برنامه POST) از حافظه ROM فعال شده و در ادامه وضعیت حافظه از نظر سالم بودن بررسی می گردد ( عملیات سریع خواندن ، نوشتن ) .در مرحله بعد كامپیوتر BIOS را از طریق ROM فعال خواهد كرد. BIOS اطلاعات اولیه و ضروری در رابطه با دستگاه های ذخیره سازی، وضعیت درایوی كه می بایست فرآیند بوت از آنجا آغاز گردد، امنیت و ... را مشخص می كند.
در مرحله بعد سیستم عامل از هارد به درون حافظه RAM استقرار خواهد یافت . بخش های مهم و حیاتی سیستم عامل تا زمانیكه سیستم روشن است در حافظه ماندگار خواهند بود. در ادامه و زمانیكه یك برنامه توسط كاربر فعال می گردد، برنامه فوق در حافظه RAM مستقر خواهد شد. پس از استقرار یك برنامه در حافظه و آغاز سرویس دهی توسط برنامه مورد نظر در صورت ضرورت فایل های مورد نیاز برنامه فوق، در حافظه مستقر خواهند شد و در نهایت زمانی كه به حیات یك برنامه خاتمه داده می شود (Close) یا یك فایل ذخیره می گردد ، اطلاعات بر روی یك رسانه ذخیره سازی دائم ذخیره و در نهایت حافظه از وجود برنامه و فایل های مرتبط ، پاكسازی ! می گردد.

همانگونه كه اشاره گردید در هر زمان كه اطلاعاتی ، مورد نیاز پردازنده باشد، اطلاعات درخواستی در حافظه RAM مستقر شده تا زمینه استفاده از آنان توسط پردازنده فراهم گردد. چرخه درخواست اطلاعات موجود درRAM توسط پردازنده ، پردازش اطلاعات توسط پردازنده و نوشتن اطلاعات جدید در حافظه یك سیكل كاملا" پیوسته بوده و در اكثر كامپیوترها سیكل فوق ممكن است در هر ثانیه میلیون ها مرتبه تكرار گردد.

نیاز به سرعت دلیلی بر وجود حافظه های متنوع

چرا حافظه در كامپیوتر تا بدین میزان متنوع و متفاوت است ؟ در پاسخ می توان به موارد ذیل اشاره نمود:

پردازنده های با سرعت بالا نیازمند دستیابی سریع و آسان به حجم بالائی از داده ها به منظور افزایش بهره وری و كارآئی خود می باشند. در صورتیكه پردازنده قادر به تامین و دستیابی به داده های مورد نیاز در زمان مورد نظر نباشد، می بایست عملیات خود را متوقف و در انتظار تامین داده های مورد نیاز باشد. پردازنده های جدید و با سرعت یك گیگا هرتز به حجم بالائی از داده ها ( میلیارد بایت در هر ثانیه ) نیاز خواهند داشت . پردازنده هائی با سرعت اشاره شده گران قیمت بوده و قطعا" اتلاف زمان مفید آنان مطلوب و قابل قبول نخواهد بود. طراحان كامپیوتر به منظور حل مشكل فوق ایده " لایه بندی حافظه" را مطرح نموده اند. در این راستا از حافظه های گران قیمت با میزان اندك استفاده و از حافظه های ارزان تر در حجم بیشتری استفاده به عمل می آید.
ارزانترین حافظه متداول ، هارد دیسك است . هارد دیسك یك رسانه ذخیره سازی ارزان قیمت با توان ذخیره سازی حجم بالائی از اطلاعات است . با توجه به ارزان بودن فضای ذخیره سازی اطلاعات بر روی هارد، اطلاعات مورد نظر بر روی آنها ذخیره و با استفاده از روش های متفاوتی نظیر : حافظه مجازی می توان به سادگی و به سرعت و بدون نگرانی از فضای فیزیكی حافظه RAM ، از آنها استفاده نمود.

حافظه RAM سطح دستیابی بعدی در ساختار سلسله مراتبی حافظه است . اندازه بیت یك پردازنده نشان دهنده تعداد بایت هائی از حافظه است كه در یك لحظه می توان به آنها دستیابی داشت. مثلا" یك پردازنده شانزده بیتی ، قادر به پردازش دو بایت در هر لحظه است . مگاهرتز واحد سنجش سرعت پردازش در پردازنده ها است و معادل "میلیون در هر ثانیه" است . مثلا" یك كامپیوتر 32 بیتی پنتیوم iii با سرعت 800-MHz ، قادر به پردازش چهار بایت بصورت همزمان و 800 میلیون بار در ثانیه است . حافظه RAM به تنهائی دارای سرعت مناسب برای همسنگ شدن با سرعت پردازنده نیست . به همین دلیل است كه از حافظه های Cache استفاده می گردد. بدیهی است هر اندازه كه سرعت حافظه RAM بالا باشد مطلوب تر خواهد بود.اغلب تراشه های مربوطه امروزه دارای سرعتی بین 50 تا 70 Nanoseconds می باشند. سرعت خواندن یا نوشتن در حافظه ارتباط مستقیم با نوع حافظه استفاده شده دارد .در این راستا ممكن است از حافظه های DRAM,SDRAM,RAMBUS استفاده گردد. سرعت RAM توسط پهنا و سرعت Bus كنترل می گردد. پهنای Bus ، تعداد بایتی كه می تواند بطور همزمان برای پردازنده ارسال گردد را مشخص و سرعت BUS به تعداد دفعاتی كه می توان یك گروه از بیت ها را در هر ثانیه ارسال كرد اطلاق می گردد. سیكل منظم حركت داده ها از حافظه به سمت پردازنده را Bus Cycle می گویند. مثلا" یك Bus با وضعیت : 100MHz و 32 بیت، بصورت تئوری قادر به ارسال چهار بایت به پردازنده و یكصد میلیون مرتبه در هر ثانیه است . در حالیكه یك BUS شانرده بیتی 66MHZ بصورت تئوری قادر به ارسال دو بایت و 66 میلیون مرتبه در هر ثانیه است . با توجه به مثال فوق مشاهده می گردد كه با تغییر پهنای BUS از شانزده به سی و دو و سرعت از 66MHz به 100MHz سرعت ارسال داده برای پردازنده سه برابر گردید.

رجیستر و Cache

با توجه به سرعت بسیار بالای پردازنده حتی در صورت استفاده از Bus عریض وسریع همچنان مدت زمانی طول خواهد كشید تا داده ها از حافظه RAM برای پردازنده ارسال گردند. Cache با این هدف طراحی شده است كه داده های مورد نیاز پردازنده را كه احتمال استفاده از آنان بیشتر است ، در دسترس بیشتری قرار دهد . عملیات فوق از طریق بكارگیری مقدار اندكی از حافظه Cache كه Primary یا Level 1 نامیده می شود صورت می پذیرد. ظرفیت حافظه های فوق بسیار اندك بوده و از دو كیلو بایت تا شصت و چهار كیلو بایت را شامل می گردد. نوع دوم Cache كه Secodray یا level 2 نامیده می شود بر روی یك كارت حافظه و در مجاورت پردازنده قرار می گیرد. این نوع Cache دارای یك ارتباط مستقیم با پردازنده است. یك مدار كنترل كننده اختصاصی بر روی برد اصلی كه " كنترل كننده L2 " نامیده می شود مسئولیت عملیات مربوطه را برعهده خواهد گرفت . با توجه به نوع پردازنده ، اندازه حافظه فوق متغیر بوده و دارای دامنه ای بین 256Kb تا 2MB است. برخی از پردازنده های با كارائی بالا اخیرا" این نوع Cache را به عنوان جزئی جداناپذیر در كنار خود دارند. ( بخشی از تراشه پردازنده ) در این نوع پردازنده ها با توجه به اینكه Cache بخشی از پردازنده محسوب می گردد، اندازه آن متغیر بوده و به عنوان یكی از مهمترین شاخص ها در كارائی پردازنده مطرح است.

نوع دیگری از RAM با نام SRAM ( حافظ های با دستیابی تصادفی ایستا ) نیز وجود داشته كه در آغاز برای Cache استفاده می گردید. این نوع حافظه ها از چندین ترانزیستور ( معمولا" چهار تا شش ) برای هر یك از سلول های حافظه خود استفاده می نمایند. حافظه های فوق دارای مجموعه ای از فلیپ فلاپ ها با دو وضعیت خواهند بود. بنابراین حافظه های فوق قادر به بازخوانی اطلاعات بصورت پیوسته نظیر حافظه های DRAM نخواهند بود. هر یك از سلول های حافظه مادامیكه منبع تامین انرژی آنها فعال (On) باشد داده های خود را ذخیره نگاه خواهند داشت . در این حالت ضرورتی به بازخوانی اطلاعات بصورت پریودیك نخواهد بود . سرعت حافظه های فوق بسیار بالا است ، ولی به دلیل قیمت بالا ، در حال حاضر بعنوان جایگزینی استاندارد برای حافظه های RAM مطرح نمی باشند.

انواع حافظه

حافظه ها را می توان بر اساس شاخص های متفاوتی تقسیم بندی كرد . Volatile و Nonvolatile نمونه ای از این تقسیم بندی ها است . حافظه های volatile بلافاصله پس از خاموش شدن سیستم اطلاعات خود را از دست می دهند. و همواره برای نگهداری اطلاعات خود به منبع تامین انرژی نیاز خواهند داشت . اغلب حافظه های RAM در این گروه قرار می گیرند. حافظه های Nonvolatile داده های خود را همچنان پس از خاموش شدن سیستم حفظ خواهند كرد. حافظه ROM نمونه ای از این نوع حافظه ها است .

مشاور : گلچين فر | پرسش : پنج شنبه 17/2/1383 | پاسخ : يکشنبه 27/2/1383 | | | 0 سال | رايانه | تعداد مشاهده: 75 بار

تگ ها :

UserName