Compaq OpenVMS
デバッガ説明書


前へ 次へ 目次 索引


8.2.2.4 「Call Stack」メニュー

「Call Stack」メニューは,ソース・ビューとプッシュ・ボタン・ビューの間にありますが,ここには,ソース・ビューに表示されているソース・コードのルーチン名が表示されます。このメニューでは,現在スタックに入れられているルーチン呼び出しがリストされ,ソース・コード表示とシンボル検索の有効範囲をスタック上の任意のルーチンに設定できるようになっています( 第 10.6.2 項 を参照)。

8.2.2.5 プッシュ・ボタン・ビュー

図 8-3 および 表 8-3 では,メイン・ウィンドウ内の省略時のプッシュ・ボタンについて説明します。 第 10.10.3 項 で説明しているように,ボタンおよびボタンに対応したデバッガ・コマンドを変更,追加,削除したり,並べ替えたりできます。

図 8-3 プッシュ・ボタン・ビューの省略時のボタン


表 8-3 プッシュ・ボタン枠の省略時のボタン
ボタン 説明
Stop デバッグ・セッションを終了せずに,プログラムの実行やデバッガによる操作に割り込みをかける
Go 現在のプログラム記憶位置から,実行を開始または再開する。
STEP プログラムをステップ単位で 1 ステップ実行する。省略時の設定では,ソース・コードの中の実行可能な 1 行が 1 ステップになる。
S/in ルーチン呼び出し文で実行が一時停止された場合,呼び出されたルーチンの開始地点の直後へ実行を移す。ルーチン呼び出し文でなければ,STEP と同じ動作をする。
S/ret 現在のルーチンの終了地点へ直接プログラムの実行を移す。
S/call 次のCall命令またはReturn命令へ直接プログラムの実行を移す。
EX ウィンドウ内でユーザが名前を選択した変数の,現在の値をコマンド・ビューに表示する。
E/az ウィンドウ内でユーザが名前を選択した変数の,現在の値をコマンド・ビューに表示する。変数は,0 で終了する ASCII 文字列に変換される。
E/ac ウィンドウ内でユーザが名前を選択した変数の,現在の値をコマンド・ビューに表示する。変数は,長さを指定された ASCII 文字列に変換される。この文字列では,文字列の長さを示す 1 バイトのカウント・フィールドが前に付いている。
EVAL 現在の言語(省略時の場合,メイン・プログラムを含むモジュールの言語)の式の値をコマンド・ビューに表示する。
MON ウィンドウで選択した変数名とその変数の現在の値をモニタ・ビューに表示する。プログラムからデバッガに制御が戻ると,デバッガは値を自動的にチェックし,表示されている値をそれに応じて更新する。

8.2.2.6 コマンド・ビュー

メイン・ウィンドウのプッシュ・ボタンのすぐ下に位置するコマンド・ビューには,コマンド行にタイプしたコマンド入力が入れられ(第 8.3 節 を参照),オプション・ビューに表示される情報以外のデバッガ出力が表示されます。たとえば,次のような出力がメッセージ領域に表示されます。

ポップアップ・メニューから「Clear Command Window」を選択することにより,コマンド・ビュー全体をクリアして,現在のコマンド行プロンプトだけを残しておくことができます。

ポップアップ・メニューから「Clear Command Line」を選択することにより,現在のコマンド行をクリアすることができます。

8.2.3 オプション・ビュー・ウィンドウ

表 8-4 にオプション・ビューの一覧を示します。メイン・ウィンドウの「Options」メニューから「Views...」を選択するとオプション・ビューへアクセスできます。

表 8-4 オプション・ビュー
ビュー 説明
ブレークポイント・ビュー 現在設定されているすべてのブレークポイントの一覧を表示する。ブレークポイントが有効か無効か,または条件付きブレークポイントとして設定されているかどうかを示す。ブレークポイント・ビューでは,各ブレークポイントの状態を変更することもできる。
モニタ・ビュー プログラムの実行時に値をモニタしたい変数の一覧を表示する。プログラムからデバッガに制御が戻ると(たとえば,1ステップ実行したあと,またはブレークポイントに到達したとき),デバッガは表示されている値を更新する。あるいは,ウォッチポイントを設定して,特定の変数が変更されるたびに実行を停止させることができる。また,ユーザが変数の値を変更することもできる。
命令ビュー ユーザ・プログラムのデコード済み命令ストリームを表示する。ユーザは命令にブレークポイントを設定することができる。省略時の設定では,対応するメモリ・アドレスとソース行番号が命令の左側に表示される。このアドレスと行番号を表示しないように選択することもできる。
レジスタ・ビュー すべての機械語レジスタの現在の内容を表示する。プログラムからデバッガに制御が戻ると,デバッガは表示されている値を更新する。レジスタ・ビューでは,ユーザがレジスタ内の値を変更することもできる。
タスキング・ビュー タスキング・プログラムのすべての存在している(未終了)タスクの一覧を表示する。また,各タスクについての情報が表示されるので,ユーザは各タスクの状態を変更することができる。

