मेमोरी और मेमोरी फुटप्रिंट्स के प्रमुख कार्य | Major Functions of Memory and Memory Footprints – Best info in Hindi
मेमोरी फुटप्रिंट्स के प्रमुख कार्य – मेमोरी मैनेजर ऑपरेटिंग सिस्टम का हिस्सा है जो डेटा को स्टोर करने और पुनर्प्राप्त करने के लिए जिम्मेदार है, चाहे वह शॉर्ट-टर्म मेमोरी (जैसे रैम) या लॉन्ग-टर्म स्टोरेज (जैसे हार्ड डिस्क) से हो। हालांकि यह परिभाषा निश्चित रूप से सच है, इस बीच यह शायद ही उस महत्वपूर्ण भूमिका का वर्णन करना शुरू करता है जो मेमोरी ऑपरेटिंग सिस्टम में निभाती है। हालांकि यह लेख मेमोरी फुटप्रिंट्स प्रत्येक फ़ंक्शन का पूरी तरह से वर्णन करने के लिए अभिप्रेत नहीं है, यह कई मदद करने वाले पर चर्चा करता है।
मेमोरी फुटप्रिंट्स के प्रमुख कार्य इस प्रकार हैं:–
मेमोरी आवंटन (Memory Allocation)
ऑपरेटिंग सिस्टम के भीतर विभिन्न घटकों से प्रबंधक को नई मेमोरी के लिए अनुरोध भेजे जाते हैं। इनमें प्रोसेस मैनेजर, नेटवर्क मैनेजर, डिवाइस ड्राइवर शामिल हैं, जो इस बात पर नज़र रखता है कि रैम के कौन से हिस्से उपयोग में नहीं हैं, और आवश्यकतानुसार इस पूल से हिस्से आवंटित करते हैं।

