博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理
上一页 1 2 3 4 5 6 7 8 9 ··· 15 下一页

2020年10月26日

摘要: GDB后台调试命令 前面章节中,我们已经接触了很多调试命令,如 run(r)、continue(c)、next(n)等,借助它们即可操控 GDB 调试目标程序。有些读者可能已经注意到,这些调试命令在执行过程中,是无法使用其它 GDB 调试命令的,换句话说,只有当一个调试命令执行结束后,(gdb) 命 阅读全文

posted @ 2020-10-26 11:04 面具下的戏命师 阅读(849) 评论(0) 推荐(0) 编辑

摘要: GDB non-stop模式 对于调试多线程程序,GDB 默认采用的是 all-stop 模式,即只要有一个线程暂停执行,所有线程都随即暂停。这种调试模式可以适用于大部分场景的需要,借助适当数量的断点,我们可以清楚地监控到各个线程的具体执行过程。 但在某些场景中,我们可能需要调试个别的线程,并且不想 阅读全文

posted @ 2020-10-26 10:53 面具下的戏命师 阅读(779) 评论(0) 推荐(0) 编辑

2020年10月23日

摘要: GDB调试多线程程序 GDB 调试器不仅仅支持调试单线程程序,还支持调试多线程程序。本质上讲,使用 GDB 调试多线程程序的过程和调试单线程程序类似,不同之处在于,调试多线程程序需要监控多个线程的执行过程,进而找到导致程序出现问题的异常或 Bug,而调试单线程程序只需要监控 1 个线程。 表 1 罗 阅读全文

posted @ 2020-10-23 14:58 面具下的戏命师 阅读(1773) 评论(0) 推荐(0) 编辑

2020年10月20日

摘要: GDB禁用删除断点 GDB 调试器支持 3 种断点,分别为普通断点(用 break 命令创建)、观察断点(用 watch 命令建立)以及捕捉断点(用 catch 命令建立)。并且如果需要的话,我们可以在被调试程序中打多个断点,甚至于 GDB 允许在同一位置打多个断点。如果之前建立的断点不再需要或者暂 阅读全文

posted @ 2020-10-20 20:45 面具下的戏命师 阅读(1148) 评论(0) 推荐(0) 编辑

2020年10月19日

摘要: GDB查看变量值 print和display GDB 调试程序,最常用的方法是:单步调试或者断点调试程序,期间通过查看某个变量或者表达式的值,判断当前程序的执行过程是否正确,不断缩小异常或 Bug 位于代码中的范围,最终找到并修复。对于在调试期间查看某个变量或表达式的值,GDB 调试器提供有 2 种 阅读全文

posted @ 2020-10-19 19:29 面具下的戏命师 阅读(5373) 评论(0) 推荐(1) 编辑

摘要: GDB断点调试详解 通过在程序的适当位置打断点,观察程序执行至该位置时某些变量(或表达式)的值,进而不断缩小导致程序出现异常或 Bug 的语句的搜索范围,并最终找到,整个过程就称为断点调试。 整个断点调试的过程,除了要借助 break、watch 或者 catch 命令以外,还要借助其它一些命令,例 阅读全文

posted @ 2020-10-19 11:23 面具下的戏命师 阅读(3128) 评论(0) 推荐(0) 编辑

2020年10月18日

摘要: GDB单步调试程序 单步调试,就是通过一行一行的执行程序,观察整个程序的执行流程,进而尝试发现一些存在的异常或者 Bug。借助 next 命令可以控制 GDB 单步执行程序。GDB 调试器共提供了 3 种可实现单步调试程序的方法,即使用 next、step 和 until 命令。这 3 个命令都可以 阅读全文

posted @ 2020-10-18 21:30 面具下的戏命师 阅读(1575) 评论(0) 推荐(0) 编辑

摘要: GDB条件断点 在通过GDB调试程序时,可以通过 break 创建普通断点。但是普通断点的建立,可以使用如下格式的 break 命令: (gdb) break ... if cond ... 参数用于指定生成断点的具体位置;cond 参数用于代指某个表达式。通过此方式建立的普通断点,只有当表达式 c 阅读全文

posted @ 2020-10-18 15:10 面具下的戏命师 阅读(2065) 评论(0) 推荐(0) 编辑

2020年10月17日

摘要: GDB观察和捕捉断点 GDB 调试器支持在程序中打 3 种断点,分别为普通断点、观察断点和捕捉断点。其中 break 命令打的就是普通断点,而 watch 命令打的为观察断点。catch 命令建立捕捉断点。 观察断点 GDB 调试程序的过程中,借助观察断点可以监控程序中某个变量或者表达式的值,只要发 阅读全文

posted @ 2020-10-17 22:37 面具下的戏命师 阅读(1150) 评论(0) 推荐(0) 编辑

2020年10月16日

摘要: GDB程序启动和断点设置 前面章节介绍了如何启动GDB调试器,本节介绍如何在 GDB 调试器中启动(运行)程序,启动程序过程中的一些注意事项 以及借助 GDB 调试器在程序中的某个地方设置断点。 程序启动 根据不同场景的需要,GDB 调试器提供了多种方式来启动目标程序,其中最常用的就是 run 指令 阅读全文

posted @ 2020-10-16 21:16 面具下的戏命师 阅读(2162) 评论(0) 推荐(1) 编辑

上一页 1 2 3 4 5 6 7 8 9 ··· 15 下一页