JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris Studio 12.3:使用 dbx 调试程序     Oracle Solaris Studio 12.3 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

1.  dbx 入门

2.  启动 dbx

3.  定制 dbx

4.  查看和导航到代码

5.  控制程序执行

6.  设置断点和跟踪

7.  使用调用堆栈

8.  求值和显示数据

9.  使用运行时检查

10.  修复并继续

11.  调试多线程应用程序

12.  调试子进程

13.  调试 OpenMP 程序

14.  处理信号

15.  使用 dbx 调试 C++

16.  使用 dbx 调试 Fortran

17.  使用 dbx 调试 Java 应用程序

18.  在机器指令级调试

19.  将 dbx 与 Korn Shell 配合使用

20.  调试共享库

A.  修改程序状态

B.  事件管理

C.  宏

D.  命令参考

assign 命令

本地模式语法

Java 模式语法

attach 命令

语法

连接到运行中的 Java 进程

bsearch 命令

语法

call 命令

本地模式语法

Java 模式语法

cancel 命令

语法

catch 命令

语法

check 命令

语法

clear 命令

语法

collector 命令

语法

collector archive 命令

语法

collector dbxsample 命令

语法

collector disable 命令

语法

collector enable 命令

语法

collector heaptrace 命令

语法

collector hw_profile 命令

语法

collector limit 命令

语法

collector mpitrace 命令

语法

collector pause 命令

语法

collector profile 命令

语法

collector resume 命令

语法

collector sample 命令

语法

collector show 命令

语法

collector status 命令

语法

collector store 命令

语法

collector synctrace 命令

语法

collector tha 命令

语法

collector version 命令

语法

cont 命令

语法

dalias 命令

语法

dbx 命令

本地模式语法

Java 模式语法

选项

dbxenv 命令

语法

debug 命令

本地模式语法

Java 模式语法

选项

delete 命令

语法

detach 命令

本地模式语法

Java 模式语法

dis 命令

语法

选项

display 命令

本地模式语法

Java 模式语法

down 命令

语法

dump 命令

语法

edit 命令

语法

examine 命令

语法

exception 命令

语法

exists 命令

语法

file 命令

语法

files 命令

本地模式语法

Java 模式语法

fix 命令

语法

fixed 命令

语法

fortran_modules 命令

语法

frame 命令

语法

func 命令

本地模式语法

Java 模式语法

funcs 命令

语法

gdb 命令

语法

handler 命令

语法

hide 命令

语法

ignore 命令

语法

import 命令

语法

intercept 命令

语法

java 命令

语法

jclasses 命令

语法

joff 命令

语法

jon 命令

语法

jpkgs 命令

语法

kill 命令

语法

language 命令

语法

line 命令

语法

示例

list 命令

语法

选项

示例

listi 命令

loadobject 命令

语法

loadobject -dumpelf 命令

语法

loadobject -exclude 命令

语法

loadobject -hide 命令

语法

loadobject -list 命令

语法

loadobject -load 命令

语法

loadobject -unload 命令

语法

loadobject -use 命令

语法

lwp 命令

语法

lwps 命令

语法

macro 命令

语法

mmapfile 命令

语法

示例

module 命令

语法

modules 命令

语法

native 命令

语法

next 命令

本地模式语法

Java 模式语法

nexti 命令

语法

omp_loop 命令

语法

omp_pr 命令

语法

omp_serialize 命令

语法

omp_team 命令

语法

omp_tr 命令

语法

pathmap 命令

语法

示例

pop 命令

语法

print 命令

本地模式语法

Java 模式语法

proc 命令

语法

prog 命令

语法

quit 命令

语法

regs 命令

语法

示例(SPARC 平台)

replay 命令

语法

rerun 命令

语法

restore 命令

语法

rprint 命令

语法

rtc showmap 命令

语法

rtc skippatch 命令

语法

run 命令

本地模式语法

Java 模式语法

runargs 命令

语法

save 命令

语法

scopes 命令

语法

search 命令

语法

showblock 命令

语法

showleaks 命令

语法

showmemuse 命令

语法

source 命令

语法

status 命令

语法

示例

step 命令

本地模式语法

Java 模式语法

stepi 命令

语法

stop 命令

语法

本地模式语法

Java 模式语法

stopi 命令

语法

suppress 命令

语法

sync 命令

语法

syncs 命令

语法

thread 命令

本地模式语法

Java 模式语法

threads 命令

本地模式语法

Java 模式语法

trace 命令

语法

本地模式语法

Java 模式语法

tracei 命令

语法

uncheck 命令

语法

undisplay 命令

本地模式语法

Java 模式语法

unhide 命令

语法

unintercept 命令

语法

unsuppress 命令

语法

unwatch 命令

语法

up 命令

语法

use 命令

watch 命令

语法

whatis 命令

本地模式语法

Java 模式语法

when 命令

语法

本地模式语法

Java 模式语法

wheni 命令

语法

where 命令

本地模式语法

Java 模式语法

whereami 命令

语法

whereis 命令

语法

which 命令

语法

whocatches 命令

语法

索引

step 命令

step 命令用于单步执行源代码或语句(步入使用 -g 选项编译的调用)。

dbx 环境变量 step_events 控制单步执行过程中是否启用断点。

dbx step_granularity 环境变量控制源代码行单步执行的粒度。

dbx step_abflow 环境变量控制在检测到将要发生“异常”控制流更改时 dbx 是否停止。 调用 siglongjmp()longjmp() 或异常抛出可能会导致出现此类控制流更改。

本地模式语法

step

单步执行一行(步入调用)。对于多线程程序,步过函数调用时,为了避免死锁,会在该函数调用期间隐式恢复所有线程。非活动线程无法单步执行。

step n

单步执行 n 行(步入调用)。

step up

向下单步执行并步出当前函数。

step ... -sig signal

单步执行时传递指定信号。如果该信号存在信号处理程序,并且使用 -g 选项编译了该信号处理程序,则步入该信号处理程序。

step ...thread_id

单步执行指定线程。不适用于 step up

step ...lwp_id

单步执行指定 LWP。步过函数时,不隐式恢复所有 LWP。

step to [ function ]

尝试步入从当前源代码行调用的 function。如果未指定 function,则步入上一个调用的函数,这有助于避免出现过长的 step 命令和 step up 命令序列。例如,上一个函数为:

f()->s()-t()->last();

last(a() + b(c()->d()));

其中:

n 是要单步执行的行数。

signal 是信号名。

thread_id 是线程 ID。

lwp_id 是 LWP ID。

function 是函数名。

只有指定显式 lwp_id 时,通用 step 命令的死锁避免措施才不起作用。

在执行 step to 命令时,如果尝试步入上一个汇编调用指令或步入当前源代码行中的函数(如果指定),则调用可能因条件分支而无法进行。在不执行调用或当前源代码行中没有函数调用的情况下,step to 命令会步过当前源代码行。使用 step to 命令时,需要特别注意用户定义的运算符。

有关机器级步进信息,另请参见stepi 命令

Java 模式语法

step

单步执行一行(步入调用)。对于多线程程序,步过方法调用时,为了避免死锁,会在该方法调用期间隐式恢复所有线程。非活动线程无法单步执行。

step n

单步执行 n 行(步入调用)。

step up

向下单步执行并步出当前方法。

step ...thread_id

单步执行指定线程。不适用于 step up

step ...lwp_id

单步执行指定 LWP。步过方法时,不隐式恢复所有 LWP。