図 8-5 では,「View」メニューを 図 8-4 のように選択した結果として表示される,ブレークポイント・ビュー,モニタ・ビュー,レジスタ・ビューの構成の例を示します。

図 8-6 では,命令ビューを示しています。このウィンドウは,分割ウィンドウになっているため,使いやすい位置に配置することができます。 図 8-7 は,タスキング・ビューを示しています。

表示されるレジスタと命令はシステム固有なので注意してください。図 8-5 と 図 8-6 は,VAX 固有のレジスタおよび命令です。

すべてのウィンドウは移動したりサイズを変更できます。デバッガを再起動したときにウィンドウとビューの特定の構成が自動的に設定されるように,その構成を保存しておくこともできます(第 10.10.1 項 を参照)。

注意

UI アプリケーションをデバッグするときに,多くのデバッガ・ウィンドウがユーザ・プログラムのウィンドウと重なり合う場合には,X サーバはユーザ・プログラムを異常終了させることがあります。

この問題を回避するには,ユーザ・プログラムに属すウィンドウにデバッガのウィンドウが重ならないようにしてください。

図 8-4 デバッガ・メイン・ウィンドウ


図 8-5 ブレークポイント・ビュー,モニタ・ビュー,レジスタ・ビュー


図 8-6 命令ビュー


図 8-7 タスキング・ビュー


8.2.3.1 オプション・ビュー・ウィンドウのメニュー

図 8-8 と 表 8-5 では,オプション・ビュー・ウィンドウ上のメニューについて説明します。

図 8-8 オプション・ビュー・ウィンドウ上のメニュー


表 8-5 オプション・ビュー・ウィンドウ上のメニュー
メニュー 項目 説明
File Close オプション・ビュー・ウィンドウをクローズする。
  Exit Debugger デバッグ・セッションを終了し,デバッガを終了する。
Break On Exception プログラム実行中にシグナル通知された例外でブレークする。
  Activate All 以前に設定したブレークポイントをすべて有効にする。
  Deactivate All 以前に設定したブレークポイントをすべて無効にする。
  Cancel All デバッガのブレークポイント・リストとブレークポイント・ビューからブレークポイントをすべて削除する。
  Toggle ブレークポイントの有効と無効を切り替える。
  Set/Modify... (特定の条件やアクションに関連付けられた)新しいブレークポイントを指定の箇所に設定する。
  Cancel 個々のブレークポイントをキャンセル(削除)する。
Monitor Expand モニタ・ビューの出力を拡大し,選択されている項目の各構成要素の値と集合体の値を表示する。
  Collapse モニタ・ビューの出力を縮小し,選択されている項目の各構成要素の値は表示せず,集合体の値だけを表示する。
  Deposit... モニタしている要素の値を変更する。
  Toggle Watchpoint 選択されたウォッチポイントの有効と無効を切り替える。
  Typecast サブメニューを使用し,選択された変数の出力を int,long,quad,short,またはchar* に型キャストする。
  Change Radix サブメニューを使用し,選択された変数の出力の基数を 16,8,10,または 2 に変更する。
  Change All Radix サブメニューを使用し,以後モニタするすべての要素の出力の基数を 16,8,10,または 2 に変更する。
  Remove モニタ・ビューから要素を削除する。
Register Change Radix サブメニューを使用し,選択されたレジスタの基数を 16,8,10,または 2 に変更する。
  Change All Radix サブメニューを使用し,すべてのレジスタの基数を 16,8,10,または 2 に変更する。
