کش ( Cache ) خوب است یا بد؟

بحث و گفتگو راجع به قطعات سخت افزاري و رفع اشكال سخت افزاري
موضوع جدید ارسال پست
PcBoyIr
مدیر سایت
مدیر سایت
پست: 1534
تاریخ عضویت: دوشنبه 20 تیر 1384, 12:00 am
محل اقامت: مشهد
تشکر کرده: 1 دفعه
تشکر شده: 2 دفعه
تماس:

کش ( Cache ) خوب است یا بد؟

پست توسط PcBoyIr »

[center]تصویر[/center]



شاید تا به حال بارها کلمه کش ( حافظه Cache ) را به گوش خود شنیده واحتمالا بارها دیده اید که گفته می شود این مدل از پردازنده فول کش است ویا نه Half Cache است . این حافظه اصلا چه کاری انجام می دهد و یا به طورکلی اصلا چه چیزی هست؟ این ها سوالاتی است که بارها از خود پرسیده ایم.آیاکش خوب است ؟
کش یک حافظه بسیار گران قیمت است که حتی درطول مدت چندین سال از ارائه آن بازهم قیمت آن با کاهش رو به رو نشده است.این که کش چه کاری انجام می دهد مورد توجه بسیاری از افرادی است که ازسیستم رایانه ای بهره می برند. همانطور که می دانیم سرعت دسترسی بهاطلاعات در حافظه فرار RAM بسیار پائین تر از سرعت دسترسی به داده ها درCPU است. CPU به دلایل مختلف بسیار سریعتر از تمامی قطعات موجود در یکسیستم سخت افزاری عمل می کند. میلیون ها دیود و ترانزیستور در CPU باعث میشوند تا با سرعتی سرسام آور یک پردازش اطلاعات انجام گیرد ، سرعت RAM وهارد دیسک ها به هیچ وجه قابل مقایسه با سرعت پردازش CPU نیست. در نظربگیریم برای مثال یک جوی آب باریک داریم و یک شیر آب بسیار بزرگ که آببسیار زیادی از آن خارج می شود. اگر شیر آب را تا آخرین مقدار بازکنیم ازجوی آب سر ریز خواهد شد و در این شرایط اگر بخواهیم حتی قطره ای آب هدرنرود می بایست حتما شیر آب را به مقداری تغییر دهیم که با جوی باریکبرابری داشته باشد. این مثال مصداق هارد دیسک ، RAM و پردازنده است. سرعتپردازنده چون بسیار بالاتر ازاجزای دیگر سیستم است مدام باید منتظر بماندتا از همان جوی آب که در رایانه BUS نامیده می شود ، اطلاعات به اجزایمختلف سیستم وارد شوند. پس سرعت پردازش داده ها در پردازنده اصلی بسیاربالاتر از دیگر قطعات سیستم سخت افزاری است.
در این جاست که حافظه نهان کش به داد پردازنده رسیده و باعث می شود تاCPU با پیش بینی حرکات بعدی کاربر تا اندازه زیادی هم به قطعات دیگررسیدگی کند و هم به دستورات کاربر سریعتر پاسخ دهد. کش حافظه ای بسیارسریع است این حافظه با سرعتی فوق تصور ما اطلاعات را در خود نگهداری و درمواقع لازم از آن بهره می برد. پردازنده برای این که سرعت سیستم را تا حدبالایی نگه دارد پس از یک سری کارها ، در حافظه کش آنچه که احتمال می دهددر مرحله بعدی کاربر انجام دهد را نگهداری می کند بدین ترتیب دیگر لازمنیست که از اول همه کارها انجام شود. برای مثال و برای روشن شدن این مطلب، نمونه ای را ذکر می کنیم. فردی برای خوردن یک وعده غذا همیشه برنامهدارد. یعنی روز اول یک نوع ، روز دوم یک نوع دیگر و … و هربار هم تنها بهیک رستوران غذا سفارش می دهد. پس ازگذشت یک مدت رستوران متوجه برنامههفتگی این فرد شده و غذاها را همیشه طبق آمار زودتر آماده می کند. بدینترتیب سرعت رسیدن غذاها به مقصد سریع تر انجام می شود. اما پس از گذشتمدتی نوع غذاها تغییر می کند. علاوه بر انواع قبلی یک سری غذا جدید هماضافه می شود. در این جاست که رستوران باید غذاهای جدید را هم در لیستیدیگر آماده سازد ، این دو به مانند همان کش و دیگر اجزای سیستم عمل میکنند.
[center]تصویر[/center]
دو میز هم به مانند L۱ و L۲ هستند. این که گفتته می شود یک سیستم فولکش است بدین معناست که از هردو L۱ و L۲ بهره می برد و پردازنده ای که تنهاL۱ را دارد پس Half Cache است. پس وجود کش تا حد بسیار زیادی به افزایشسرعت کار سیستم کمک می کند. عدم وجود کش هرچند هم که بهترین سیستم سختافزاری باشد ، اما فقدان آن مطمئنا حس خواهش شد. نکته بعدی در این مورداین که آیا همیشه کش خوب است یا نه بالعکس گاهی مشکل ساز هم می شود. کشگاهی خوب و گاهی بد است. سرعت را افزایش می دهد اما از طرفی هم باعث کرش (Crash ) شدن سیستم می شود و این مورد بیشتر تر Full Cache ها رخ می دهد.نه تنها در سخت افزار بلکه در نرم افزارها هم کش وجود دارد ، در مرورگرمعروف موزیلا کش نیز وجود دارد ، حتما به این مورد برخورد کرده اید کهفایرفاکس Crash می شود ، دلیل این امر پرشدن کش داخلی مرورگر می باشد.تنها مشکلی که کش می تواند ایجاد کند چه در سخت افزار و چه در نرم افزارCrash شدن سیستم است که در سخت افزار با یک ریست کلی سیستم ، به حالتاولیه باز خواهد گشت.
در جای دیگر هم کش مورد استفاده قرار می گیرد و آن هم سیستم CacheServer شرکت های ارائه دهنده سرویس های اینترنتی است. در این سیستم مدیرISP با توجه به زمانی معین آمار سایت هایی که بیشترین بازید را دارند درکش سرور خود قرار داده و بدین ترتیب همان سایت ها بسیار سریعتر برایکاربران بارگذاری خواهند شد. البته این مورد به همین سادگی که گفته شد همنیست.
نتیجه آن که کش یک حافظه بسیار گران قیمت و البته بسیار مفید است کهقادر است تا سرعت عملکرد سیستم را تا حد زیادی افزایش دهد. گاهی مفید وگاهش مشکل ساز است ، اما بودنش بهتر از نبودن آن است.


موضوع جدید ارسال پست

بازگشت به “سخت افزار”