ホーム目次前ページへ次ページへ索引

dbx コマンドによるデバッグ Sun Microsystems

目次

 製品名の変更について

 はじめに

1.  dbx の起動

デバッグセッションを開始する
既存のコアファイルのデバッグ
プロセス ID の使用
dbx 起動時シーケンス
起動属性の設定
pathmap コマンドによるマッピング
dbxenv コマンドによる環境変数の設定
alias コマンドを使用してユーザー自身の dbx コマンドを作成
デバッグのため、プログラムをコンパイル
最適化コードのデバッグ
-g オプションを使用しないでコンパイルされたコード
dbx を完全にサポートするために -g オプションを必要とする共有ライブラリ
完全にストリップされたプログラム
デバッグセッションを終了する
プロセス実行の停止
dbx からのプロセスの切り離し
セッションを終了せずにプログラムを終了する
デバッグ実行の保存と復元
save コマンドの使用
一連のデバッグ実行をチェックポイントとして保存する
保存された実行の復元
replay を使用した保存と復元

2.  dbx のカスタマイズ

.dbxrc ファイルの使用
.dbxrc ファイルの作成
初期化ファイル
dbx 環境変数と Korn シェル
Sun WorkShop での dbx カスタマイズ
デバッグオプションの設定
統一されたオプションセットの維持
2 組のオプション維持
カスタムボタンの保存
dbxenv コマンドでの dbx 環境変数の設定

3.  コードの表示

コード位置へのマッピング
停止位置とは別の部分のコードを表示する
ファイルの内容を表示する
関数を表示する
ソースリストの出力
呼び出しスタックの操作によってコードを表示する
スコープ決定演算子を使用してシンボルを修飾する
逆引用符演算子
コロンを重ねたスコープ決定演算子 (C++)
ブロックローカル演算子
リンカー名
スコープ決定パス
シンボルを検索する
シンボルの出現を出力する
実際に使用されるシンボルを調べる
変数、メンバー、型、クラスを調べる
変数、メンバー、関数の定義を調べる
型およびクラスの定義を調べる
自動読み取り機能の使用
.o ファイルが存在しない場合のデバッグ
モジュールについてのデバッグ情報
モジュールのリスト

4.  プログラムの実行制御

dbx でプログラムを実行する
動作中のプロセスに dbx を接続する
プロセスから dbx を切り離す
プログラムのステップ実行
シングルステップ
プログラムを継続する
関数を呼び出す
Control+C によってプロセスを停止する

5.  ブレークポイントとトレースの設定

ブレークポイントを設定する
ソースコードの特定の行に stop ブレークポイントを設定する
関数に stop ブレークポイントを設定する
特定の行に when タイプのブレークポイントを設定する
動的にリンクされたライブラリにブレークポイントを設定する
C++ プログラムに複数のブレークポイントを設定する
コードをトレースする
トレースを設定する
トレース速度を制御する
イベントハンドラのリストの表示とクリア
ブレークポイントとトレースポイントの表示
ステータス ID 番号を使用して特定のブレークポイントを削除
ウォッチポイント
高速 modify イベント
ブレークポイントフィルタを設定する
イベント効率

6.  イベント管理

イベントハンドラ
イベントハンドラの作成
イベントハンドラを操作するコマンド
イベントカウンタ
イベント指定の設定
ブレークポイントイベント仕様
ウォッチポイントイベント仕様
システムイベント仕様
実行進行状況イベント仕様
その他のイベント仕様
イベント指定のための修飾子
解析とあいまいさに関する注意
事前定義済み変数
when コマンドに対して有効な変数
イベント別の有効変数
イベントハンドラの設定例
配列メンバーへの書き込みに対するウォッチポイントを設定する
単純なトレースを実行する
関数の中だけイベントを有効にする (in func)
実行された行の数を調べる
実行された命令の数をソース行で調べる
イベント発生後にブレークポイントを有効にする
replay 時にアプリケーションファイルをリセットする
プログラムの状態を調べる
浮動小数点例外を捕捉する

7.  呼び出しタックの使用

スタック上での現在位置の検索
スタックを移動してホームに戻る
スタックを上下に移動する
スタックの上方向への移動
スタックの下方向への移動
特定フレームへの移動
呼び出しスタックのポップ
スタックフレームを隠す

8.  データの評価と表示

変数と式の評価
実際に使用される変数を確認する
現在の関数のスコープ外にある変数
変数または式の値を出力する
C++ での表示
ポインタを間接参照する
式を監視する
表示を取り消す (非表示)
式に値を代入する
配列を評価する
配列の断面化
配列の断面
刻み幅

