कैसे एक मुक्त रैम उपयोगिता मुक्त रैम करता है?


14

क्या यह रैम को दूर करता है जो प्रोग्राम द्वारा उपयोग किया गया था या हार्ड डिस्क पर एक पेज फ़ाइल में स्थानांतरित करता है? या क्या यह केवल बिना रैम के रैम को साफ करता है?

जवाबों:


18

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

समस्या यह है कि रैम को मुक्त करना अपने आप में उपयोगी नहीं है। यदि किसी अन्य रनिंग प्रोग्राम को उस RAM की आवश्यकता होती है, तो पेजिंग उस समय हुआ होगा, बजाय इसके कि जब आप ram free'er चलाएंगे। और जिस पल आप चाहते हैं कि प्रोग्राम को डिस्क पर धकेल दिया गया है कुछ करने के लिए (उदाहरण के लिए, अगर यह फेसबुक पर आपकी स्थिति की जांच करने के लिए हर 5 मिनट में उठता है), तो यह बस इसे करने के लिए वापस स्वैप करने जा रहा है।

यदि आपको वास्तव में राम की समस्या है, तो आपके पास कुछ विकल्प हैं:

1) अधिक रैम प्राप्त करें। सरल, प्रत्यक्ष, संभवतः महंगा (या ओएस और हार्डवेयर कॉन्फ़िगरेशन के आधार पर) असंभव है।

2) कम कार्यक्रम चलाएं। जितनी कम चीजें चल रही हैं, उतनी ही रैम उन चीजों के लिए उपलब्ध है जो चल रही हैं। इसमें कम संसाधन-गहन उपयोगिताओं को चुनना भी शामिल है। उदाहरण के लिए, यदि आप एक IM उपयोगिता को हर समय खुला छोड़ते हैं, तो एक को चुनें जिसमें एक फ्लैश मेमोरी की जगह है जिसमें सभी फ़्लैश फीचर्स हैं।

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

कोई अन्य वास्तविक विकल्प नहीं हैं।


"राम को मुक्त छोड़ना अपने आप में उपयोगी नहीं है।" लेकिन यह लोगों को इस बात से रोकता है कि विंडोज विस्टा / 7 न्यूनतम मुफ्त रैम कैसे छोड़ता है क्योंकि यह पूर्व सूचना है जिसे उपयोगकर्ता आमतौर पर एक्सेस करता है।
निक टी

@Nick लोग जो Win7 या Vista के बारे में बताते हैं कि एक मशीन पर कोई मुफ्त रैम नहीं है, क्योंकि विंडोज प्रीफेटिंग में विंडोज प्रीफेटिंग उपयोगकर्ता की समस्या है। यह एक ऐसा तर्क है जिसे आबंटित किया जाना चाहिए और फिर प्रीफ़ेचर का उपयोग करने वाली मेमोरी को मुक्त करने के लिए सिस्टम को धीमा करना चाहिए क्योंकि सभी प्रीफ़ेट किए गए डेटा को बिना किसी अच्छे कारण के बाहर निकाल दिया जाएगा और इसलिए इसे कैश नहीं किया जाएगा क्योंकि आप एक नया एप्लिकेशन चलाते हैं और इसका मतलब यह भी होगा कि प्रीफेचर समय और संसाधनों को खाली कर देता है और नए खाली किए गए रैम को रिफिल करता है। राम को मुक्त कर दिया है, तो एक प्रोग्राम यह वैसे भी जरूरत है ... है
Mokubai

Windows RAM का उपयोग फ़ाइल कैश के रूप में भी करता है, क्योंकि इससे EFFECTIVE डिस्क एक्सेस की गति बढ़ जाती है। आप इस बारे में सभी तरह की अशुभ सूचनाएँ देखेंगे। कई विंडोज़ सिस्टम पर इतनी कम रैम उपलब्ध होने का कारण यह है कि आमतौर पर बड़ी मात्रा में "राम-डिस्क" कैश के रूप में उपयोग किया जाता है। इसके लिए उपयोग की गई राशि गतिशील है, क्योंकि प्रोग्राम को अधिक मेमोरी की आवश्यकता होती है, फ़ाइल कैश के लिए उपयोग की जाने वाली राशि कम हो जाती है। ओएस लिखने वाले लोग उतने अनभिज्ञ नहीं थे जितने कुछ हम सोचना चाहेंगे।
जल्दी से जल्दी

