सीमित करने के लिए कितना रैम एक मनमानी प्रक्रिया को ले सकता है?


12

बता दें कि हमारे पास 4 जीबी रैम के साथ एक ओएस एक्स मशीन चल रही है। क्या इसे स्थापित करना संभव है, इसलिए कोई भी एकल प्रक्रिया 3 जीबी से अधिक नहीं कह सकती है, इसलिए कोई भी बात नहीं है कि स्मृति किसी प्रक्रिया को कैसे रोक रही है, सिस्टम को उत्तरदायी बनाए रखने के लिए हमेशा कुछ स्मृति शेष रहती है?


6
नहीं। और यह उल्टा होगा। Micromanaging RAM का आवंटन कुछ ऐसा नहीं है जिसे OSes के चारों ओर डिज़ाइन किया गया हो। Free RAM व्यर्थ है RAM। बहुत अधिक ओएस एक्स के कथित खराब रैम प्रबंधन से बना है। गतिविधि की निगरानी बंद करना और अपने जीवन के साथ जुड़ना सबसे अच्छा उपाय है।

8
@cksum आपकी टिप्पणी में मान्यताओं की एक विशाल श्रृंखला है, जिनमें से अधिकांश गलत हैं। मैं सीट ड्राइव ओएस एक्स के मेमोरी प्रबंधन को वापस करने की कोशिश नहीं कर रहा हूं। मैं वास्तव में क्या कर रहा हूं यह पता लगाने की कोशिश कर रहा हूं कि क्या कुछ कोड का परीक्षण करते समय पर्याप्त सिस्टम कार्यक्षमता बनाए रखने का एक तरीका है जो आसानी से एक भगोड़ा प्रक्रिया में बदल जाता है। क्योंकि मुफ्त रैम रैम को बर्बाद नहीं किया जाता है अगर इसकी क्या आप त्रुटियों को ठीक करने की अनुमति देता है।
फोमाइट

3
क्षमा करें, लेकिन यदि आपका प्रश्न अनुप्रयोगों के प्रोग्रामिंग, (विकास और परीक्षण) से संबंधित है, तो यह इस मंच के लिए ऑफ टॉपिक है। कृपया किस प्रकार के प्रश्नों के बारे में अधिक जानकारी के लिए FAQ देखें: apple.stackexchange.com/faq

10
FFS, यह एक प्रोग्रामिंग सवाल नहीं है। यह एक ओएस सवाल है। स्मृति को सीमित करते हुए एक मनमानी प्रक्रिया का उपयोग कर सकते हैं - सफारी, मैटलैब, कॉल ऑफ ड्यूटी, जो कुछ भी - ओएस स्तर पर असंदिग्ध रूप से एक ओएस प्रश्न है।
फोमाइट

7
"Apple उत्साही और बिजली उपयोगकर्ताओं" के लिए एक साइट होने के नाते सवाल यह है कि संक्षेप में वर्चुअल मेमोरी के बारे में स्पष्ट रूप से सीमा पर और विषय पर हैं। भले ही विकास संबंधित है, यह ट्यूनिंग या प्रदर्शन के मुद्दों के लिए मान्य होगा।
bmike

जवाबों:


9

इसी तरह का एक प्रश्न यहाँ ध्यान दिया गया है कि मैं एक मैक ओएस एप्लिकेशन का उपयोग करने वाली रैम की मात्रा को कैसे सीमित कर सकता हूं?

वे अल्टीमेट कमांड का उपयोग करने की सलाह देते हैं , लेकिन वे उस राशि को सफलतापूर्वक सीमित करने में असमर्थ थे जो वे चाहते थे। मुझे लगता है कि वे जिस समस्या में भाग गए थे वह यह था कि विकल्प सेट किया जा रहा है -u या -v मेमोरी पेजिंग सिस्टम के लिए लेखांकन नहीं था, उदाहरण के लिए आप केवल वास्तविक रैम में प्रक्रिया के लिए एक्स राशि का आवंटन कर सकते हैं, लेकिन हम पेज कर सकते हैं आप पूरे दिन वर्चुअल मेमोरी में रहते हैं।

ध्यान दें कि यह वर्चुअल मेमोरी को निष्क्रिय करने में खतरनाक हो सकता है, यह आपके मैक में लॉकिंग आदि का परिणाम दे सकता है जब यह रैम से चलता है।

तर्कों के साथ अलिमित चलाने का प्रयास करें -l, -m, या -v जैसा कि अलिमित मैन पेज में नोट किया गया है यह ओएस पर निर्भर है अगर यह इन सेटिंग्स पर ध्यान देगा या नोट नहीं किया जाएगा।

ulimit: ulimit [-sacdefilmnpqrstuvx] [सीमा]

शेल संसाधन सीमाएँ संशोधित करें।

इस तरह के नियंत्रण की अनुमति देने वाले सिस्टम पर शेल और उपलब्ध प्रक्रियाओं पर नियंत्रण प्रदान करता है।

वास्तव में कोई भी निश्चित स्रोत नहीं मिल सकता है जो इस बात की पुष्टि करता है कि क्या OS X ulimit को अनदेखा करता है या नहीं, लेकिन संदर्भित ulimit विफल होने के बाद

यदि आप अपनी जरूरतों के हिसाब से काम करने के लिए अलिमेट प्राप्त कर सकते हैं तो इसे छोड़ दें, यदि नहीं तो एलिमिट और या अक्षम वर्चुअल मेमोरी का संयोजन आपको चुनिंदा प्रक्रियाओं पर उस 3 जीबी की सीमा को स्थापित करने में सक्षम कर सकता है। FYI यहां स्नो लेपर्ड सिस्टम 10.6 में कंप्लीटली डिसएबल वर्चुअल मेमोरी के बारे में अधिक जानकारी के लिए एक अच्छा लिंक है

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist

यह संभावित सही उत्तर की तरह दिखता है - जब मैं इसे चलाऊंगा तो मैं इसे आज़माऊंगा। अभी के लिए, उत्तर को स्वीकार करना।
फोमाइट

5

यदि आप अपने मैक पर लायन (या नए OSX) सर्वर चला रहे हैं, तो आप उस मैक पर VMX (वर्चुअलबॉक्स, समानताएं, या VMWare, et.al.) के अंदर OSX चलाने में सक्षम हो सकते हैं। VM को फिजिकल रैम के 3GB तक सीमित करें, और VM के अंदर कोई भी ऐप या प्रक्रिया भी इतनी सीमित होगी। VM को होस्ट करने वाला सिस्टम भले ही VM में OS बैक-स्वैप-डिस्क-सीमित या क्रैश हो, उत्तरदायी रहना चाहिए।

यदि आप एक संभावित भगोड़ा प्रक्रिया डिबगिंग कर रहे हैं, तो आप डिबगर या कमांड लाइन से डिबग नब को चलाने के लिए VM में ssh करने में सक्षम हो सकते हैं, और जब तक चीजें लॉक नहीं हो जाती तब तक सामान को लॉग इन करें।

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