9.  実行時検査

概要
RTC を使用する場合
RTC の必要条件
制限事項
RTC の使用
メモリー使用状況とメモリーリーク検査を有効化
メモリーアクセス検査を有効化
すべての RTC を有効化
RTC を無効化
プログラムを実行
メモリーアクセスエラーの検出 (SPARC のみ)
メモリーアクセスエラーの報告
メモリーアクセスエラー
メモリーリークの検査
メモリーリーク検査の使用
リークの可能性
リークの検査
メモリーリークの報告を理解する
メモリーリークの修正
メモリー使用状況検査の使用
エラーの抑止
抑止のタイプ
エラー抑止の例
デフォルトの抑止
抑止によるエラーの制御
子プロセスにおける RTC の実行
接続されたプロセスへの RTC の使用
RTC での修正継続機能の使用
実行時検査アプリケーションプログラミング
インタフェース
バッチモードでの RTC の使用
bcheck 構文
bcheck 構文
dbx からバッチモードを直接有効化
トラブルシューティングのヒント
RTC の 8M バイト制限
RTC エラー
アクセスエラー
メモリーリークエラー

10.  データの視覚化

適切な配列式の指定
配列グラフの作成
配列グラフ作成の準備
さまざまな配列グラフの作成
配列表示の自動更新
表示の変更
視覚化されたデータの分析
シナリオ 1: 同じデータを違う視点で表示させて比較する
シナリオ 2: データのグラフを自動的に更新する
シナリオ3: プログラムの異なる個所のデータグラフを比較する
シナリオ 4: 同じプログラムを別々に実行した結果のデータグラフを比較する
Fortran のサンプルプログラム
C のサンプルプログラム

11.  修正継続機能 (fix と continue)

修正継続機能の使用
fix と continue の働き
fix と continue によるソースの変更
プログラムの修正
修正後の続行
修正後の変数の変更
ヘッダファイルの変更
C++ テンプレート定義の修正

12.  マルチスレッドアプリケーションのデバッグ

マルチスレッドデバッグについて
スレッド情報
別のスレッドのコンテキストの表示
スレッドリストの表示
実行の再開
LWP 情報について

13.  子プロセスのデバッグ

単純な接続の方法
exec 機能後のプロセス追跡
fork 機能後のプロセス追跡
イベントとの対話

14.  シグナルの処理

シグナルイベントについて
システムシグナルを捕獲する
デフォルトの catch リストと ignore リストを変更する
FPE シグナルをトラップする
プログラム内でシグナルを送信する
シグナルの自動処理

15.  C++ のデバッグ

C++ での dbx の使用
dbx での例外処理
例外処理コマンド
例外処理の例
C++ テンプレートでのデバッグ
テンプレートの例
C++ テンプレートのコマンド

16.  dbx を使用した Fortran のデバッグ

Fortran のデバッグ
カレントプロシージャとカレントファイル
大文字
最適化プログラム
dbx のサンプルセッション
セグメント不正のデバッグ
dbx により問題を見つける方法
例外の検出
呼び出しのトレース
配列の操作
Fortran 95 割り当て可能配列
組み込み関数
複合式
論理演算子
Fortran 95 構造型の表示
Fortran 95 構造型へのポインタ

17.  機械命令レベルでのデバッグ

メモリーの内容を調べる
examine または x コマンドの使用
dis コマンドの使用
listi コマンドの使用
機械命令レベルでのステップ実行とトレース
機械命令レベルでステップ実行する
機械命令レベルでトレースする
機械命令レベルでブレークポイントを設定する
あるアドレスにブレークポイントを設定する
adb コマンドの使用
regs コマンドの使用
プラットフォーム固有のレジスタ
Intel レジスタ情報

18.  dbx の Korn シェル機能

実装されていない ksh-88 の機能
ksh-88 から拡張された機能
名前が変更されたコマンド

19.  共有ライブラリのデバッグ

動的リンカー
リンクマップ
起動手順と .init セクション
プロシージャ・リンケージ・テーブル
読み込み済みの共有オブジェクトのデバッグサポート
修正と継続
動的にリンクしたライブラリにブレークポイントを設定する

A.  プログラム状態の変更

dbx のもとでプログラムを実行することの影響
プログラムの状態を変更するコマンドの使用
assign コマンド
pop コマンド
call コマンド
print コマンド
when コマンド
fix コマンド
cont at コマンド

 索引


サン・マイクロシステムズ株式会社
Copyright information. All rights reserved.
ホーム   |   目次   |   前ページへ   |   次ページへ   |   索引