कैश मेमोरी क्या है | Cache memory kya hai | Cache memory in hindi?

कैश मेमोरी क्या है? What is cache memory in hindi?

फ्रेंड आप में से जो भी लोग कंप्यूटर की जानकारी रखते है या कंप्यूटर की पढ़ाई कर रहे है उन सभी को कंप्यूटर मेमोरी के बारे में अवश्य ही पता होगा और ये भी पता होगा की कंप्यूटर की मेमोरी को दो श्रेणी में बांटा गया है जिनमे से पहला है Primary Memory और दूसरा है Secondary Memory.

Primary Memory के अंतर्गत RAM, ROM, Cache Memory आते है जिसे Temporary Memory भी कहा जाता है, और Secondary Memory के अंतर्गत Hard Disk, SSD Etc. आते है जिसे Permanent Memory भी कहा जाता है।
आज हमलोग इस टॉपिक में प्राइमरी मेमोरी के अंतर्गत आनेवाले Cache Memory के बारे में विस्तार से चर्चा करने जा रहे है इसलिए आपसे आग्रह है की पूरी आर्टिकल को ध्यानपूर्वक पढ़ें, तो चलिए शुरू करते है....

कैश मेमोरी क्या है? Cache memory kya hai?

Cache memory kya hai
Picture No 1

Cache Memory कंप्यूटर में बहुत ही छोटी अमाउंट में पाए जानेवाली एक ऐसी टेम्पररी मेमोरी होती है जो कंप्यूटर की सभी मेमोरी में से फ़ास्ट होती है। यह कंप्यूटर में डाटा फ्लो होने के दौरान उत्पन्न होनेवाली Bottleneck को कम करने का काम करती है अर्थात Data Access Time को Reduce (कम) करने का काम करती है, जिससे CPU वर्कलोड बढ़ती है और अपनी Maximum Performance को Achieve कर पाती है जिससे कंप्यूटर की स्पीड Increase होती है।

वैसे सामान्य तौर पर हम सभी को केवल इतना पता होता है कि कंप्यूटर में एक Cache (कैश) Memory होती है जो CPU के अंदर पाये जाती है। पर वास्तविक में ऐसा नहीं होता है, कैश मेमोरी केवल CPU में ही नहीं बल्कि हर एक Device जैसे- CPU, Hard Disk, SSD, Professional Read Card Etc. जिसमे डाटा Read/Write करने की जरुरत पड़ती है उसमे पाये जाती है जो बहुत ही कम अमाउंट में होता है।

Cache Memory भी RAM की तरह ही Volatile Memory होती है अर्थात इसके अंदर भी कोई डाटा उतनी ही देर तक रह सकती है जब तक की इसको कंटिन्यू इलेक्ट्रिसिटी मिलती रहे, जब भी कंप्यूटर Off हो जाती है तो इसकी सारी डाटा Erase (गायब) हो जाती है। कैश मेमोरी का यूज़ ही किसी भी डिवाइस में इसलिए किया जाता है कि Data Access Time कम हो सके और वे डाटा उस डिवाइस से आसानी से प्राप्त हो सके जिसकी बार-बार जरुरत पड़ रही हो।

CPU Cache क्या है और यह कितने प्रकार के होते है?

अगर CPU के Point Of View से कैश मेमोरी को समझने का प्रयास करें तो हम सभी को पता होना चाहिए की CPU जिसे Microprocessor भी कहा जाता है उसके अंदर Cache Memory पायी जाती है जो प्रोसेसर को फ़ास्टली डेटा प्रदान कराती है। CPU में Core के आधार पर कैश मेमोरी होती है अर्थात CPU के अंदर जितनी Core होगी उन सभी Core के लिए अलग-अलग कैश मेमोरी होती है, और यह कैश मेमोरी भी तीन अलग-अलग Level में Divided होती है जिसे L1, L2, L3 (L=Level) में बंटी होती है, यहाँ तक की किसी किसी Server CPU में L4 भी पायी जाती है। इन सभी अलग-अलग Level के कैश मेमोरी की Speed भी अलग-अलग होती है।

L1 Cache Memory सबसे फ़ास्ट होती है परंतु CPU में इसकी Size बहुत ही कम होती है (कुछ ही KB में) जिसकी Speed RAM से भी 100 गुणा ज्यादा होती है।

L2 Cache Memory L1 से Slow होती है पर L3 से Fast होती है, परंतु इसकी Size L1 से ज्यादा होती है।

L3 Cache Memory L2 से भी Slow होती है परंतु इनकी Size सबसे ज्यादा होती है (इसकी साइज MB में होती है) यह सभी Core के लिए अलग-अलग नहीं बल्कि यह Shared होती है अर्थात एक ही L3 Cache Memory सभी कोर को Share की गयी होती है, जैसा की Picture No 2 में दिखाया गया है।

Cache Memory के कार्य?

