वर्चुअल मेमोरी डेफिनिशन: वर्चुअल मेमोरी क्या है?

मार्च २०,२०२१

वर्चुअल मेमोरी एक कंप्यूटर सिस्टम तकनीक है जो देती है आवेदन ऐसा प्रतीत होता है कि इसमें सन्निहित कार्यशील मेमोरी (या एड्रेस स्पेस) है, भले ही यह खंडित हो सकती है और यहां तक ​​कि डिस्क पर स्टोरेज स्पेस तक विस्तारित हो सकती है। अनिवार्य रूप से, यह सिस्टम पर भौतिक रूप से उपलब्ध मेमोरी की तुलना में बड़ी मात्रा में मेमोरी को प्रभावी ढंग से उपयोग करने की अनुमति देता है।

वर्चुअल मेमोरी क्या है

वर्चुअल मेमोरी कैसे काम करती है?

वर्चुअल मेमोरी में कई विशेषताएं शामिल हैं जो भंडारण स्थान को समृद्ध करती हैं। यहाँ दिया गया है कि यह कैसे काम करता है:

  1. पेज फ़ाइल या स्वैप स्थान. वर्चुअल मेमोरी कंप्यूटर की हार्ड ड्राइव (या) के एक हिस्से का उपयोग करती है एसएसडी) इसका विस्तार करना रैम. डिस्क पर इस स्थान को अक्सर विंडोज़ में पेज फ़ाइल या स्वैप स्पेस के रूप में संदर्भित किया जाता है यूनिक्स/लिनक्स सिस्टम।
  2. पेजिंग और स्वैपिंग. RSI ऑपरेटिंग सिस्टम डिस्क और रैम के बीच डेटा को "पेज" नामक इकाइयों में स्थानांतरित करता है। जब किसी प्रोग्राम को उस डेटा तक पहुंचने की आवश्यकता होती है जो वर्तमान में रैम में नहीं है, तो सिस्टम उस डेटा को डिस्क पर ले जाएगा जो हाल ही में उपयोग नहीं किया गया है (स्वैपिंग या पेजिंग आउट) और आवश्यक डेटा को रैम में लोड करेगा (पेजिंग इन)।
  3. मेमोरी मैनेजमेंट यूनिट (एमएमयू). एमएमयू एक हार्डवेयर घटक है जो वर्चुअल मेमोरी के प्रबंधन के लिए जिम्मेदार है। यह आभासी पतों को भौतिक पतों में परिवर्तित करता है। प्रत्येक प्रोग्राम में आभासी पतों का अपना स्थान होता है, जिसे एमएमयू द्वारा भौतिक पतों पर मैप किया जाता है।

वर्चुअल मेमोरी का उपयोग करने के फायदे और नुकसान

वर्चुअल मेमोरी आधुनिक कंप्यूटिंग की आधारशिला है, जो भौतिक मेमोरी की स्पष्ट क्षमता का विस्तार करती है और विभिन्न अनुप्रयोगों में निर्बाध मल्टीटास्किंग की सुविधा प्रदान करती है। जबकि यह ऑफर करता है flexक्षमता, सिस्टम स्थिरता और बढ़ी हुई सुरक्षा, यह प्रदर्शन बाधाओं को जन्म दे सकती है, खासकर जब सिस्टम हार्डवेयर भारी पेजिंग गतिविधियों के लिए अनुकूलित नहीं है।

नीचे इस प्रौद्योगिकी का लाभ उठाने के लाभों और कमियों की रूपरेखा दी गई है।

फायदे

