为什么ds寄存器恢复?

时间:2016-12-09 03:14:50

标签: c linux gdb

我写了一个这样的简短程序:

(gdb) c
Continuing.
1
Watchpoint 2: $ds

Old value = 0
New value = 2
main (argc=1, argv=0x7fffffffe5b8) at hello.c:6
6       int a=3,b=1;
(gdb) n
Watchpoint 2: $ds

Old value = 2
New value = 0
0x0000000000400559 in main (argc=1, argv=0x7fffffffe5b8) at hello.c:6
6       int a=3,b=1;

我使用gdb来调试它,我看$ ds,在第5步之后,$ ds已被更改。但是当我使用' n',gdb stoped时,ds寄存器被恢复。为什么?使用gdb调试程序有副作用吗?

CONFIG_MODVERSIONS is not set

0 个答案:

没有答案