मैं एक बड़े बहु थ्रेडेड सर्वर के स्मृति उपयोग की जांच करने की कोशिश कर रहा हूं। Mallinfo() के अनुसार, मुझे arena=350M
और fordblks=290M
मिलता है, जो बताता है कि अधिकांश जगह वास्तव में malloc()
के अंदर बर्बाद हो जाती है। malloc_info()
फ़ंक्शन एक अच्छी XML डेटा संरचना प्रदान करता है जिसे स्वयं स्पष्टीकरण माना जाता है। फिर भी, क्या कोई मुझेजीएनयू malloc_info(): वास्तव में आवंटित स्मृति प्राप्त करें?
- हैप
0
विशेष है? क्या वह मुख्य क्षेत्र है जिसमें अन्य सभी रहते हैं? <size from=.../>
आवंटित, मुक्त/उपलब्ध या दोनों हैं?<system>
तत्व क्या है? मेमोरीmmap()/sbrk()
का उपयोग करके आवंटित?<aspace>
तत्व क्या है? उपलब्ध स्मृति?<aspace type="mprotect" .../>
के बारे में क्या?
बस एक शुरुआत के लिए, मैं कुल स्मृति आवेदन, अर्थात द्वारा आवंटित प्लॉट करने के लिए सक्षम होने के लिए करना चाहते हैं, सब कुछ आवंटित और अभी तक मुक्त नहीं, malloc()
क्या सोचता है के अनुसार।
स्रोत के माध्यम से जाकर, मुझे पता चला कि कोई भी स्वतंत्रता की मात्रा की गणना कर सकता है और अभी तक सभी 'आकार' और 'अनियंत्रित' तत्वों के सभी 'कुल' फ़ील्ड को संक्षेप में स्मृति (उपलब्ध) का उपयोग नहीं कर सकता है। वह मेरे दूसरे बिंदु का जवाब देता है। –
अधिक स्रोत विश्लेषण: ' ' 'mallinfo()' arena' फ़ील्ड जैसा ही है। –