मैं किसी अन्य प्रोग्राम से चल रही प्रक्रिया (पीआईडी और बाइनरी पथ ज्ञात) के स्टैक बैकट्रैक को प्राप्त करने का प्रयास कर रहा हूं। प्रश्न में कार्यक्रम सी ++ में लिखा गया है और gdb डीबगिंग प्रतीकों के साथ g ++ के साथ संकलित किया गया है।चल रहे प्रक्रिया के स्टैक बैकट्रैक प्राप्त करें
gdb -batch -x /dev/stdin <BINARY> <PID> << EOF
thread apply all bt
EOF
मैं:
मैं एक सी या सी ++ पुस्तकालय कि लिनक्स, HP-UX और Solaris कि एक निर्गम कुछ इस तरह के साथ popen बुला() के उत्पादन के लिए इसी तरह का उत्पादन में काम करता है के लिए देख रहा हूँ lsstack (http://sourceforge.net/projects/lsstack/) मिला है, जो केवल लिनक्स है और Solaris के लिए pstack कार्यक्रम पता है।
क्या कोई इस क्रॉस यूनिक्स/पॉज़िक्स को करने का विश्वसनीय तरीका जानता है?
भी 'लिनक्स पर gstack' उपयोगिता है, जो gdb ऊपर के समान फोन करके काम करता है की जरूरत है। – mark4o