2011-12-20 4 views
15

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

cat /proc/<pid>/status

आउटपुट को देखते समय, लेकिन मुझे यकीन नहीं है कि कौन से आंकड़े प्रासंगिक हैं। उदाहरण के लिए:

 
VmPeak: 19662464 kB 
VmSize: 18344416 kB 
VmLck:   0 kB 
VmHWM: 5942980 kB 
VmRSS: 4734832 kB 
VmData: 2108608 kB 
VmStk:  120 kB 
VmExe:  9256 kB 
VmLib: 304448 kB 
VmPTE:  10316 kB 

मैं मैं VmSize (? वर्चुअल मेमोरी दाएं) या VmRSS (? गोपनीय स्मृति दाएं) या कुछ संयोजन इस निर्धारित करने के लिए प्रयोग करेंगे लगता है, लेकिन मुझे यकीन है कि नहीं हूँ। लिनक्स में एक प्रक्रिया के स्मृति उपयोग की सही गणना करने पर कोई संकेतक?

उत्तर

9

कुछ आदेश मदद कर सकते हैं आप किसी दिए गए प्रक्रिया के लिए स्मृति के उपयोग का निर्धारण कर रहे हैं:

कोशिश pmap या pmap -x

तुम भी पुराने और अच्छे शीर्ष इस्तेमाल कर सकते हैं कमांड

vmstat भी उपयोगी होगा।

+2

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

5

पिड 1234 की प्रक्रिया के मेमोरी मैप के बारे में एक और सटीक जानकारी पढ़ने के द्वारा दी जा सकती है (उदा। cat कमांड के साथ) /proc/1234/maps या /proc/1234/smaps फ़ाइलें। आप pmap कमांड का भी उपयोग कर सकते हैं, उदा। pmap 1234

+0

pmap वर्चुअल आकार की रिपोर्टिंग प्रतीत होता है, इसलिए मुझे लगता है कि मैं आपकी सिफारिश के आधार पर उस पर जाऊंगा जब तक कि किसी और के पास कोई बेहतर सुझाव नहीं है –

+3

लेकिन अधिक महत्वपूर्ण बात यह है कि यह आपको बताता है कि आपके कार्यक्रम के लिए विशिष्ट क्या है, और क्या साझा किया जाता है अन्य प्रक्रियाओं के साथ (उदाहरण के लिए '/ Lib/libc.so.6')। –

+0

अच्छा प्वाइंट ... +1 –

10

मुझे लगता है कि उत्तर आपके विशिष्ट प्रश्न का उत्तर नहीं दे रहे थे। मुख्य बिंदु यह है कि आपको महत्वपूर्ण देखभाल करने की आवश्यकता है, आपकी प्रक्रिया द्वारा सिस्टम में उपयोग की जाने वाली रैम मेमोरी है।

इसलिए: VmRSS 'मूल्य

  • pmap आदेश में:'

    • शीर्ष में अवशिष्ट स्मृति के रूप में दिखाया गया है:: 'आरईएस' कॉलम
    • में '/ proc // SATUS' RSS ' ,

      एंटोनियो

      (नीचे)

    चीयर्स कुल स्तंभ मान

  • संबंधित मुद्दे

     संबंधित मुद्दे