C - 使用程序集制作观察点
C - make watchpoint with assembly
就像 gdb 对观察点所做的那样,我想以编程方式在 C 中放置一个观察点。我听说这可以通过汇编实现。目前我只知道像这条指令这样的断点:
int i=0;
while(1){
i++;
if(i >= 10)
asm("int");/*break*/
}
经过搜索,有可能使用TUI模式显示程序集的指令并在我的程序中重用它,但它不起作用。
gdb -q ./prog -tui
gdb: TUI mode is not supported
感谢您的帮助。
在 x86 上,要创建硬件观察点,您需要对其中一个调试寄存器进行编程。你可以开始 here.
就像 gdb 对观察点所做的那样,我想以编程方式在 C 中放置一个观察点。我听说这可以通过汇编实现。目前我只知道像这条指令这样的断点:
int i=0;
while(1){
i++;
if(i >= 10)
asm("int");/*break*/
}
经过搜索,有可能使用TUI模式显示程序集的指令并在我的程序中重用它,但它不起作用。
gdb -q ./prog -tui
gdb: TUI mode is not supported
感谢您的帮助。
在 x86 上,要创建硬件观察点,您需要对其中一个调试寄存器进行编程。你可以开始 here.