Oracle® Solaris Studio 12.4: dbx コマンドによるデバッグ

印刷ビューの終了

更新: 2015 年 1 月
 
 
第 7 章

呼び出しスタックの使用

この章では、dbx呼び出しスタックを使用するしくみと、呼び出しスタックを操作するときに、where コマンド、hide コマンド、unhide コマンド、および pop コマンドを使用する方法について説明します。

マルチスレッドのプログラムにおいて、これらのコマンドは現在のスレッドの呼び出しスタックに対して作用します。現在のスレッドの変更方法の詳細については、thread コマンドを参照してください。

呼び出しスタックは、呼び出されたが、それぞれの呼び出し元にまだ戻されていない、現在アクティブなすべてのルーチンを表します。スタック フレームは、単一の関数で使用するために割り当てられる呼び出しスタックのセクションです。

呼び出しスタックは上位メモリー (上位アドレス) から下位メモリーに拡大するため、up は呼び出し元 (最終的には main() またはスレッドの開始関数) のフレームに向かい、down は呼び出された関数 (最終的には現在の関数) のフレームに向かうことを意味します。プログラムの現在位置 (ブレークポイント、ステップ実行のあと、プログラムが異常終了してコアファイルが作成された、いずれかの時点で実行されていたルーチン) はメモリー上位に存在しますが、main() のような呼び出し元ルーチンは上位メモリーに位置します。