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

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


تبلیغ بانک ها در صفحات
ربات ساز تلگرام در صفحات
ایمن نیوز در صفحات
.. سیستم ارسال پیامک ..
حافظه Cache
-(2 Body) 
حافظه Cache
Visitor 492
Category: دنياي فن آوري
اگر تا کنون براي خود کامپيوتري تهيه کرده باشيد ، واژه " Cache" براي شما آشنا خواهد بود. کامپيوترهاي جديد داراي Cache از نوع L1 و L2 مي باشند. شايد در هنگام خريد يک کامپيوتر از طرف دوستانتان توصيه هائي به شما شده باشد مثلا" : " سعي کن از تراشه هاي Celeron استفاده نکني چون داراي Cache نمي باشند! "
Cache يک مفهوم کامپيوتري است که بر روي هر نوع کامپيوتر با يک شکل خاص وجود دارد. حافظه هاي Cache ، نرم افزارهاي با قابليت Cache هارد ديسک و صفحات Cache همه بنوعي از مفهوم Caching استفاده مي نمايند. حافظه مجازي که توسط سيستم هاي عامل ارائه مي گردد نيز از مفهوم فوق استفاده مي نمايد.

مباني Caching

Caching يک تکنولوژي استفاده شده براي زير سيستم هاي حافظه ، در کامپيوتر است . مهمترين هدف يک Cache افزايش سرعت و عملکرد کامپيوتر بدون تحميل هزينه هاي اضافي براي تهيه سيستم است . با استفاده از Cache عمليات کاربران با سرعت بيشتري انجام خواهد شد.
کتابداري را در نظر بگيريد که در يک کتابخانه مسئول تحويل کتاب به متقاضيان است . فرض کنيد در سيستم فوق ( درخواست و تحويل کتاب ) از مفهوم Cache استفاده نمي گردد. اولين متقاصي کتابي را درخواست مي نمايد( فرض شده است که متقاضي خود نمي تواند مستقيما" کتاب مورد نظر را از قفسه مربوطه ،بردارد) ، کتابدار، کتاب مورد نظر را از قفسه مربوطه پيدا و در ادامه آن را تحويل متقاضي مي نمايد. متقاضي پس از 90ساعاتي مراجعه و کتاب را تحويل مي دهد. کتابدار، کتاب تحويلي را مجددا" در قفسه مربوطه قرار مي دهد. پس از لحظاتي يک متقاضي ديگر مراجعه و همان کتاب قبلي را درخواست مي نمايد ، کتابدار مجددا" مي بايست به بخش مربوطه در کتابخانه مراجعه و پس از بازيابي کتاب ، آن را در اختيار متقاضي دوم قرار دهد.همانگونه که ملاحظه مي گردد ، کتابدار مکلف است براي تحويل هر کتاب ( ولو کتاب هائي که فرکانس استفاده از آنان توسط متقاضيان زياد باشد ) به بخش مربوطه مراجعه و پس از يافتن کتاب آن را در اختيار متقاضيان قرار دهد. آيا روشي وجود دارد که با استناد به آن بتوان عملکرد و کارآئي کتابدار را بهبود بخشيد ؟
در پاسخ به سوال فوق مي توان با ايجاد يک سيستم Cache براي کتابدار ، کارآئي آن را افزايش داد. فرض کنيد بخشي را با ظرفيت حداکثر ده کتاب در مجاورت ( نزديکي ) کتابدار آماده نمائيم . کتاب هائي که توسط متقاضيان برگردانده مي شود، در بخش فوق ذخيره خواهند شد. مثال فوق را با در نظر گرفتن سيستم Cache ايجاد شده براي کتابدار مجددا" دنبال مي نمائيم . در ابتداي فعاليت روزانه ، بخش Cache خالي بوده و هنوز در آن کتابي قرار نگرفته است . اولين متفقاصي مراجعه و کتابي را درخواست مي نمايد . کتابدار مي بايست به بخش مربوطه مراجعه و کتاب را از قفسه مربوطه براشته و در اختيار متقاضي قرار دهد. متقاضي پس از تحويل کتاب ، چند ساعت بعد مراجعه و کتاب را تجويل کتابدار خواهد داد. کتابدار، کتاب تحويلي را در بخش پيش بيني شده براي Cache قرار مي دهد. لحظاتي بعد متقاضي ديگر مراجعه و درخواست همان کتاب را مي نمايد .کتابدار در ابتدا بخش مربوط به Cache را جستجو و در صورت يافتن کتاب ، آن را به متقاضي تحويل خواهد داد. در اين حالت ضرورتي به مراجعه کتابدار به بخش و قفسه هاي مربوطه نخواهد بود. در روش فوق زمان تحويل کتاب به متقاضي بهبود چشمگيري پيدا خواهد کرد. در صورتيکه کتاب درخواستي توسط متقاضي در بخش Cache کتابخانه نباشد ، چه اتفاقي خواهد افتاد؟ در ابتدا مدت زماني صرف خواهد شد که کتابدار به اين اطمينان برسد که کتاب درخواستي در بخش Cache موجود نمي باشد ( جستجو) يکي از چالش هاي اصلي در رابطه با طراحي Cache به حداقل رساندن زمان جستجو در Cache است .سخت افزارهاي جديد ، زمان فوق را به صفر نزديک کرده اند. پس از حصول اطمينان از عدم وجود کتاب در بخش Cache ، کتابدار مي بايست با مراجعه به بخش مربوطه آن را انتخاب و در ادامه در اختيار متقاضي قرار دهد.
با توجه به مثال فوق ، چندين نکته مهم در رابطه با Cache استنباط مي گردد:
• تکنولوژي Cache ، استفاده از حافظه هاي سريع ولي کوچک ، به منظور افزايش سرعت يک حافظه کند ولي با حجم بالا است
• زمانيکه از Cache استفاده مي گردد ، در ابتدا مي بايست محتويات آن به منظور يافتن اطلاعات مورد نظر بررسي گردد. فرآيند فوق را Cache hit مي گويند. در صورتيکه اطلاعات مورد نظر در Cache موجود نباشند (Cache miss) ، کامپيوتر مي بايست در انتظار تامين داده هاي خود از حافظه اصلي سيستم باشد ( حافظه اي کند ولي با حجم بالا )
• اندازه Cache محدود بوده وسعي مي گردد که ظرفيت فوق حتي المقدور زياد باشد ، ولي بهرحال اندازه آن نسبت به رسانه هاي ذخيره سازي ديگر بسيار کم است .
• اين امکان وجود خواهد داشت که از چندين لايه Cache استفاده گردد.

Cache در کامپيوتر

کامپيوتر، ماشيني است که زمان انجام کارها توسط آن با واحدهاي خيلي کوچک اندازه گيري مي گردد.زمانيکه ريزپردازنده قصد دستيابي به حافظه اصلي را داشته باشد، مي بايست مدت زماني معادل 60 نانوثانيه را براي اين کار در نظر بگيرد. سرعت فوق بسيار بالا است ولي سرعت ريزپردازنده بمراتب بيشتر است . ريزپردازنده قادر به داشتن سيکل هائي به اندازه دو نانوثانيه است . تفاوت سرعت بين پردازنده و حافظه کاملا" مشهود بوده و قطعا" رضايت پردازنده در اين خصوص کسب نخواهد شد. پردازنده مي بايست تاوان کند بودن حافظه را خود بپردازد . انتظار پردازنده و هرز رفتن زمان مفيد وي کوچکترين تاواني است که مي بايست پردازنده پذيراي آن باشد.
به منظور حل مشکل فوق ، فرض کنيد از يک نوع حاص حافظه، با ظرفيت کم ولي با سرعت بالا ( 30 نانوثانيه ) ، استفاده گردد . سرعت دستيابي به حافظه فوق دو مرتبه سريعتر نسبت به حافظه اصلي است .اين نوع حافظه راL2 Cache مي نامند. فرض کنيد از يک حافظه بمراتب سريعتر ولي با حجم کمتر استفاده و آن را مستقيما" با پردازنده اصلي درگير نمود. سرعت دستيابي به حافظه فوق مي بايست در حد و اندازه سرعت پردازنده باشد .اين نوع حافظه ها را L1 Cache مي گويند. در کامپيوتر از زيرسيستمهاي متفاوتي استفاده مي گردد.از Cache مي توان در رابطه با اکثر زير سيستمهاي فوق استفاده تا کارآئي آنان افزايش يابد.

تکنولوژي Cache

يکي از سوالاتي که ممکن است در ذهن خواننده اين بخش خطور پيدا کند اين است که " چرا تمام حافظه کامپيوترها از نوع L1 Cache نمي باشند تا ديگر ضرورتي به استفاده از Cache وجود نداشته باشد؟" در پاسخ مي بايست گفت که اشکالي ندارد وهمه چيز هم بخوبي کار خواهد کرد ولي قيمت کامپيوتر بطرز قابل ملاحظه اي افزايش خواهد يافت . ايده Cache ، استفاده از يک مقدار کم حافظه ولي با سرعت بالا( قيمت بالا) براي افزايش سرعت و کارآئي ميزان زيادي حافظه ولي با سرعت پايين ( قيمت ارزان ) است .
در طراحي يک کامپيوتر هدف فراهم کردن شرايط لازم براي فعاليت پردازنده با حداکثر توان و در سريعترين زمان است . يک تراشه 500 مگاهرتزي ، در يک ثانيه پانصد ميليون مرتبه سيکل خود را خواهد داشت ( هر سيکل در دونانوثانيه ) . بدون استفاده از L1 و L2 Cache ، دستيابي به حافظه حدودا" 60 نانوثانيه طول خواهد کشيد. بهرحال استفاده از Cache اثرات مثبت خود را بدنبال داشته و باعث بهبود کارآئي پردازنده مي گردد.اگر مقدار L2 Cache معادل 256 کيلو بايت و ظرفيت حافظه اصلي معادل 64 مگابايت باشد ، 256000 بايت مربوط به Cache با استفاده از روش هاي موجود قادر به Cache نمودن 64000000 بايت حافظه اصلي خواهند بود.
Add Comments
Name:
Email:
User Comments:
SecurityCode: Captcha ImageChange Image