حافظه کش چیست؟ معرفی کاربردها
حافظه پنهان یا کش، یکی از مفاهیم کلیدی در علوم کامپیوتر است که به طور گسترده در زندگی روزمره ما کاربرد دارد. آیا تا به حال فکر کردهاید که چرا برخی سایتها زودتر از بقیه باز میشوند؟ یا چرا اجرای مجدد برنامهای که قبلا از آن استفاده کردهاید، سریعتر انجام میشود؟ پاسخ این سوالات به حافظه نهان رایانش برمیگردد. اگر به طور دقیق نمیدانید که حافظه پنهان چیست و چه کاری انجام میدهد، تا پایان این مطلب با ما همراه باشید. در ادامه توضیح میدهیم که حافظه کش چیست و انواع، عملکرد، مزایا، معایب آن کدام است.
حافظه کش چیست؟
حافظه نهان (کش) یک فضای ذخیره سازی موقت است که با ذخیره فایلها، تصاویر و متن، سرعت بارگذاری وب سایتها و برنامهها را به طور چشمگیری افزایش میدهد. کش در اولین بازدید از یک صفحه یا برنامه، اطلاعات آن را ذخیره میکند و در بازدیدهای بعدی به جای دانلود مجدد از این دادههای ذخیره شده استفاده مینماید. حافظه کش که بین پردازنده (CPU) و حافظه اصلی (RAM) قرار دارد، به عنوان یک بافر عمل کرده و با سرعت بالای خود، زمان دسترسی پردازنده به دادهها را کاهش میدهد. این حافظه، دادهها و دستورالعملهای پرکاربرد را ذخیره میکند تا پردازنده نیاز کمتری به دسترسی مکرر به حافظه اصلی داشته باشد. در نتیجه، سرعت کلی سیستم بهبود مییابد. پردازنده قبل از مراجعه به حافظه اصلی، ابتدا حافظه کش را بررسی میکند و در صورت وجود داده مورد نظر از آن استفاده مینماید.
نحوه عملکرد حافظه کش
حالا که متوجه شدید که حافظه cache چیست، بد نیست با نحوه عملکرد آن نیز آشنا شوید. حافظه پنهان با ذخیره دادههای پرکاربرد، سرعت دسترسی به آنها را بالا میبرد. نحوه عملکرد آن به بیان ساده از این قرار است:
دسترسی به داده: هنگامی که پردازنده (CPU) به دادهای نیاز دارد، ابتدا حافظه پنهان (کش) را بررسی میکند. یعنی قبل از آنکه به حافظه اصلی یا RAM مراجعه کند، وجود آن داده را در حافظه کش بررسی مینماید.
ضربه کش (Cache Hit): اگر داده مورد نظر در حافظه پنهان وجود داشت، فوراً به آن دسترسی پیدا میکند. این وضعیت به بازیابی سریع منجر میشود (ضربه کش)؛ یعنی پردازنده به سرعت آن را پیدا میکند.
خطای کش (Cache Miss): پردازنده در صورت عدم وجود داده مورد نظر در کش، آن را از حافظه اصلی (RAM) واکشی میکند و یک کپی از آن را برای دسترسیهای بعدی در حافظه پنهان ذخیره مینماید (خطای کش).
caching چیست؟
به فرآیند ذخیره نسخههای کپی از فایلها در حافظه پنهان یا محل ذخیره موقت به منظور دسترسی سریعتر، کشینگ یا کش کردن گفته میشود. فرض کنید شما یک کتابخانه بزرگ دارید و برای آنکه هر بار مجبور نشوید برای پیدا کردن کتابهای مورد نظرتان در قفسههای متعدد وقت بگذارید، چند کتاب پرکاربرد را روی میز کارتان میگذارید. این کار باعث میشود هر وقت به این کتابها نیاز داشتید، سریعتر به آنها دسترسی پیدا کنید. کشینگ هم دقیقاً همین کار را برای کامپیوترها و دستگاههای دیجیتال انجام میدهد.
کاربردهای حافظه کش چیست؟
شاید بپرسید که کاربردهای حافظه کش چیست و در چه جاهایی از آن استفاده میشود. حافظه پنهان (کش) یک فناوری قدرتمند است که در زمینههای مختلفی مورد استفاده قرار میگیرد. کاربردهای آن به قدری گسترده است که تقریباً در هر دستگاه دیجیتالی که استفاده میکنیم، ردپایی از آن دیده میشود. در ادامه به بررسی رایجترین کاربردهای حافظه پنهان در دنیای امروز میپردازیم.
سخت افزار و نرم افزار: حافظه پنهان هم در سخت افزار و هم در نرم افزار دستگاههای شما وجود دارد. به عنوان مثال در سختافزار کامپیوتر، واحد پردازش مرکزی (CPU) دارای حافظه پنهانی است که به بارگذاری سریعتر برنامهها و فایلهای پرکاربرد کمک میکند. هر نرم افزار روی کامپیوتر نیز حافظه پنهان خود را دارد. این حافظه پنهان به نرم افزار اجازه میدهد تا بدون نیاز به دانلود مجدد اطلاعات، سریعتر بارگذاری و اجرا شود.
مرورگرهای وب: مرورگرهای وب، نرم افزارهایی هستند که به شما امکان میدهند به راحتی در اینترنت گشت و گذار کنید. هر مرورگر وب دارای حافظه پنهانی است که اطلاعات مهمی مانند کوکیهای وب سایت، تصاویر، جاوا اسکریپت و فایلهای HTML را ذخیره میکند. هر یک از این موارد ذخیره شده به شما کمک میکند صفحات وب را سریعتر بارگذاری کنید. برای مثال اگر از یک فروشگاه آنلاین بازدید کنید، حافظه پنهان تصاویر محصولات مشاهده شده را ذخیره میکند. بنابراین صفحه در بازدید بعدی سریعتر بارگذاری میشود. حافظه پنهان مرورگر وب همچنین میتواند به موتورهای جستجو و سایر وب سایتها کمک کند تا تبلیغات مرتبط را نمایش دهند. با مشاهده کوکیها و تصاویر در حافظه پنهان شما، وب سایتها میتوانند دامنههای دیگری که بازدید کردهاید را مشاهده کنند و تبلیغاتی را که ممکن است به آن علاقه داشته باشید به شما نشان دهند.
اپلیکیشنها: اکثر برنامههای کاربردی روی کامپیوترها و دستگاههای تلفن همراه شما نیز سیستم حافظه پنهان خود را دارند. حافظه پنهان در هر برنامه، اطلاعات متفاوتی را با توجه به عملکرد برنامه ذخیره میکند. این اطلاعات شامل مواردی مانند تصاویر، ویدئوها، فایلهای ذخیره شده و تاریخچه موتور جستجو است. این اطلاعات به برنامهها کمک میکند سریعتر بارگذاری شوند و تجربه کاربری بهتری را برای افراد فراهم میکند.
مقاله حافظه ssd چیست و تفاوت hdd و ssd را برای تصمیم گیری بهتر مطالعه کنید.
انواع حافظه کش چیست؟
حافظه کش بر اساس ویژگیهای مختلف به دستهها و انواع گوناگونی تقسیم میشود.
انواع حافظه کش بر اساس سطح L1، L2، L3
حافظه کش بر اساس لایه یا سطح نگهداری از دادهها به سه دسته طبقه بندی میشود:
حافظه کش سطح یک (L1): این حافظه پنهان مستقیماً روی تراشه پردازنده (CPU) قرار دارد و سریعترین زمان دسترسی به دادهها را برای پردازنده فراهم میکند. اندازه این کش بسیار کوچک بوده و معمولاً بین ۱۶ کیلوبایت تا ۱۲۸ کیلوبایت است.
حافظه کش سطح دو (L2): روی تراشه پردازنده یا بسیار نزدیک به آن قرار دارد. L2 کمی کندتر از حافظه پنهان L1 اما سریعتر از حافظه اصلی (RAM) است. از نظر اندازه، L2 بزرگتر از حافظه پنهان L1 بوده و معمولاً بین ۱۲۸ کیلوبایت تا ۸ مگابایت است.
حافظه کش سطح سه (L3): این کش روی مادربورد قرار دارد و بین چندین هسته در یک پردازنده چند هستهای به اشتراک گذاشته میشود. همه سیستمها حافظه پنهان L3 ندارند؛ این نوع حافظه بیشتر در پردازندههای چند هستهای به کار میرود. L3 کندتر از حافظه پنهان L1 و L2 اما سریعتر از حافظه اصلی (RAM) است. L3 بزرگتر از حافظه پنهان L2 بوده و معمولاً بین ۴ مگابایت تا ۶۴ مگابایت است.
انواع حافظه کش بر اساس موقعیت و نزدیکی به پردازنده
حافظه پنهان بر اساس میزان نزدیکی به پردازنده به دو نوع دسته بندی میشود:
حافظه پنهان اولیه (Primary Cache): این حافظه پنهان همیشه روی تراشه پردازنده قرار دارد و زمان دسترسی به آن بسیار سریع و قابل مقایسه با سرعت پردازنده است. به عبارت دیگر، پردازنده میتواند به سرعت به دادههای موجود در این حافظه دسترسی پیدا کند.
حافظه پنهان ثانویه (Secondary Cache): این حافظه پنهان بین حافظه پنهان اولیه و حافظه اصلی قرار میگیرد. به همین دلیل گاهی اوقات به آن حافظه پنهان سطح 2 (L2) نیز گفته میشود. وظیفه اصلی آن، ذخیره دادههایی است که به طور مکرر توسط پردازنده استفاده میشوند اما در حافظه پنهان اولیه قرار ندارند.
مزایا و معایب حافظه کش
حافظه کش، مزایا و معایب خاص خود را دارد که در ادامه به مهمترین آنها خواهیم پرداخت.
مزایا:
- افزایش سرعت دسترسی به دادهها
- کاهش تأخیر در اجرای برنامهها و بارگذاری صفحات وب
- کاهش بار پردازشی روی پردازنده و سایر اجزای سیستم
- کاهش مصرف پهنای باند در شبکهها
- بهبود تجربه کاربری
- بهبود عملکرد برنامههای کاربردی
- کاهش هزینه پایگاه داده
معایب:
- محدودیت ظرفیت حافظه کش
- هزینه بالاتر
- پیچیدگی بالا
- مشکلات همگام سازی
- اشغال فضای دستگاه
- کُند شدن سرعت هارد دیسک
مقاله هارد دیسک sas چیست را از دست ندهید.
پاک سازی حافظه پنهان
حافظه پنهان (کش) و کوکیها به دلایل متعددی باید به طور منظم پاک شوند. بسته به تنظیمات شما، حافظه پنهان میتواند بسیار بزرگ شود، فضای دیسک زیادی را در دستگاه شما اشغال کند و باعث کندی وبگردی شود. حافظه پنهان همچنین میتواند هنگام مشاهده نسخههای جدید صفحات وب که قبلاً بازدید کردهاید، مشکلاتی ایجاد کند. حذف منظم دادههای حافظه پنهان و کوکیها به عیبیابی آسانتر کمک میکند، زمان بارگذاری صفحات وب را کاهش میدهد، نسخههای جدید صفحات وب را بارگذاری میکند و عملکرد دستگاه شما را بهبود میبخشد. با توجه به کاربردهای مختلف حافظه کش در ادامه به روش پاک سازی حافظه پنهان در ویندوز، گوشی، برنامهها و مرورگر میپردازیم.
پاک سازی کش ویندوز لپ تاپ
نرمافزار داخلی Disk Cleanup ویندوز برای پاکسازی حافظه کش ویندوز به کار میرود.
۱.در نوار جستجوی ویندوز، عبارت Disk Cleanup را تایپ کنید و برنامه را اجرا نمایید.
۲. در پنجره بازشده، درایو مورد نظر (معمولاً درایو C) را انتخاب کنید و روی OK کلیک نمایید.
۳. در پنجره جدید، لیستی از انواع فایلهایی که میتوانید حذف کنید، نمایش داده میشود. گزینههای مورد نظر خود را برای حذف انتخاب کنید. گزینههایی مانند Temporary files و Thumbnail معمولاً برای پاک کردن فایلهای موقت و حافظه پنهان مناسب هستند.
۴. برای پاکسازی فایلهای سیستمی اضافی، روی دکمه Clean up system files کلیک کنید و مراحل ۲ و ۳ را تکرار کنید
۵. پس از انتخاب فایلها روی OK کلیک کنید و سپس روی Delete files کلیک کنید تا فرآیند پاک سازی آغاز شود.
پاک سازی کش گوشی
برای پاکسازی حافظه پنهان و فایلهای اضافی گوشی، دو راه ساده وجود دارد: میتوانید از ابزار داخلی پاک سازی (Cleaner) که در اکثر گوشیها وجود دارد استفاده کنید. یا اینکه با نصب برنامههای تخصصی بهینه سازی، کش گوشی و اپلیکیشنها را به طور منظم پاکسازی نمایید. همچنین در تنظیمات هر اپلیکیشن، گزینهای برای پاک کردن دیتا و کش وجود دارد که به صورت دستی میتوان حافظه مربوط به همان اپلیکیشن را پاک کرد.
پاک سازی کش مرورگر
پاک سازی دادههای پنهان مرورگرها با وجود تفاوتهای جزئی در هر مرورگر و دستگاه مورد نظر، شباهت بسیاری با هم دارد. در ادامه با نحوه پاک سازی حافظه پنهان مرورگر گوگل کروم میپردازیم.
۱.ابتدا مرورگر کروم را باز کنید.
۲. در گوشه بالا سمت راست روی سه نقطه عمودی کلیک کنید.
۳. ماوس را روی More Tools نگه دارید و Clear Browsing Data را انتخاب کنید
۴. در پنجره باز شده، محدوده زمانی مورد نظر را انتخاب کنید؛ مثلاً همه زمانها (All time).
۵. روی پاک کردن دادهها (Clear data) کلیک کنید.
برای آشنایی با رم سرور، بخوانید.
پاک سازی کش برنامه
برای پاک کردن حافظه پنهان یک یا چند اپلیکیشن خاص در گوشیهای اندرویدی، مراحل زیر را دنبال کنید:
۱.وارد بخش تنظیمات گوشی شوید.
۲. به دنبال بخش برنامهها (Apps)، برنامهها و اعلانها (Apps & notifications) یا مشابه آن بگردید و وارد آن شوید.
۳. برنامهای که میخواهید کش آن را پاک کنید، از لیست برنامهها انتخاب کنید.
۴. در صفحه اطلاعات برنامه، گزینه فضای ذخیرهسازی (Storage) یا حافظه (Memory) را پیدا کنید و وارد آن شوید.
۵. در این بخش، دو گزینه «پاک کردن دادهها (Clear data)» و «پاک کردن حافظه پنهان (Clear cache)» را مشاهده خواهید کرد.
۷. برای پاک کردن کش، روی «پاک کردن حافظه پنهان» ضربه بزنید.
توجه داشته باشید که با انتخاب گزینه «پاک کردن دادهها»، تمام اطلاعات مربوط به برنامه (از جمله تنظیمات و دادههای ذخیره شده) پاک خواهد شد.
حرف آخر
بین حافظه اصلی سیستم (RAM) و پردازنده مرکزی (CPU)، یک حافظه کوچک و سریع به نام حافظه پنهان (کش) وجود دارد. وظیفه اصلی آن ذخیره دادهها و دستورالعملهایی است که به طور مکرر استفاده میشوند تا پردازنده بتواند به سرعت به آنها دسترسی پیدا کند. در بخشهای فوق به طور مفصل توضیح دادیم که حافظه کش چیست و چه کاربردها و مزایایی دارد. از همراهی شما تا انتهای مطلب بسیار سپاسگزاریم.
دیدگاهتان را بنویسید