यह एक स्थिति मैं अब और फिर में चलाने दिया डीसीगिंग जानकारी के साथ सी या सी ++ कोड से संकलित एक निष्पादन योग्य फ़ाइल शामिल है। यह आमतौर पर सीओएफएफ या ईएलएफ/डीडब्ल्यूएआरएफ (मुझे उन दो मिश्रित) प्रारूप में मिलता है।:</p> <p>एक एम्बेडेड सिस्टम जो प्रयोग नहीं करता है आभासी को संबोधित कर रहे, मेरे पास के लिए: प्रोग्राम के रूप में सी के पतों का निर्धारण करने/C++ चर एक Coff/ELF/बौना निष्पादन
रनटाइम पर, एक पीसी पर, मैं एक चर यह नाम इसलिए दिया की पता निर्धारित करना चाहते हैं। (जैसे, "foo.bar [7] .baz") यह मैं पढ़ने/एम्बेडेड प्रणाली (एक डिबगिंग प्रोटोकॉल है कि इस सवाल का दायरे से परे है दी गई) पर वेरिएबल का मान लिखने के लिए अनुमति देता है। जाहिर है, किसी भी चर जो स्टैक-आधारित या ढेर-आधारित हैं, वे बाहर हैं क्योंकि उनके पास स्थिर पते नहीं हैं।
मैं उनके 2800 श्रृंखला DSPs के लिए TI की संकलक से Coff फ़ाइलें पार्स करने के लिए C++ अपने आप से पहले इस किया है, और यह एक तरह एक दर्द की थी। मैं सोच रहा था कि वहां एक जावा लाइब्रेरी थी जो इस तरह की चीज पहले से ही करती है, क्योंकि मुझे एक या दो अन्य प्रोसेसर की निष्पादन योग्य फाइलों के साथ एक ही चीज़ का सामना करना पड़ रहा है।
अद्यतन: (2009/11/18) एक होनहार सुराग!
वहाँ किसी को भी है ग्रहण CDT ELF पार्सर का इस्तेमाल किया?
(जावाडोक पृ में से एक के लिए http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.cdt.doc.isv/reference/api/org/eclipse/cdt/core/model/IBinary.html देखें)
TI की संहिता संगीतकार 4 (ग्रहण के आधार पर) यह उपयोग करने के लिए लगता है, इसलिए जहां प्रलेखन शायद मैं उपयोग कर सकते हैं वह यह है कि ऐसा लगता है कि अगर मैं यह पता लगाने कर सकते हैं मेरी समस्या को हल करने के लिए।
दुर्भाग्य से जीपीएल प्रश्न से बाहर है, लेकिन विचार के लिए धन्यवाद। –
मुझे लगता है कि यह अभी भी जो भी कार्यान्वयन मैं समाप्त कर रहा हूं उसके खिलाफ परीक्षण के लिए बहुत उपयोगी है। –