वर्चुअल मेमोरी और कैश मेमोरी में अंतर
(Difference Between Virtual and Cache Memory in OS)
मेमोरी एक हार्डवेयर डिवाइस है जिसका उपयोग सूचना को अस्थायी या स्थायी रूप से संग्रहीत करने के लिए किया जाता है। इस लेख में, वर्चुअल और कैश मेमोरी के बीच अंतर पर चर्चा की है। कैशे मेमोरी एक हाई-स्पीड मेमोरी है जिसका उपयोग डेटा के एक्सेस टाइम को कम करने के लिए किया जाता है। दूसरी ओर, वर्चुअल मेमोरी वास्तव में एक फिजिकल मेमोरी नहीं है यह एक ऐसी तकनीक है जो मुख्य मेमोरी की क्षमता को उसकी सीमा से आगे बढ़ाती है।
वर्चुअल मेमोरी और कैश मेमोरी के बीच मुख्य अंतर यह है कि वर्चुअल मेमोरी एक उपयोगकर्ता को उन प्रोग्राम को निष्पादित (Execute) करने की अनुमति देती है जो मुख्य मेमोरी से बड़े होते हैं, जबकि कैश मेमोरी हाल ही में उपयोग किए गए डेटा को जल्दी पहुंच की अनुमति देती है।
इस पोस्ट में आप जानेंगे-
- वर्चुअल मेमोरी और कैश मेमोरी का तुलना चार्ट
- वर्चुअल मेमोरी और कैश मेमोरी की परिभाषा
- वर्चुअल मेमोरी और कैश मेमोरी में मुख्य अंतर
- निष्कर्ष
वर्चुअल मेमोरी और कैश मेमोरी का तुलना चार्ट
तुलना का आधार |
वर्चुअल मेमोरी |
कैश मेमोरी |
बेसिक | वर्चुअल मेमोरी उपयोगकर्ता के लिए मुख्य मेमोरी की क्षमता बढ़ाती है। | कैश मेमोरी सीपीयू की डेटा एक्सेस स्पीड को तेज करती है। |
प्रकृति | वर्चुअल मेमोरी तकनीक है। | कैश मेमोरी एक स्टोरेज यूनिट है। |
कार्य | वर्चुअल मेमोरी प्रोग्राम को निष्पादित करने की अनुमति देती है जो मुख्य मेमोरी से बड़ा है। | कैश मेमोरी में मूल डेटा की प्रतियां संग्रहीत की जाती हैं जो हाल ही में उपयोग की गई हैं। |
मेमोरी प्रबंधन | वर्चुअल मेमोरी को ऑपरेटिंग सिस्टम द्वारा प्रबंधित किया जाता है। | कैश मेमोरी पूरी तरह से हार्डवेयर द्वारा प्रबंधित की जाती है। |
आकार | वर्चुअल मेमोरी कैश मेमोरी से कहीं अधिक बड़ी है। | कैश मेमोरी का आकार सीमित है। |
मैपिंग | वर्चुअल मेमोरी को वर्चुअल एड्रेस को फिजिकल एड्रेस पर मैप करने के लिए मैपिंग स्ट्रक्चर की आवश्यकता होती है। | कैश मेमोरी में किसी भी मैपिंग संरचना की आवश्यकता नहीं होती है। |
वर्चुअल मेमोरी की परिभाषा
वर्चुअल मेमोरी कंप्यूटर की फिजिकल मेमोरी नहीं है, बल्कि यह एक ऐसी तकनीक है जो एक बड़े प्रोग्राम के निष्पादन (Execute) करने की अनुमति देती है जो पूरी तरह से मुख्य मेमोरी में नहीं रखी जा सकती है। यह प्रोग्रामर को मुख्य मेमोरी से बड़े प्रोग्राम्स को निष्पादित (Execute) करने में सक्षम बनाता है।
अब हम समझते हैं कि वर्चुअल मेमोरी कैसे काम करती है?
प्रोग्राम का अपना वर्चुअल मेमोरी एड्रेस होता है जो कई पेजों में विभाजित होता है। मुख्य मेमोरी को भी कई पेजों में विभाजित किया गया है। अब, जैसा कि हम देख सकते हैं कि प्रोग्राम का वर्चुअल पता उपलब्ध मुख्य मेमोरी से बड़ा है। तो मेमोरी मैप का इस्तेमाल वर्चुअल एड्रेस को मेन मेमोरी में मैप करने के लिए किया जाता है।
पेज 0, 1, 2, मुख्य मेमोरी में मैप हो जाता है और मुख्य मेमोरी भर जाता है। अब, जब वर्चुअल मेमोरी का पेज 3 मुख्य मेमोरी में जगह की मांग करता है, तो सबसे पुराना रखा गया पेज यानी पेज 0 हार्ड डिस्क में ट्रांसफर हो जाता है और पेज 3 के लिए जगह को मुख्य मेमोरी में खाली कर देता है और प्रक्रिया चालू हो जाती है। यदि मामले में पेज 0 की फिर से जरूरत है, तो उस समय का सबसे पुराना रखा गया पेज हार्ड डिस्क में ट्रांसफर हो जाता है, जिससे पेज 0 की जगह बन जाती है।
यदि मुख्य मेमोरी में रखे दो प्रोग्राम्स को समान डेटा की आवश्यकता होती है, तो मेमोरी मैपिंग यूनिट दोनों प्रोग्राम्स को मुख्य मेमोरी में समान एड्रेस स्पेस शेयर करने की अनुमति देता है जहां शेयर डेटा संग्रहीत होता है। यह फाइलों को शेयर करना आसान बनाता है।
वर्चुअल मेमोरी के लाभ हैं:
- वर्चुअल मेमोरी मल्टीप्रोग्रामिंग की डिग्री को बढ़ाती है।
- CPU उपयोग को बढ़ाता है।
- कम I / O इकाई को मेमोरी में प्रोग्राम लोड करने या स्वैप करने की आवश्यकता होगी।
लेकिन वर्चुअल मेमोरी की एक खामी है, हार्ड डिस्क में प्रोग्राम के अधिक पेज रखने से प्रदर्शन धीमा हो जाएगा क्योंकि हार्ड मेमोरी से डेटा एक्सेस करने में मुख्य मेमोरी से डेटा एक्सेस करने की तुलना में अधिक समय लगता है।
कैश मेमोरी की परिभाषा
वर्चुअल मेमोरी के विपरीत, कैश एक स्टोरेज डिवाइस है जिसे प्रोसेसर पर ही लागू किया जाता है। यह मूल डेटा की कॉपिया ले जाता है जिन्हें हाल ही में एक्सेस किया गया है। मूल डेटा को मुख्य मेमोरी या सेकेंडरी मेमोरी में रखा जा सकता है।
कैश मेमोरी डेटा की एक्सेस करने की गति को तेज करती है, लेकिन कैसे? आइए समझते हैं।
हम कह सकते हैं कि सीपीयू की पहुंच की गति मुख्य मेमोरी की एक्सेस करने की गति तक सीमित है। जब भी किसी प्रोग्राम को प्रोसेसर द्वारा निष्पादित (Execute) किया जाना होता है, तो वह इसे मुख्य मेमोरी से प्राप्त करता है। यदि प्रोसेसर पर लागू कैश में प्रोग्राम की एक प्रति पहले से मौजूद है। यह प्रक्रिया उस डेटा को तेजी से एक्सेस करने में सक्षम होगी जिसके परिणामस्वरूप तेजी से निष्पादन (Execute) होगा।
वर्चुअल और कैश मेमोरी के बीच महत्वपूर्ण अंतर
- वर्चुअल मेमोरी मुख्य रूप से उपयोगकर्ता के लिए मुख्य मेमोरी की क्षमता का विस्तार करती है। हालांकि, कैश मेमोरी सीपीयू के लिए डेटा की पहुंच को तेज बना देती है।
- कैश एक मेमोरी स्टोरेज यूनिट है जबकि वर्चुअल मेमोरी एक तकनीक है।
- वर्चुअल मेमोरी प्रोग्राम के निष्पादन (Execute) को सक्षम करती है जो मुख्य मेमोरी से बड़ी होती है। दूसरे हाथों से, कैश मेमोरी मूल डेटा की प्रतियां संग्रहीत करती है जो हाल ही में उपयोग की गई थी।
- वर्चुअल मेमोरी मैनेजमेंट ऑपरेटिंग सिस्टम द्वारा किया जाता है। दूसरी ओर, कैश मेमोरी प्रबंधन हार्डवेयर द्वारा किया जाता है।
- वर्चुअल मेमोरी आकार में कैश मेमोरी से कहीं अधिक बड़ी है।
- वर्चुअल मेमोरी तकनीक को मैपिंग संरचनाओं की आवश्यकता होती है ताकि वर्चुअल पते को फिजिकल पते पर मैप किया जा सके, जबकि कैश मेमोरी को किसी भी मैपिंग संरचनाओं की आवश्यकता नहीं होती है।
निष्कर्ष:
वर्चुअल मेमोरी मुख्य रूप से उपयोगकर्ताओं के लिए मुख्य मेमोरी की क्षमता का विस्तार करने की एक तकनीक है। कैश मेमोरी एक स्टोरेज यूनिट है जो हाल ही में एक्सेस किए गए डेटा को स्टोर करती है जो सीपीयू को तेजी से एक्सेस करने में सक्षम बनाती है।s