Как заставить GDB просматривать по указанному адресу - PullRequest
0 голосов
/ 30 мая 2018

Я пытаюсь просмотреть переменную python с помощью gdb.

(gdb) python print(hex(id(a)))
0x7f3ca4f68c20
(gdb) x 0x7f3ca4f68c20
0xa4f68c20: Cannot access memory at address 0xa4f68c20

Может кто-нибудь объяснить мне, почему gdb пытается получить доступ к 0xa4f68c20, когда я попросил его посмотреть на 0x7f3ca4f68c20?

Спасибо.

1 Ответ

0 голосов
/ 01 июня 2018

Предполагая, что ваш GDB подключен к целевому процессу (как это обычно бывает), вы смотрите на неправильное пространство памяти.id(a) дает адрес объекта в области памяти GDB, в то время как команда x просматривает пространство памяти цели.

Если в вашем случае цель также выглядит как 32-битный процесс, поэтому ваши адреса усекаются.

...