无法使用 GDB 插入硬件断点

问题描述

我试图将手表设置为地址

(gdb) watch 0x7536546 但出现错误 警告: 无法插入硬件观察点 6。 无法插入硬件断点: 您可能请求过多的硬件断点/观察点

这是我尝试插入的第一个硬件断点

有什么问题,我该怎么办?

解决方法

(gdb) watch 0x7536546

上述命令指示 GDB 等待表达式 0x7536546 发生变化,但它永远不会——该表达式将永远保持 0x7536546

可能想要查看存储在地址 0x7536546。为此,要使用的命令是:

(gdb) watch *(int*)0x7536546
(gdb) watch *(long*)0x7536546

将类型调整为存储在给定地址的任何类型。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...