कभी-कभी मैं डेटा के विशाल डंप के साथ काम करता हूं जिसे मैं प्रसंस्करण के लिए स्मृति में रखना चाहता हूं। कभी-कभी मैं अपने प्रोग्राम का उत्पादन करने वाली मेमोरी की मात्रा को मिसकॉल करता हूं, या कोई डिबगर मेमोरी के उपयोग को एक ऐसे कारक द्वारा गुणा करता है जो मेरी उपलब्ध मेमोरी से अधिक हो।
जब भी मैं एक मेमोरी-भूखी प्रक्रिया शुरू करता हूं, तो यही वह चीज होती है जो मैं एक सॅन ऑपरेटिंग सिस्टम से उम्मीद करता हूं: सभी मुफ्त मेमोरी खाने की कोशिश करें, फिर कुछ अन्य गैर-जरूरी प्रक्रियाओं को अच्छी तरह से कुछ स्मृति देने के लिए कहें, जिनकी उन्हें आवश्यकता नहीं है, फिर स्वैप करने के लिए लिखें।
यहां मेरे लिए उबंटू क्या करता है: सभी मुफ्त मेमोरी खाएं, फिर ऑपरेटिंग सिस्टम को सभी आवश्यक सेवाओं (सूक्ति सत्र, टर्मिनल, कीबोर्ड) को स्वैप करने के लिए कहें, फिर फ्रीज करें और पावर प्लग खींचने के लिए मेरी प्रतीक्षा करें।
दो सवाल:
- एक ऑपरेटिंग सिस्टम कैसे मान सकता है, कि कुछ भी इतना महत्वपूर्ण हो सकता है कि उपयोगकर्ता इनपुट को सुनने से रोकना ठीक है?
- मैं उबंटू को कैसे बता सकता हूं कि आवश्यक सेवाओं को कभी भी स्वैप न करें और हमेशा उपयोगकर्ता इनपुट पर प्रतिक्रिया करें, भले ही कुछ बेवकूफ प्रक्रिया सिस्टम द्वारा प्रदान किए गए संसाधनों से अधिक खाने की कोशिश करें।
swappiness
सेटिंग को 10 पर बदलें , अर्थात: vm.swappiness = 10
/etc/sysctl.conf में। इसके बारे में अधिक जानकारी के लिए स्वैग के लिए यहां खोजें। 2) अगर स्वप्नदोष मदद नहीं करता है ... भले ही आप नहीं करना चाहते ... अपने स्वैफाइल का आकार बढ़ाकर 1.5x16G करें और देखें कि क्या मदद करता है। मुझे तैनात रखें। चीयर्स, अल
vm.swappiness=10
होने की जरूरत है जोड़ा sysctl.conf करने के लिए। एक अनुभवी व्यक्ति भी sysctl.conf फ़ाइल को संपादित किए बिना vm.swappiness = 10 सेट करने के लिए, मक्खी पर sysctl कमांड का उपयोग कर सकता है। चीयर्स, अल ps: ओपी के जवाब के लिए इंतजार कर रहा है।
swapon
यह पता लगाने के लिए)? चीयर्स, अल