वर्चुअल मेमोरी के फायदों में शामिल हैं:

  • स्मृति उपयोग में दक्षता. वर्चुअल मेमोरी भौतिक मेमोरी के अधिक कुशल उपयोग की अनुमति देती है। यह रैम के धीमे, कार्यात्मक विस्तार के रूप में डिस्क स्थान का उपयोग करके सिस्टम को भौतिक रूप से उपलब्ध मेमोरी से अधिक मेमोरी की आवश्यकता वाले अनुप्रयोगों को चलाने में सक्षम बनाता है।
  • सरलीकृत स्मृति प्रबंधन. प्रोग्रामर के लिए, वर्चुअल मेमोरी मेमोरी प्रबंधन को सरल बनाती है क्योंकि उन्हें सीधे मेमोरी आवंटन का प्रबंधन नहीं करना पड़ता है। ऑपरेटिंग सिस्टम वर्चुअल पते को भौतिक पते पर मैप करने की जटिलता को संभालता है, जिससे डेवलपर्स को अपने अनुप्रयोगों के अन्य पहलुओं पर ध्यान केंद्रित करने की अनुमति मिलती है।
  • सुरक्षा बढ़ाना। प्रत्येक एप्लिकेशन के मेमोरी स्पेस को अलग करके, वर्चुअल मेमोरी सुरक्षा की एक परत भी जोड़ती है। यह एक एप्लिकेशन को दूसरे के डेटा तक पहुंचने से रोकता है, जो कुछ प्रकार के सॉफ़्टवेयर बग या दुर्भावनापूर्ण कारनामों से रक्षा कर सकता है।
  • स्मृति अति प्रतिबद्धता. वर्चुअल मेमोरी सिस्टम ओवरकमिटमेंट और मेमोरी ओवरआवंटन जैसे तंत्रों का उपयोग करके अनुप्रयोगों को भौतिक रूप से मौजूद मेमोरी से अधिक मेमोरी के आवंटन की अनुमति देता है। ये दृष्टिकोण उन वातावरणों में उपयोगी हैं जहां एप्लिकेशन वास्तव में उपयोग की तुलना में अधिक मेमोरी आरक्षित कर सकते हैं।
  • मांग पर लोड/आलसी लोडिंग। वर्चुअल मेमोरी किसी प्रोग्राम के केवल आवश्यक भागों को भौतिक मेमोरी में लोड करती है, जिससे स्टार्टअप समय और उपयोग की जाने वाली भौतिक मेमोरी की मात्रा कम हो जाती है। यह बड़ी मात्रा में कोड या डेटा वाले अनुप्रयोगों के लिए विशेष रूप से उपयोगी है जिनकी एक साथ आवश्यकता नहीं होती है।
  • आसान प्रक्रिया निर्माण. वर्चुअल मेमोरी का उपयोग ऑपरेटिंग सिस्टम के लिए नई बनाई गई प्रक्रियाओं के लिए मेमोरी आवंटित करना आसान बनाता है। यह उन प्रक्रियाओं के भीतर गतिशील रूप से आवंटित मेमोरी के प्रबंधन को भी सरल बना सकता है, सिस्टम प्रतिक्रिया में सुधार कर सकता है मापनीयता.
  • मेमोरी-मैप की गई फ़ाइलें. वर्चुअल मेमोरी फ़ाइलों को सीधे प्रक्रिया के एड्रेस स्पेस में मैप करने, फ़ाइल एक्सेस को सरल बनाने और फ़ाइल I/O संचालन के प्रदर्शन में सुधार करने की अनुमति देती है।
  • साझा वर्चुअल मेमोरी. ऐसे वातावरण में जहां कई प्रक्रियाओं को एक ही डेटा तक पहुंचने की आवश्यकता होती है, वर्चुअल मेमोरी प्रत्येक प्रक्रिया के एड्रेस स्पेस में मैप करके इस डेटा को साझा करने की सुविधा प्रदान करती है। यह क्षमता बहु-उपयोगकर्ता या बहु-प्रक्रिया प्रणालियों में उपयोगी है जहां प्रक्रियाओं को जानकारी संचार करने या साझा करने की आवश्यकता होती है।

नुकसान

