Команда Trace32 для чтения имени символа для данного адреса из файла ELF - PullRequest
0 голосов
/ 11 октября 2018

Я использовал T32 для загрузки bin-файлов и elf и написал сценарии для извлечения значений регистров Pc, Lr из ELF-файла.Теперь у меня есть адрес, например, скажем, адрес компьютера 0xccccdddd.Теперь мне нужно получить символ, соответствующий этому.Я запустил gdb и использовал gdb info symbol 0xccccdddd и получил имя символа.Но мне нужно знать, есть ли в самом T32 какая-либо команда для получения имени символа.Или я могу получить имя символа из некоторых команд, таких как readelf или objdump .Заранее спасибо.

1 Ответ

0 голосов
/ 11 октября 2018

Команда открыть окно, чтобы увидеть все статические символы:

sYmbol.Browse

Чтобы узнать больше об этом окне, я рекомендую проверить "Training HLL Debugging" (training_hll.pdf) из вашего TRACE32установка.

Чтобы получить только символ, связанный с одним адресом, используйте функцию ПРАКТИКА sYmbol.Name(<addr>).Функции должны использоваться вместе с командой.Чтобы просто отобразить имя, используйте команду PRINT.

Например:

PRINT sYmbol.Name(P:0xccccdddd)

Обратите внимание, что смещение адреса должно предшествовать классу доступа.Обычно класс доступа «P:» обозначает память программы, а «D:» обозначает память данных.См. «Руководство по архитектуре процессора» для получения более подробной информации о классах доступа к ЦП (Меню> Справка> Руководство по архитектуре процессора)

...