发信人: System_Killer@bbs.ustc.edu.cn
(大家一起来发呆), 信区: Linux
标 题: gdb(八)
发信站: 中国科大BBS站 (Sun Apr 12 21:21:05 1998)
转信站: SwordHouse!linux.ustc.edu.cn!ustcnews!ustcbbs
`thbreak ARGS'
设置只有一次作用的硬件支持断点。ARGS用法同'hbreak'命令。这个命令
和'tbreak'命令相似,它所设置的断点只起一次作用,然后就被自动的删除。这
个命令所设置的断点需要有硬件支持。
`rbreak REGEX'
在所有满足表达式REGEX的函数上设置断点。这个命令在所有相匹配的函数
上设置无条件断点,当这个命令完成时显示所有被设置的断点信息。这个命令设
置的断点和'break'命令设置的没有什么不同。这样你可以象操作一般的断点一
样对这个命令设置的断点进行删除,使能,使不能等操作。当调试C++程序时这
个命令在重载函数上设置断点时非常有用。
`info breakpoints [N]'
`info break [N]'
`info watchpoints [N]'
显示所有的断点和观察点的设置表,有下列一些列
*Breakpoint Numbers*----断点号
*Type*----断点类型(断点或是观察点)
*Disposition*---显示断点的状态。
*Enabled or Disabled*---使能或不使能。'y'表示使能,'n'表示不使能。
*Address*----地址,断点在你程序中的地址(内存地址)
*What*---地址,断点在你程序中的行号。
如果断点是条件断点,此命令还显示断点所需要的条件。
带参数N的'info break'命令只显示由N指定的断点的信息。
此命令还显示断点的运行信息(被执行过几次),这个功能在使用'ignore'
命令时很有用。你可以'ignore'一个断点许多次。使用这个命令可以查看断点
被执行了多少次。这样可以更快的找到错误。
gdb允许你在一个地方设置多个断点。但设置相同的断点无疑是弱智的。不过
你可以使用条件断点,这样就非常有用。
gdb有时会自动在你的程序中加入断点。这主要是gdb自己的需要。比如为了正
确的处理C语言中的'longjmp'。这些内部断点都是负值,以'-1'开始。'info
breakpoints'不会显示它们。
不过你可以使用命令’maint info breakpoints'来查看这些断点。
`maint info breakpoints'
使用格式和'info breakpoints'相同,显示所有的断点,无论是你设置的还是
gdb自动设置的。
以下列的含义:
`breakpoint'
断点,普通断点。
`watchpoint'
普通观察点。
`longjmp'
内部断点,用于处理'longjmp'调用。
`longjmp resume'
内部断点,设置在'longjmp'调用的目标上。
`until'
'until'命令所使用的内部断点。
`finish'
'finish'命令所使用的内部断点。
--
※ 来源: 中国科大BBS站 [bbs.ustc.edu.cn]
--
※ 来源:·BBS 水木调试站 Leeward.lib.tsinghua.edu.cn·[FROM: 202.200.37.100]
本文转自中文Linux论坛