dbx调试跟踪的常用子命令.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
dbx调试跟踪的常用子命令

HYPERLINK /Mainz/articles/1228116.html dbx调试跟踪的常用子命令 dbx是UNIX下基于命令行界面的程序调试器。? dbx是通过交互执行dbx子命令来达到调试的目的的。在调试程序前,必须先将-g选项包含在编译信息中,编译生成带调试信息的文件,即:cc -o filename -g file.c。 进入dbx通常只需输入dbx filename即可,filename为待调试的可执行程序名。dbx加载后就显示提示符:(dbx),此时用户就可以输入dbx子命令进行调试了。 ? 语法: dbx [ -a ProcessID ] [ -c CommandFile ] [ -d NestingDepth ] [ -I Directory ] [ -E DebugEnvironment ] [ -p oldpath=newpath:...| pathfile ] [ -k ] [ -u ] [ -F ] [ -r ] [ -x ] [ ObjectFile [ CoreFile ] ] -a ProcessID 将调试程序和正在运行的进程连接起来。要连接调试程序,您需要拥有对该进程使用 kill 命令的权限。使用 ps 命令来决定进程的 ID。如果您获得许可,dbx 程序中断该进程,决定对象文件的完整名称,读入符号信息和提示输入命令。 -c CommandFile 读入标准输入之前,在文件中运行 dbx 子命令。$HOME 目录中指定的文件将首先被处理;然后处理当前目录中的文件。当前目录中的命令文件将会覆盖 $HOME 目录中的命令文件。如果指定的文件既不存在于 $HOME 目录也不存在于当前目录,将会显示警告消息。 HYPERLINK /doc_link/zh_CN/a_doc_lib/cmds/aixcmds2/dbx.htm \l a3009e7f source 子命令可以在 dbx 程序运行后使用。 -d NestingDepth 设置程序块的嵌套限制。缺省的嵌套深度限制为 25。 -E DebugEnvironment 指定调试程序的环境变量。 -p oldpath=newpath:...| pathfile 以 oldpath=newpath 的格式在检查核心文件时指定替换的库的路径。oldpath 指定了将被替换的值(存储在核心文件中)而 newpath 指定了将要替换的新的值。这些可能是全部或者部分的,绝对路径或者相对路径。可以指定若干个替换,它们之间用冒号隔开。相反 -p 标志可以指定文件名,映射以前读入的描述格式。每行中只允许有一个映射从文件中读出。 -F 可以用来关闭缓慢读入模式并使 dbx 命令在启动时就读入全部符号。缺省情况下,缓慢读入模式是打开的:它在 dbx 会话初始化时读入需要的符号表信息。。在该模式下,dbx 将不会读入那些符号信息尚未被读入的变量和类型。因此,诸如 whereis i 等命令并不列出在所有函数中的变量 i 的全部实例。 -I Directory (大写 i)将 Directory 变量指定的目录包含到搜索源文件目录列表中。搜索源文件的缺省目录为: 文件编译时该源文件所在的目录。只有编译器设置了对象中的源路径时才能搜索目录。 当前目录。 当前程序所在的目录。 -k 映射内存地址;这对于内核调试是非常有用的。 -r 立即运行对象文件。如果它成功结束,dbx 调试程序将会退出。否则,将会进入调试程序并报告中断的原因。 注意:除非指定了 -r,dbx 命令将会提示用户并等待命令输入。 -u 让 dbx 命令为文件名加上 @ (at 符号) 前缀。该标志减少符号名混淆的可能性。 -x 防止 dbx 命令跳过来自于 FORTRAN 源代码的 _(下划线)字符。该符号允许 dbx 在符号之间区别哪些除了下划线以外都是相同的,例如 xxx 和xxx_。 ? ? 下面是一些dbx的常用子命令: 1.基本操作命令 run arg1 arg2 ... :以arg1,arg2,...为参数开始运行现有进程。 r:用上次使用的参数再次运行现有进程。? source filename:从文件名为filename的文件中读入dbx子命令并执行。 return:执行完目前的进程后返回。 sh command:不退出dbx,执行一条操作系统shell命令。 sh:暂时进入shell状态。 quit:退出dbx,若程序未执行完则终止其执行。? 2.置断点与跟踪点命令 stop var at n:置断点命令,当第n行的变量var发生变化时将程序挂起。 stop var in proc:置断点命令,当过程proc的变量var发

文档评论(0)

cj80011 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档