Cache Memory की कार्य की बात करें तो हम सभी जान चुके है कि कैश मेमोरी Data Flow होने के दौरान लगने वाली Time को कम करने का काम करती है अर्थात Access Timing को कम करती है जिससे Bottleneck जैसी स्थिति उत्पन्न होने से बचती है। ऐसे में Access Time ज्यादा ना लगे और Bottleneck उत्पन्न ना हो इसके लिए CPU में Cache Memory का Concept Use किया गया है कैश मेमोरी में वो डाटा या इंस्ट्रक्शन पहले से सुरक्षित रहती है जो Recently Use किया गया होता है जिससे कैश मेमोरी में पड़ी डाटा या इंस्ट्रक्शन को CPU द्वारा Access करने में ज्यादा टाइम नहीं लगता है क्योंकि कैश मेमोरी सबसे Fastest Memory होती है।
Computer memory access diagram
Picture No 2
अब डाटा फ्लो के दौरान होता कुछ यूं है कि जब कभी CPU को किसी Data की जरुरत पड़ती है तो CPU उस डाटा को सबसे पहले अपने L1 कैश मेमोरी में उसे ढूंढता है और यदि वह डाटा उसे L1 में ही मिल जाता है तो आगे CPU को फॉरवर्ड कर दिया जाता है जिससे Time की काफी बचत होती है और अगर यदि वह डाटा उसे L1 कैश मेमोरी में नहीं मिलता है तो फिर उसे L2 कैश मेमोरी में ढूंढता है और यदि वह डाटा L2 में मिल जाता है तो आगे फॉरवर्ड कर देता है और यदि वह डाटा अगर L2 में भी नहीं मिलता है तो आगे L3 में ढूंढता है अगर वहां भी डाटा नहीं मिलता है तब CPU के सपोर्ट में लगी Memory Controller Chip (यह एक Integrated Circuit होती है जो एक मेनेजर की तरह कार्य करता है) से सीपीयू Data Demand करता है। अब यह मेमोरी कंट्रोलर की जिम्मेदारी होती है कि CPU को Data Provide करे, इसके लिए मेमोरी कंट्रोलर CPU द्वारा Demanded डाटा को आगे RAM में ढूंढता है, अगर RAM में वह डाटा मिल जाता है तो आगे उस डाटा L3 Cache को फॉरवर्ड कर दिया जाता है फिर L2→L1 से होते हुए डाटा CPU को मिल जाता है।

अब यदि वह डाटा RAM में भी नहीं होता है तब उसे Secondary Storage Device जैसे- Hard Disk में ढूंढता है और हम सभी जानते है कि हार्ड डिस्क में कोई भी डाटा उसके प्लेटर पर स्टोर होती है जो हमेशा घूमने वाला एक डिस्क नुमा फिजिकल पार्ट होता है जिसपर Read/Write Head Move करता रहता है और डेटा Read अथवा Write होता है, ऐसे में यहाँ से Data उठाकर CPU को देने में काफी समय लग जाता है इसी कारण Hard Disk में भी Cache Memory का Concept यूज़ किया गया होता है जिससे CPU के द्वारा Demanded कोई भी डाटा को Hard Disk के प्लेटर पर ढूंढने के बजाय पहले उसे Hard Disk के कैश मेमोरी में ही ढूंढ लिया जाता है और यदि वह डाटा वहीँ मिल जाता है तो आगे RAM→L3→L2→L1 से होते हुए CPU को फॉरवर्ड कर दिया जाता है जिससे टाइम की बचत होती है और अंततः चाहे जितना भी समय लगे उस डाटा को प्लेटर से लेना ही है।

वैसे सामान्य तौर पर Data Fetching के दौरान लगने वाले समय का हम अनुभव नहीं कर सकते क्योंकि ये सभी कार्य कुछ ही Milli Second की होती है फिर भी एक प्रोसेसर के लिए यह टाइम बहुत ही मायने रखता है क्योंकि अगर एक बड़ी डाटा को Sequentially Hard Disk के Platter से लेना हो तो ये एक छोटी सी Time भी बड़ी हो जाती है जिससे Bottleneck जैसी स्थिति उत्पन्न हो जाती है। इसी समस्या से बचने के लिए Cache Memory का कांसेप्ट यूज़ किया गया होता है जिसे Caching (कैशिंग) कहा जाता है।

अब सब के दिमाग में एक बात उत्पन्न हो जाती है कि Cache Memory की ही साइज बढ़ाकर As a Primary Memory तथा Secondary Memory का यूज़ किया जाना चाहिए ताकि यह समस्या ही उत्पन्न ना हो पर ऐसा नहीं हो सकता क्योंकि अगर यदि एक Consumer Level कंप्यूटर में कैश मेमोरी का यूज़ As a Primary Memory तथा Secondary Memory किया जाने लगे तो वह कंप्यूटर बहुत ही महँगी हो जायेगी जिसे आम यूजर Afford ही नहीं कर सकता, इसलिए इसका यूज़ केवल वैसे स्थानों पर ही किया जाता है जहाँ इसकी जरुरत हो।

Cache Memory की विशेषताएं?

  • Cache Memory की विशेषताओं की बात करें तो इसकी सबसे बड़ी विशेषता यह है कैश मेमोरी बहुत ही Fast होती है।
  • यह CPU को Fastly Data Access करने में मदद करती।
  • यह जिस भी डिवाइस में लगी होती है उसकी Speed Increase हो जाती है।
  • Cache Memory का कांसेप्ट जिस भी स्टोरेज डिवाइस में यूज़ किया गया होता है उससे Data Fetch करने में टाइम कम लगता है।
  • यह मेमोरी कम अमाउंट में रहते हुए भी पूरी कंप्यूटर को Bottleneck होने से बचाती है।

फ्रेंड हमें उम्मीद है की Cache Memory के बारे में लिखी गयी इस आर्टिकल से आपको बहुत कुछ जानने को मिला होगा। हमारे द्वारा कैश मेमोरी के बारे में लिखी गयी यह आर्टिकल आपको कैसी लगी इसकी प्रतिक्रिया कमेंट के माध्यम से जरुर दें साथ ही अगर यदि यह आर्टिकल आपको पसंद आई हो तो अपने फ्रेंड सर्किल में अधिक से अधिक शेयर करें। Comtech In Hindi से जुड़े रहने के लिए....धन्यवाद!