What Is Virtual Memory & How It Works
मेमोरी के प्रकार
मेमोरी दो प्रकार की होती है, जो इस प्रकार हैं:
* सिस्टम मेमोरी एक मेमोरी है जिसका उपयोग एप्लिकेशन डेटा और इंस्ट्रक्शन को स्टोर करने के लिए किया जाता है ताकि सिस्टम उस एप्लिकेशन डेटा और इंस्ट्रक्शन को प्रोसेस और निष्पादित कर सके। जब आप सिस्टम रैम को बढ़ाने के लिए मेमोरी स्टिक्स स्थापित करते हैं, तो आप अधिक सिस्टम मेमोरी जोड़ रहे हैं। सिस्टम मेमोरी को या तो भौतिक मेमोरी या मुख्य मेमोरी के रूप में जाना जा सकता है।
* वर्चुअल मेमोरी एक मेमोरी है जो कि एप्लीकेशन डेटा और इंस्ट्रक्शन को स्टोर करने के लिए HDD स्पेस के एक हिस्से को मेमोरी के रूप में इस्तेमाल करती है और सिस्टम को समझा जाता है कि इसे अभी प्रोसेस करने की जरूरत नहीं है। वर्चुअल मेमोरी को तार्किक मेमोरी के रूप में जाना जा सकता है, और यह ऑपरेटिंग सिस्टम द्वारा नियंत्रित होता है, जो कि माइक्रोसॉफ्ट विंडोज है। वर्चुअल मेमोरी को जोड़ना सिस्टम कॉन्फ़िगरेशन में किया जा सकता है।
वर्चुअल मेमोरी क्या है?
वर्चुअल मेमोरी एक एचडीडी स्पेस है जो मेमोरी के रूप में इसके कुछ हिस्से का उपयोग करता है। इसका उपयोग एप्लिकेशन डेटा और निर्देश को संग्रहीत करने के लिए किया जाता है जिसे वर्तमान में सिस्टम द्वारा संसाधित करने की आवश्यकता नहीं है।
प्रोग्राम लोडिंग प्रक्रिया के दौरान, सिस्टम HDD से एप्लिकेशन डेटा और उसके निर्देश को मुख्य मेमोरी (सिस्टम मेमोरी) में कॉपी करेगा। इसलिए सिस्टम अपने संसाधनों का उपयोग कर सकता है जैसे कि सीपीयू इसे संसाधित और निष्पादित करने के लिए। एक बार सिस्टम मेमोरी भर जाने के बाद, सिस्टम कुछ डेटा और इंस्ट्रक्शन को स्थानांतरित करना शुरू कर देगा, जिन्हें वर्चुअल मेमोरी में अब और प्रोसेस करने की आवश्यकता नहीं है, जब तक कि उन डेटा और इंस्ट्रक्शन को फिर से प्रोसेस करने की आवश्यकता न हो। तो सिस्टम अगले एप्लिकेशन डेटा और निर्देश को कॉल कर सकता है और सिस्टम को बाकी को संसाधित करने और प्रोग्राम को लोड करने के लिए इसे मुख्य मेमोरी में कॉपी कर सकता है। जब वर्चुअल मेमोरी में मौजूद डेटा और निर्देश को फिर से प्रोसेस करने की आवश्यकता होती है, तो सिस्टम पहले अपने स्पेस के लिए मुख्य मेमोरी की जांच करेगा। अगर वहाँ जगह है, यह बस उन मुख्य स्मृति में स्वैप होगा। यदि मुख्य मेमोरी के लिए कोई स्थान नहीं बचा है, तो सिस्टम पहले मुख्य मेमोरी की जांच करेगा और किसी भी डेटा और निर्देशों को स्थानांतरित करेगा जिसे वर्चुअल मेमोरी में प्रोसेस करने की आवश्यकता नहीं है। और फिर डेटा और निर्देश को स्वैप करें जिसे वर्चुअल मेमोरी से सिस्टम द्वारा मुख्य मेमोरी में प्रोसेस करने की आवश्यकता है।
क्या यह प्रदर्शन को प्रभावित करता है?
वर्चुअल मेमोरी साइज़ या बड़े वर्चुअल मेमोरी साइज़ का बहुत कम होना (मतलब वो साइज़ जो सिस्टम मेमोरी से दोगुना है) अच्छा आइडिया नहीं है। यदि आप वर्चुअल मेमोरी को बहुत कम सेट करते हैं, तो OS एक एरर मैसेज जारी करता रहेगा, जिसमें या तो पर्याप्त मेमोरी नहीं होती या वर्चुअल भी कम होती है। ऐसा इसलिए है क्योंकि सिस्टम मेमोरी का कुछ हिस्सा ओएस कर्नेल को स्टोर करने के लिए उपयोग किया जाता है, और इसे हर समय मुख्य मेमोरी में बने रहने की आवश्यकता होती है। इसलिए मुख्य मेमोरी के भर जाने पर सिस्टम को वर्तमान में आवश्यक प्रोसेस डाटा और इंस्ट्रक्शन को स्टोर करने के लिए स्पेस की आवश्यकता नहीं होती है। यदि आप इंटेंसिव एप्लिकेशन को सपोर्ट करने के लिए वर्चुअल मेमोरी साइज को बहुत बड़ा सेट करते हैं, तो यह भी अच्छा आइडिया नहीं है। क्योंकि यह प्रदर्शन में शिथिलता पैदा करेगा, और यहां तक कि यह एचडीडी मुक्त स्थान लेगा। सिस्टम को वर्चुअल मेमोरी और सिस्टम मेमोरी के बीच एप्लिकेशन डेटा और निर्देश को आगे और पीछे स्थानांतरित करना होगा। इसलिए, यह एक अच्छा विचार नहीं है। वर्चुअल मेमोरी के लिए आदर्श आकार वर्चुअल मेमोरी का डिफ़ॉल्ट आकार है, और यह सिस्टम मेमोरी के ट्रिपल आकार के मूल्य से अधिक नहीं होना चाहिए।