11

मूल रूप से रैम मुक्त क्या करता है कि वे बड़ी मात्रा में रैम को आरक्षित करते हैं विंडोज को डिस्क पर अन्य कार्यक्रमों को स्वैप करने के लिए मजबूर करते हैं और फिर रैम को आरक्षित करते हैं। ऐसा करने के लिए अलग-अलग रणनीतियाँ हो सकती हैं, लेकिन मैं इंटर्नल नहीं हूँ।

यदि संभव हो तो मैं और अधिक भौतिक रैम प्राप्त करने का सुझाव दूंगा , क्योंकि समय आ जाएगा जब आउटस्वैप किए गए कार्यक्रम को अपनी मेमोरी का हिस्सा प्राप्त करने की आवश्यकता हो ...


विंडोज एक 'Low_MEMORY' संदेश भेजता है जिसके चारों ओर सभी अनुप्रयोग अपने अप्रयुक्त कैश को मुक्त करने के लिए कहते हैं। SQL सर्वर और फ़ाइल कैश साफ़ हो जाते हैं ताकि आप अतिरिक्त खाली स्थान के साथ समाप्त हो जाएं।
बारफील्डम

8

ऑपरेटिंग सिस्टम को बेवकूफ बनाने की कोशिश करने से यह आभास होता है कि शायद कुछ किया जा रहा है। इस तरह का दृष्टिकोण पॉल को भुगतान करने के लिए पीटर को लूटने का एक मामला है।

या ... यदि आप कोशिश करते हैं और लंबे समय तक आपको कुछ भी नहीं मिलता है तो आपको कुछ भी नहीं मिलता है।

दूसरे शब्दों में, मैं इस तरह की बात को एक शंकु के रूप में मानता हूं। यदि आप रैम से कम हैं, तो सबसे अच्छा दीर्घकालिक तकनीकी समाधान अधिक खरीदना है।


2

विंडोज एक 'LOW_MEMORY' संदेश भेजता है जिसके चारों ओर सभी अनुप्रयोग अपने अप्रयुक्त डेटा को मुक्त करने के लिए कहते हैं। SQL सर्वर और फ़ाइल कैश साफ़ हो जाते हैं, इसलिए आप बहुत सारे अतिरिक्त खाली स्थान समाप्त करेंगे। यह भी साफ करता है कि विंडोज़ फ़ाइल कैश विच स्टार्टअप पर 1 गीगा स्थान आसानी से ले सकती है।

मेमोरी का एक बड़ा हिस्सा आवंटित करना एक कम स्मृति संदेश को ट्रिगर करने का एक आसान तरीका है, लेकिन हो सकता है कि इसमें स्मार्ट सिस्टम हो।


2

अन्य उत्तरों के साथ, RAMDoubler जैसे पुराने उपकरण रैम का उपयोग मेमोरी में संपीड़ित करने के लिए करते थे, जिसमें स्पष्ट सीपीयू लागत का उपयोग होता था। मुझे लगता है कि अब कोई भी ऐसा नहीं करता है, क्योंकि इसकी पहुंच लागत है।

संपादित करें: कोई भी .. अच्छी तरह से Apple के बाहर सब कुछ फिर से नया है। अधिक विशेष रूप से, सीपीयू की गति और मेमोरी प्रौद्योगिकियों (विशेष रूप से डिस्क) की गति के बीच प्रसार इतना बड़ा है कि यह अब एक बेहतर विकल्प है, विशेष रूप से बिजली (पढ़ें: बैटरी) डिस्क को मारने के लिए लागत।


1
स्मृति संपीड़न ने वास्तव में सॉफ्टरैम धोखाधड़ी से प्राप्त खराब प्रतिष्ठा को कभी नहीं उखाड़ा। RAMDoubler और MagnaRam दोनों वैध उत्पाद थे। तकनीक अभी भी मौजूद है। IBM ने हार्डवेयर MTX और सॉफ्टवेयर AME आधारित मेमोरी कम्प्रेशन दोनों को विकसित किया और VMWare अपने अधिकांश उत्पाद लाइन में मेमोरी कम्प्रेशन का उपयोग करता है।
केनेथ कोचरन

1
यह एक समझदार डिज़ाइन है, और कुछ बिंदु पर कर्नेल में जा सकता है: lwn.net/Articles/397574
टोबू

1

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.