हर तकनीक की तरह, वर्चुअल मेमोरी कई नुकसानों के साथ आती है, जिनमें शामिल हैं:

  • प्रदर्शन ओवरहेड. वर्चुअल मेमोरी एप्लिकेशन के मेमोरी के दृश्य और वास्तविक भौतिक मेमोरी के बीच एड्रेस ट्रांसलेशन की एक परत पेश करती है, जिससे प्रदर्शन ओवरहेड हो सकता है। रैम और डिस्क स्टोरेज (पेजिंग) के बीच डेटा की अदला-बदली की प्रक्रिया सिस्टम को धीमा कर सकती है, खासकर अगर सीमित रैम के कारण डिस्क को बार-बार एक्सेस किया जाता है।
  • डिस्क थ्रैशिंग. ऐसा तब होता है जब सिस्टम में भौतिक मेमोरी कम होती है और डिस्क और रैम के बीच मेमोरी के पेजों की अदला-बदली में काफी समय खर्च होता है। यह सिस्टम प्रदर्शन को गंभीर रूप से ख़राब कर सकता है, क्योंकि डिस्क पर पढ़ने और लिखने में लगने वाला समय रैम तक पहुंचने की तुलना में बहुत धीमा है।
  • भंडारण की आवश्यकता में वृद्धि. वर्चुअल मेमोरी के लिए डिस्क के एक हिस्से को स्वैप स्पेस (लिनक्स/यूनिक्स पर) या पेज फ़ाइल (विंडोज़ पर) के रूप में आवंटित करने की आवश्यकता होती है। यह आवंटन अन्य उपयोगों के लिए उपलब्ध भंडारण को कम कर देता है और महत्वपूर्ण हो सकता है, खासकर बहुत अधिक रैम वाले सिस्टम पर।
  • मेमोरी एक्सेस में विलंबता. वर्चुअल मेमोरी (यानी, डिस्क पर) में संग्रहीत डेटा तक पहुंच का समय भौतिक रैम में डेटा की तुलना में काफी अधिक है। इससे उन अनुप्रयोगों के लिए विलंबता की समस्या हो सकती है जिनके लिए उच्च गति मेमोरी एक्सेस की आवश्यकता होती है, जिससे समय-संवेदनशील कार्यों का प्रदर्शन प्रभावित होता है।
  • जटिल स्मृति प्रबंधन. वर्चुअल मेमोरी के लिए पेज टेबल को बनाए रखना, पेज की खामियों को संभालना और यह तय करना आवश्यक है कि कौन से पेज को अंदर और बाहर स्वैप करना है। यह सब ऑपरेटिंग सिस्टम के मेमोरी प्रबंधन कार्यों में जटिलता जोड़ता है और सिस्टम संसाधनों का उपभोग करता है।
  • विखंडन. समय के साथ, स्वैप फ़ाइल या स्वैप स्थान किसी अन्य की तरह खंडित हो सकता है संचिका तंत्र, जो प्रदर्शन को ख़राब कर सकता है क्योंकि सिस्टम को मेमोरी के एक पेज को पढ़ने या लिखने के लिए डिस्क के विभिन्न हिस्सों की तलाश करनी पड़ती है।
  • सुरक्षा चिंताएं। गलत तरीके से कॉन्फ़िगर की गई वर्चुअल मेमोरी संभावित रूप से सुरक्षा कमजोरियों का कारण बनती है, जैसे अनुप्रयोगों या डिस्क के बीच संवेदनशील जानकारी लीक होना। यह सुनिश्चित करना कि बदली गई मेमोरी ठीक से प्रबंधित और साफ-सुथरी है, महत्वपूर्ण है।

वर्चुअल मेमोरी के प्रबंधन के लिए प्रयुक्त एल्गोरिदम

कई एल्गोरिदम वर्चुअल मेमोरी को प्रबंधित करने के लिए नियोजित किया जाता है, प्रत्येक भौतिक मेमोरी संसाधनों के उपयोग को अनुकूलित करने के लिए अपनी अनूठी रणनीति के साथ। इनमें से, फर्स्ट-इन, फर्स्ट-आउट (फीफो) और कम से कम हाल ही में प्रयुक्त (एलआरयू) पेज प्रतिस्थापन के लिए अपने विशिष्ट दृष्टिकोण के लिए खड़े हैं, जो वर्चुअल मेमोरी प्रबंधन का एक महत्वपूर्ण पहलू है।

फीफो