Tasks Abort 選択されたタスクを次の可能な機会に終了させる。
  Activate 選択されたタスクをアクティブ・タスクにする。
  Hold 選択されたタスクを保留にする。
  Nohold 選択されたタスクの保留を解除する。
  Make Visible 選択されたタスクを可視タスクにする。
  All サブメニューを使用し,すべてのタスクを強制終了するか,またはすべてのタスクの保留を解除する。
Options Views... 次のビューの 1 つまたはいくつかを表示する。
ブレークポイント・ビュー
モニタ・ビュー
レジスタ・ビュー
タスキング・ビュー
命令ビュー
  Customize Buttons... プッシュ・ボタン・ビューのプッシュ・ボタンやそれに対応したデバッガ・コマンドの変更,追加,削除,並べ替えを行う。
  Save Options ウィンドウとビューの構成やプッシュ・ボタンの定義など,会話形式でカスタマイズ可能な Compaq DECwindows Motif for OpenVMS 機能の現在の設定を保存する。これにより,次にデバッガを起動するとき,デバッガの現在の構成が維持されるようになる。
  Restore Default Options システムの省略時デバッガ・リソース・ファイル DECW$SYSTEM_DEFAULTS:VMSDEBUG.DAT をユーザ指定リソース・ファイル DECW$USER_DEFAULTS:VMSDEBUG.DAT にコピーする。省略時のオプションは,次にデバッガを起動するときに有効になる。
  Edit Options File デバッグ・エディタで,ユーザ指定リソース・ファイル DECW$USER_DEFAULTS:VMSDEBUG.DAT のロードと表示を行い,表示と変更ができるようにする。
Help On Context コンテキスト依存のオンライン・ヘルプを表示可能にする。
  On Window OpenVMS デバッガについての情報を表示する。
  On Help オンライン・ヘルプ・システムについての情報を表示する。
  On Version デバッガのこのバージョンについての情報を表示する。
  On Commands デバッガ・コマンドについての情報を表示する。

8.3 プロンプトでのコマンドの入力

Compaq DECwindows Motif for OpenVMS インタフェースはコマンド・インタフェースの上に設けられています。コマンド行は,コマンド・ビューの最終行にあり,コマンド入力プロンプト(DBG�)によって識別されますが,次の場合,このプロンプトにデバッガ・コマンドを入力することができます。

図 8-9 に,コマンド・ビューで RUN コマンドを実行した状態を示します。

図 8-9 プロンプトでのコマンドの入力


Compaq DECwindows Motif for OpenVMS インタフェースのプルダウン・メニューとプッシュ・ボタンを使用する場合,デバッガはユーザの入力をデバッガ・コマンドに変換し,これらのコマンドをコマンド行にエコーバックします。その結果,ユーザがコマンドを記録できるようになります。エコーバックされたコマンドと,ユーザが明示的に入力したコマンドとを視覚的に区別することはできません。

デバッガのコマンド・インタフェースについての詳しい説明は,第 2 部 を参照してください。各コマンドのオンライン・ヘルプについての説明は,第 8.4.3 項 を参照してください。

デバッガ・コマンドはプロンプトで対話的に入力するだけでなく,デバッガ初期化ファイルとコマンド・ファイルに格納しておいて,Compaq DECwindows Motif for OpenVMS 環境内で実行することができます。

また,コマンド入力プロンプトで使用できるキーパッド・サポートを利用することもできます。このキーパッド・サポートは,コマンド・インタフェースに用意されている多様なキーパッド・サポートのサブセットです。キーパッド・サポートについては付録 A で説明します。コンピュータのキーパッドの個々のキーに割り当てられているコマンドを 表 8-6 に示します。

表 8-6 Compaq DECwindows Motif for OpenVMSデバッガ・インタフェースのキーパッド定義
コマンド 対応するキー
Step/Line KP0
Step/Into GOLD-KP0
Step/Over BLUE-KP0
Examine KP1
Examine^ GOLD-KP1
Go KP,
Show Calls KP5
Show Calls 3 GOLD-KP5

このいずれかのコマンドを入力するには,各コマンドに対応する,キーパッド上の 1 つまたは複数のキーを押してから ENTER キーを押します(GOLD キーは PF1,BLUE キーは PF4 です)。

キーのバインディングの変更,またはコマンドを割り当てられていないキーパッド・キーへの割り当てについては,第 10.10.4.4 項 を参照してください。


前へ 次へ 目次 索引