72

对于我当前的嵌入式应用程序,我试图将 GDB 观察点放在一个固定的内存地址。

例如,我的应用程序更新了以下地址:0x10793ad0。为了确定代码的哪一部分破坏了值,我尝试了

watch 0x10793ad0

即使 GDB 在此之后没有打印任何错误,它也无法在执行期间中断,即使我验证了该值在执行开始和结束之间被修改。

问题:

  1. 我真的可以把手表放在一个固定的地址吗?我在网上没有遇到任何这样的例子。
  2. 这是正确的方法还是我错过了什么?
4

1 回答 1

104

在地址上设置观察点的正确方法是watch *0x10793ad0。参见gdb 文档

于 2010-09-06T09:30:25.497 回答