Taschenrechner

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
kakalake
Beiträge: 100
Registriert: 28.05.2003 12:02:38

Taschenrechner

Beitrag von kakalake » 18.07.2003 16:09:00

Hallo!
Ich suche ein Tool, vielleicht einen Taschenrechner, der mir virtuelle Speicheradressen in Dateioffsets umrechnen kann.

Mercy!

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 18.07.2003 17:24:12

Kannst Du das 'mal genauer Erläutern? Normalerweise sind virtuelle Speicheradressen und Dateioffsets unabhängig voneinander, wenigstens, wenn Du die Frage so gemeint hast, wie ich sie verstehe...

Beschreibe einfach 'mal genauer, was Du vorhast...

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

kakalake
Beiträge: 100
Registriert: 28.05.2003 12:02:38

Beitrag von kakalake » 19.07.2003 12:14:27

Ich habe ein Programm, welches zur Laufzeit Fehler entdeckt und die Stelle der aktuellen Zeile im Programm als Hexwert ausgibt. Es handelt sich dabei nicht um den Offset des Files, daher gehe ich davon aus, dass es sich um die Adresse im Speicher handelt. Jetzt möchte ich gerne aus dieser die Offsetadresse im File herauskriegen.

Thx

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 19.07.2003 17:09:28

Ich denke was Du brauchst ist ein Debugger...

Wenn Du Dein Programm mit Debug Symbolen kompilierst (gcc Option -g), dann kannst Du das programm in den Debugger laden, und nach den Adressen fragen, und er zeigt Dir die Sourcecode Zeilen an, die zu der Adresse gehören. Das was Du eigentlich vorhast geht nicht (wenigstens nicht ohne Debugsymbole).

Gute Debugger unter Linux sind ddd (grafisch) und gdb (Konsole).

Wenn Dich interessiert, wie man solche Adressen korreliert, dann würde ich Dir empfehlen, die Spezifikation des ELF Formats durchzulesen. Dies ist das Format, dass Linux Binaries verwenden. Aber Achting: Das ist ziemlich kompliziertes Zeug, und die Spezifiaktion ist lang...

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Antworten