मेमोरी उपलब्धता (Memory Availability)
मेमोरी यह गारंटी देने का प्रयास करती है कि यदि आवश्यक हो तो RAM उपलब्ध है। इस लक्ष्य को पूरा करने के लिए, मेमोरी गैर-सक्रिय प्रक्रियाओं को स्थानांतरित करने और डिस्क पर विशेष मेमोरी फ़ाइलों पर रैम से कम प्राथमिकता वाले डेटा को स्थानांतरित करने के लिए प्रक्रिया प्रबंधक के साथ मिलकर काम करती है। शुद्ध प्रभाव डिस्क मेमोरी के लिए रैम को स्वैप करना है। इस तरह से मेमोरी के आदान-प्रदान की क्रिया को “स्वैपिंग” कहा जाता है। सबसे खराब स्थिति में जहां सक्रिय प्रक्रियाओं को उपलब्ध रैम की तुलना में अधिक रैम की आवश्यकता होती है, मेमोरी प्रबंधक कम प्राथमिकता या गैर-सक्रिय प्रक्रियाओं को निकट अनुक्रमिक या राउंड-रॉबिन फैशन में चुनिंदा रूप से स्वैप कर सकता है।
मेमोरी फुटप्रिंट्स प्रक्रिया से निरंतर ओवरहेड के साथ संयुक्त डिस्क का धीमापन सिस्टम को “थ्रैश” करने का कारण बनता है, एक ऐसी स्थिति जिसमें प्रक्रिया निष्पादन में प्रगति की तुलना में अधिक ओवरहेड पूरा किया जाता है, अंततः सिस्टम को सुस्त व्यवहार करने का कारण बनता है। विंडोज ऑपरेटिंग सिस्टम स्वैपिंग के लिए विशेष फाइलें आवंटित करते हैं।
मेमोरी सीमाएं (Memory Limits)
मेमोरी तक पहुँचने के लिए एक प्रक्रिया द्वारा अनुरोध प्रक्रिया प्रबंधक और मेमोरी प्रबंधक को भेजे जाते हैं, जिसके पास यह पुष्टि करने का अवसर होता है कि प्रक्रिया उस मेमोरी तक पहुँचने में सक्षम होनी चाहिए। यहां, मेमोरी मैनेजर यह पुष्टि कर रहा है कि एक प्रक्रिया अपने स्वयं के मेमोरी स्पेस की सीमाओं के भीतर रहती है। सीमा जांच सुरक्षा दोषों के लिए कुख्यात स्रोत हैं क्योंकि मेमोरी मैनेजर प्रत्येक मेमोरी एक्सेस मेमोरी फुटप्रिंट्स (केवल विशिष्ट एक्सेस अनुरोध) की पुष्टि नहीं करता है।
हर उदाहरण में पुष्टि नहीं करने का यह विकल्प प्रदर्शन के ऑपरेटिंग सिस्टम के भीतर एक ट्रेड-ऑफ है (बहुत अधिक चेक सिस्टम को धीमा कर देगा) और विश्वसनीयता (बहुत कम चेक सुरक्षा को कम कर देंगे)।
इन-प्रोसेस मेमोरी इनिशियलाइज़ेशन (In-process memory initialization)
कभी-कभी, एक प्रक्रिया प्रबंधक से मेमोरी पूछेगी और आवश्यकता होगी कि आवंटित मेमोरी एक निश्चित आकार की हो। मेमोरी को अनुरोध के अनुसार आवंटित किया जाता है, लेकिन किसी प्रीसेट मान के साथ परिभाषित नहीं किया जाता है। परिणाम मेमोरी आवंटित किया जाता है जिसमें उस मेमोरी स्थान में पिछली बार संग्रहीत की गई सामग्री है। यद्यपि ऑपरेटिंग सिस्टम में मेमोरी को किसी विशेष मान पर सेट करने का अवसर होता है, लेकिन अक्सर ऐसा नहीं होता है। यह व्यवहार ऑपरेटिंग सिस्टम की दक्षता और विश्वसनीयता के बीच एक व्यापार-बंद है जो ऑपरेटिंग सिस्टम के प्रारंभिक कार्यान्वयन के बाद से मौजूद है।
कंप्यूटर हार्डवेयर में हालिया प्रगति ने ऑपरेटिंग सिस्टम को “सुरक्षित” सुविधाओं को शामिल करने में सक्षम बनाया है जो आवंटित मेमोरी को मेमोरी फुटप्रिंट्स या स्थिर, समान मानों पर पूर्व-सेट करते हैं।
फ़ाइल कैश (File Cache)
डिस्क से लोड की गई फाइलों की प्रतियां मेमोरी में संग्रहित की जाती हैं। इन फाइलों को रखने वाली मेमोरी को फाइल कैशे कहा जाता है। फ़ाइल कैश के लिए मेमोरी गतिशील रूप से चल रही प्रक्रियाओं द्वारा उपयोग की जाने वाली फ़ाइलों के आकार और संख्या के अनुसार आवंटित की जाती है।
हिबेर्नेट (Hibernation)
एक कंप्यूटर सभी चल रही प्रक्रियाओं की एक प्रति के साथ सीपीयू की स्थिति को एक फाइल में कॉपी करके हाइबरनेट करेगा (चाहे वे रैम में हों या डिस्क पर स्वैप किए गए हों)। यह जानकारी एकत्र करने, फ़ाइल को प्रारूपित करने और सामग्री को डिस्क पर संग्रहीत करने के लिए मेमोरी प्रबंधक की ज़िम्मेदारी है। जब सिस्टम बूट होता है, तो यह मेमोरी मैनेजर की जिम्मेदारी होती है कि वह प्रक्रियाओं को मेमोरी में लोड करे।
क्रैश डंप (Crash Dump)
जब भी कोई कंप्यूटर काम कर रहा होता है, तो ऑपरेटिंग सिस्टम अपरिवर्तनीय त्रुटियों को पूरा कर सकता है जिससे सिस्टम क्रैश हो जाता है। सॉफ़्टवेयर विक्रेताओं द्वारा उपचारात्मक प्रयासों में मदद करने के प्रयास में, एक विशिष्ट प्रक्रिया के लिए मेमोरी की एक प्रति (यदि केवल एक प्रक्रिया दुर्घटनाग्रस्त हो) या सभी मेमोरी (यदि ओएस दुर्घटनाग्रस्त हो) ली जाती है। ये डंप डिस्क पर फाइलों के रूप में रखे जाते हैं।