register_tm_clones并且deregister_tm_clones正在引用我的RW部分末尾的内存地址.这个记忆是如何被追踪的?
示例:在下面的示例中deregister_tm_clones引用了内存地址0x601077,但是我们分配的最后一个RW部分,.bss从0x601069并且具有大小开始0x7,我们得到了0x601070.所以引用显然是过去为该.bss部分分配的,应该在我们的堆空间中,但谁在管理它.
objdump -d main
...
0000000000400540 <deregister_tm_clones>:
400540: b8 77 10 60 00 mov $0x601077,%eax
400545: 55 push %rbp
400546: 48 2d 70 10 60 00 sub $0x601070,%rax
40054c: 48 83 f8 0e cmp $0xe,%rax
...
readelf -S main
...
[25] .data PROGBITS 0000000000601040 00001040
0000000000000029 0000000000000000 WA 0 0 16
[26] .bss NOBITS 0000000000601069 00001069
0000000000000007 0000000000000000 WA 0 0 …Run Code Online (Sandbox Code Playgroud)