फ़र्स्ट-इन, फ़र्स्ट-आउट (FIFO) एक मौलिक पृष्ठ प्रतिस्थापन एल्गोरिथ्म है जहाँ पृष्ठों को उनके आगमन के समय के आधार पर भौतिक मेमोरी के अंदर और बाहर स्वैप किया जाता है। फीफो में, सबसे पुराना पृष्ठ, जिसका अर्थ है कि वह जो सबसे पहले मेमोरी में लोड किया गया था, नए पृष्ठों के लिए स्थान की आवश्यकता होने पर सबसे पहले निकाला जाता है। यह विधि एक कतार की तरह काम करती है, पृष्ठों को उसी क्रम में प्राथमिकता देती है जिस क्रम में उन्हें पेश किया गया था।

जबकि FIFO की सादगी और न्यूनतम ओवरहेड इसे आकर्षक बनाते हैं, यह पेज एक्सेस की आवृत्ति या पुनरावृत्ति को ध्यान में नहीं रखता है, जिससे कम मेमोरी उपयोग हो सकता है। यह बेलाडीज़ एनोमली जैसी स्थितियों में स्पष्ट है, जहां अधिक पृष्ठ फ़्रेम जोड़ने से पृष्ठ दोषों की संख्या विरोधाभासी रूप से बढ़ सकती है, जो फीफो रणनीति में एक मौलिक अक्षमता को उजागर करती है।

एलआरयू

कम से कम हाल ही में उपयोग किया गया (एलआरयू), पृष्ठों को उनके पहुंच इतिहास के आधार पर प्राथमिकता देता है, विशेष रूप से उस पृष्ठ को लक्षित करता है जिसे प्रतिस्थापन के लिए सबसे कम हाल ही में उपयोग किया गया है। यह विधि इस धारणा पर आधारित है कि हाल ही में एक्सेस किए गए पृष्ठों की जल्द ही फिर से आवश्यकता पड़ने की संभावना है।

एलआरयू को लागू करने में प्रत्येक पृष्ठ के अंतिम पहुंच समय को ट्रैक करना या उनकी पहुंच के क्रम में पृष्ठों का रिकॉर्ड बनाए रखना शामिल है। इस अतिरिक्त जटिलता को एलआरयू के इष्टतम पृष्ठ प्रतिस्थापन के अधिक प्रभावी अनुमान द्वारा उचित ठहराया जा सकता है, जिसका उद्देश्य पृष्ठ दोषों को कम करना और अक्सर उपयोग किए जाने वाले पृष्ठों को स्मृति में रखकर प्रदर्शन को बढ़ाना है। फीफो की तुलना में अधिक ओवरहेड के बावजूद, एलआरयू को वर्चुअल मेमोरी के अधिक गतिशील और कुशल प्रबंधन के लिए व्यापक रूप से माना जाता है।

ऑप्ट

हालांकि व्यावहारिक रूप से कार्यान्वयन योग्य नहीं है, ऑप्टिमल पेज रिप्लेसमेंट (ओपीटी) पेज रिप्लेसमेंट एल्गोरिदम की दक्षता के मूल्यांकन के लिए एक सैद्धांतिक बेंचमार्क के रूप में कार्य करता है। ओपीटी उस पेज को बेदखल करने के सिद्धांत पर काम करता है जिसकी भविष्य में लंबे समय तक आवश्यकता नहीं होगी। क्योंकि इसमें भविष्य के अनुरोधों में दूरदर्शिता की आवश्यकता होती है, पेज प्रतिस्थापन एल्गोरिदम प्रदर्शन की ऊपरी सीमा को मापने के लिए अकादमिक और सैद्धांतिक सेटिंग्स में ओपीटी का उपयोग किया जाता है। इसकी उपयोगिता तुलना में निहित है, जिससे डेवलपर्स को इस आदर्श मानक के सापेक्ष वास्तविक दुनिया के एल्गोरिदम के संभावित दक्षता लाभ को समझने में मदद मिलती है।


अनास्ताज़िजा
स्पासोजेविक
अनास्ताज़ीजा ज्ञान और जुनून के साथ एक अनुभवी सामग्री लेखक हैं cloud कंप्यूटिंग, सूचना प्रौद्योगिकी और ऑनलाइन सुरक्षा। पर phoenixNAP, वह डिजिटल परिदृश्य में सभी प्रतिभागियों के लिए डेटा की मजबूती और सुरक्षा सुनिश्चित करने के बारे में ज्वलंत सवालों के जवाब देने पर ध्यान केंद्रित करती है।