amarao_san

Чудесатее и чудесатее

1. gdb козлит и отказывается смотреть куда сказали: https://stackoverflow.com/questions/50607748/how-to-force-gdb-to-view-at-a-given-address

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

2. В питоне (в моей жирной exa) есть куча id объектов, которые находятся вне диапазонов памяти в /proc/self/maps.

Например, есть объекты с id 0x7fe9fd4b8040, при этом соответствующий кусок map'а выглядит так:

7f0578203000-7f0578204000 rw-p

7f0578204000-7f0578205000 rw-p

7ffd6e860000-7ffd6e881000 rw-p ...[stack]

7ffd6e916000-7ffd6e919000 r--p ...[vvar]

7ffd6e919000-7ffd6e91b000 r-xp ....[vdso]

ffffffffff600000-ffffffffff601000 r-xp ...[vsyscall]

Как видно, тут нет ничего, чтобы устраивало 0x7fe...

Как же так? Объекты при этом живые, с ними можно работать. 

Либо питоновское id врёт, либо ядро врёт, либо я что-то не понимаю. адрес относительно чего?

Сегменты (кроме ss/cs) на нуле.

ds             0x0 0
es             0x0 0
fs             0x0 0
gs             0x0 0


Error

default userpic

Your IP address will be recorded 

When you submit the form an invisible reCAPTCHA check will be performed.
You must follow the Privacy Policy and Google Terms of use.