[ 永远的UNIX::UNIX技术资料的宝库 ]

首页 > 编程技术 > 其它 > 正文
Linux程式设计-27.GNU Debugger
http://www.openchess.org/noitatsko/programming/ (2001-05-27 18:08:01)
gdb/xxgdb 


--------------------------------------------------------------------------------

启动方式 
你可以单独启动gdb,不过一般来说,启动方式都会带一两个参数。 

「gdb program」:指定要除错的程式。 
「gdb program core」:指定要除错的程式及其coredump档。 
「gdb program pid」:指定要除错的程式及目前其正在执行的process id。 

--------------------------------------------------------------------------------

命令说明 
attach pid 
at pid 
接上一个已经在执行的行程pid。这会使pid暂停,中断任何sleep及可中断的可系统呼叫。 

backtrace, bt, where, w 
显示追踪堆叠。 

break [filename:]function | line | address 
b [filename:]function | line | address 
设定中断点。您可以指定函数名称、行数、甚至记忆体位址。 


中断点後,继续执行程式。 

clear [filename:]function | line | address 
清除中断点。 

condition breakid expression 
根据中断点号码来设定中断状况。 

delete breakid 
清除中断点breakid。 

detach pid 
解除目前接上的行程。 

display expression 
每次中断时,显示expression的值。 

help [name] 
辅助说明 

jump address 
跳到指定的位址,并开始执行。 

list (address) 
l (address) 
列出位置附近的10行。 

next, n 
执行到下一行。 

nexti 
执行下一个处理器指令。 

print expression 
p expression 
列出详细的expression值。 

run, r 
从头开始执行目前程式。 

set expression 
设定参数值。 

step, s 
执行一个程式指令。 

stepi 
执行一个处理器指令,遇到函数时,追踪进去。 

undisplay 
取消display。没有参数的话,取消全部。 

whatis 
显示expression的资料型态。 

quit 
离开。 


与print类似,不过仅显示位址内容的简约格式。 

(http://www.fanqiang.com)
    进入【UNIX论坛

相关文章
Linux程式设计-31.工作群资讯管理(grp) (2001-05-27 22:08:00)
Linux程式设计-30.使用者资讯管理(pwd) (2001-05-27 21:04:00)
Linux程式设计-29.时间处理 (2001-05-27 20:10:01)
Linux程式设计-28.GNU Make (2001-05-27 19:00:00)
Linux程式设计-27.GNU Debugger (2001-05-27 18:08:01)
Linux程式设计-26.PIPE (2001-05-27 17:04:00)
Linux程式设计-25.Message Queues (2001-05-27 16:10:00)
Linux程式设计-24.Semaphores (2001-05-27 15:00:00)
Linux程式设计-23.共享记忆体(Shared Memory) (2001-05-27 14:08:00)
Linux程式设计-20.getopt (2001-05-27 13:04:00)

===更多相关===
 

★  樊强制作 欢迎分享  ★