पता सैनिटाइज़र: HWASAN / आसन
Android प्लेटफ़ॉर्म डेवलपर C / C ++ में मेमोरी बग्स खोजने के लिए HWAddressSanitizer (HWASan) का उपयोग करते हैं।
आप ci.android.com ( विस्तृत सेटअप निर्देश ) से समर्थित पिक्सेल उपकरणों के लिए HWASan छवियों को फ्लैश कर सकते हैं।
एंड्रॉइड 8.0 (ओरेओ) के बाद से गैर-रूट किए गए उत्पादन उपकरणों पर एप्लिकेशन को डीबग करने के लिए आसन का उपयोग करना संभव है। आप आसन विकी पर निर्देश पा सकते हैं।Heapprofd
एंड्रॉइड 10 हाइपोप्रोड, एक कम-ओवरहेड, नमूना ढेर प्रोफाइलर का समर्थन करता है। हीरोपोर्ड आपको अपने प्रोग्राम में कॉलस्टैक्स के लिए देशी मेमोरी उपयोग की सुविधा देता है। अधिक जानकारी के लिए परफ़ेक्टो दस्तावेज़ीकरण साइट पर हेंप्रोफ़ - एंड्रॉइड हीप प्रोइलर देखें।
मलोक डिबग
देशी मेमोरी मुद्दों के लिए उपलब्ध डीबगिंग विकल्पों के गहन विवरण के लिएlibc Callbacks का उपयोग करते हुए मलॉक डीबग औरनेटिव मेमोरी ट्रैकिंग देखें।
libmemunreachable
एंड्रॉइड का लीबमेमुनेचेबल एक शून्य-ओवरहेड देशी मेमोरी लीक डिटेक्टर है। यह लीक से हटकर किसी भी अगम्य ब्लॉक की रिपोर्ट करते हुए, सभी देशी मेमोरी पर एक इम्प्रेसिव मार्क-एंड-स्वीप कचरा कलेक्टर पास का उपयोग करता है। उपयोग के निर्देशों के लिए libmemunreachable प्रलेखन देखें।
मलोक हुक
यदि आप अपने स्वयं के उपकरण बनाना चाहते हैं, तो एंड्रॉइड का libc सभी आवंटन / मुफ्त कॉलों को इंटरसेप्ट करने का समर्थन करता है जो प्रोग्राम निष्पादन के दौरान होते हैं। उपयोग निर्देशों के लिए malloc_hooks प्रलेखन देखें।
मलोक आँकड़े
Android, mallinfo(3)
औरmalloc_info(3)
एक्सटेंशन को <malloc.h>
। malloc_info
फ़ंक्शन Android 6.0 (Marshmallow) और उच्चतर में उपलब्ध है और इसका XML स्कीमा Bionic के <malloc.h>
में प्रलेखित है।
Dalvik डिबग मॉनिटर सर्वर
आप मलॉक डीबग आउटपुट का चित्रमय दृश्य प्राप्त करने के लिए Dalvik डिबग मॉनिटर सर्वर (DDMS) का भी उपयोग कर सकते हैं।
डीडीएमएस का उपयोग करने के लिए, पहले इसकी मूल मेमोरी UI चालू करें:
- खोलें
~/.android/ddms.cfg
- पंक्ति जोड़ें:
native=true
DDMS को पुन: लॉन्च करने और एक प्रक्रिया का चयन करने पर, आप नए देशी आवंटन टैब पर स्विच कर सकते हैं और इसे आवंटन की सूची के साथ पॉप्युलेट कर सकते हैं। यह स्मृति रिसाव को डीबग करने के लिए विशेष रूप से उपयोगी है।