GDB (二)

1.条件断点

有一种断点仅在特定条件下中断:

格式:  break 断点 if 条件

 

删除指定断点的触发条件:

格式:  condition 断点编号

 

给断点添加触发条件:

格式: condition 断点编号 条件

 

2.反复执行

在编号指定的断点,监视点(watchpoint),捕获点(catchpoint)忽略指定的次数。

格式:

ignore 断点编号 次数

continue 次数

step 次数

stepi 次数

next 次数

nexti 次数

 

3.断点命令

断点命令commands 可以定义在断点中断后自动执行的命令。

格式:

commands  断点编号

    命令

end

 

4.举例

(gdb) b SnoopTaskInit if u4Instance>0
No symbol "u4Instance" in current context.
(gdb) b SnoopTaskInit if gu4SnoopTrcInstId>0
Breakpoint 1 at 0x85b1350: file /home/toney/work/project/dragon/core/code/future/snooping/snpcore/src/snpmain.c, line 244.
(gdb) commands 
Type commands for breakpoint(s) 1, one per line.
End with a line saying just "end".
>printf("gu4SnoopTrcInstId:%d\n",gu4SnoopTrcInstId);
>end
(gdb) 

 

5. 值的历史

  • 最后的值可以直接用 $ 输出。
  • show value可以显示历史中最后10个值。

举例:

(gdb) p gu4SnoopTrcInstId
$1 = 0
(gdb) p &gu4SnoopTrcInstId
$2 = (UINT4 *) 0x9c39e84 <gu4SnoopTrcInstId>
(gdb) p &SnoopMainStartModule
$3 = (INT4 (*)(void)) 0x85b3770 <SnoopMainStartModule>
(gdb) p $
$4 = (INT4 (*)(void)) 0x85b3770 <SnoopMainStartModule>
(gdb) show values 
$1 = 0
$2 = (UINT4 *) 0x9c39e84 <gu4SnoopTrcInstId>
$3 = (INT4 (*)(void)) 0x85b3770 <SnoopMainStartModule>
$4 = (INT4 (*)(void)) 0x85b3770 <SnoopMainStartModule>
(gdb) 

6.命令定义

  • define  命令可以自定义命令。
  • document  命令可以给自定义的命令添加说明。
  • help 命令名   可以查看定义的命令。

举例:

(gdb) define showvalue
Type commands for definition of "showvalue".
End with a line saying just "end".
>p gu4SnoopTrcInstId
>end
(gdb) document showvalue
Type documentation for "showvalue".
End with a line saying just "end".
>show gu4SnoopTrcInstId
>end
(gdb) 
(gdb) showvalue
$1 = 0
(gdb) help showvalue
show gu4SnoopTrcInstId
(gdb) 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值