लिनक्स मेमोरी को ओवरकम कर देता है


12

मैं उपयोग कर /proc/sys/vm/overcommit_memoryरहा हूँ Linux में स्मृति overcommitting में देख रहा हूँ, और मैंने कुछ लेख पढ़े हैं जो एक ही बात नहीं कहते हैं।

यह डॉक , "गलत दिशा में जा रहा है" शीर्षक के तहत, "मान 1: do overcommit, और 0 (डिफ़ॉल्ट): do" नहीं कहता है, लेकिन फिर अगली कुछ पंक्तियों में यह उल्लेख करता है, इसी तरह चीजें, कि यह वास्तव में सच नहीं है और इसका मतलब है कि "कितना overcommitment के बारे में अनुमान उचित है"। इसका मतलब है कि स्मृति ओवरकमिट वैल्यू 0, राइट का उपयोग करके अक्षम नहीं है ?

यह भी कहता है कि 1 इंगित करता है कि "किसी भी मॉलोक (कभी भी) को मना न करें", 2 अर्थ के साथ "ओवरकमिट के बारे में सटीक होना चाहिए - कभी भी स्वैप स्थान से बड़ा आभासी पता स्थान नहीं बनाना चाहिए और भौतिक स्मृति का एक अंश overcommit_ratio से अधिक है।"

दूसरी ओर, Red Hat पत्रिका में कहा गया है, "यदि मान 0 है, तो यह निर्धारित करने के लिए कर्नेल जाँचता है कि क्या किसी एप्लिकेशन से मैलोडॉक कॉल के लिए मेमोरी अनुरोध देने के लिए पर्याप्त मेमोरी फ्री है। यदि पर्याप्त मेमोरी है, तो। अनुरोध स्वीकार किया जाता है। अन्यथा, इसे अस्वीकार कर दिया जाता है और आवेदन में एक त्रुटि कोड वापस आ जाता है। " यह वास्तव में ओवरकम को अक्षम करने जैसा लगता है।

"यदि मान 1 पर सेट है, तो कर्नेल अनुदान को भौतिक RAM की मात्रा से ऊपर आवंटित करता है और सिस्टम में स्वैप करता है जैसा कि overcommit_ratio मान द्वारा परिभाषित किया गया है .... यदि इस फ़ाइल में सेटिंग 2 है, तो कर्नेल सभी मेमोरी आवंटन की अनुमति देता है भले ही वर्तमान स्मृति आवंटन राज्य की हो। ” मूल्यों 1 और 2 के संदर्भ में, यह पिछले डॉक्टर द्वारा कही गई बात के विपरीत है, है ना?

क्या किसी को पता है कि वास्तव में क्या सही है, और अगर यह संभव है कि क्या 'अक्षम' को खत्म कर दिया जाए?


इस एक के बारे में भूल गए! उसके लिए माफ़ करना।
डोडी

जवाबों:


8

Red Hat पत्रिका ने 1 और 2 को उलट दिया था। उन बगों से सावधान रहें, जो उस तरह काम करने के लिए ओवरकॉम्पट करने में अक्षम हो सकते हैं: https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/345601


सच। यह भी देखें में पिछले टिप्पणी saltwebsites.com/2012/install-redis-245-service-centos-6 जो इस पुष्टि करता है।
फ्लेच
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.