[ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]

# OpenVMS
デバッガ説明書

AA-PY9GE-TE

1999年 4月

本書は，高級言語とアセンブリ言語のプログラマのためのOpenVMS デバッガの機能について説明します。

改訂／更新情報: | OpenVMS V7.1『デバッガ説明書』の改訂版です。

ソフトウェア・バージョン: | 日本語OpenVMS Alpha V7.2
| 日本語OpenVMS VAX V7.2

コンパックコンピュータ株式会社

1999年 4月

本書の著作権はコンパックコンピュータ株式会社が保有しており，本書中の解説および図， 表はコンパックの文書による許可なしに，その全体または一部を， いかなる場合にも再版あるいは複製することを禁じます。 また，本書に記載されている事項は，予告なく変更されることがありますので， あらかじめご承知おきください。万一，本書の記述に誤りがあった場合でも， コンパックは一切その責任を負いかねます。

本書で解説するソフトウェア(対象ソフトウェア)は，所定のライセンス契約が締結された場合に限り， その使用あるいは複製が許可されます。

(c) Compaq Computer Corporation 1999. All Rights Reserved.

以下は，米国Compaq Computer Corporationの商標です。

Alpha, Compaq, DEC Ada, DEC BASIC, DEC Fortran, DECdirect, DECnet, DECthreads, DECterm, DIGITAL, eXcursion, LAT, MicroVAX, OpenVMS, PATHWORKS, VAX, VAX Ada, VMS, VT,およびCompaqロゴ。

以下は，他社の商標です。

BASICはthe Trustees of Dartmouth College，(Dartmouth Structured Basic) D.B.A. Dartmouth Collegeの商標です。

INSTALLSHIELDはStirling Technologies社の商標です。

IntelはIntel社の商標です。

IEEEおよびPOSIXは米国Institute of Electrical and Electronics Engineers社の商標です。

Microsoft Windows NTおよびWindows NT，Windows 95はMicrosoft社の商標です。

Motif，OSF，OSF/1，OSF/MotifおよびOpen Software Foundationは米国Open Software Foundation 社の商標です。

OSIは米国CA Management社の商標です。

その他のすべての商標および登録商標は，それぞれの所有者が保有しています。

原典 | OpenVMS Version 7.2 Debugger Manual
| Copyright (c)1999 Compaq Computer Corporation

# 目次

まえがき

第I部 デバッガ概要

1 デバッガ概要

第II部 コマンド・インタフェース

2 デバッガの起動

3 プログラム実行の制御とモニタ

4 プログラム・データの検査と操作

5 プログラム内シンボルへのアクセス制御

6 ソース・コードの表示の制御

7 画面モード

第III部 DECwindowsインタフェース

8 DECwindows Motifインタフェースの概要

9 デバッグ・セッションの開始と終了

10 デバッガの使用方法

第IV部 PCクライアント・インタフェース

11 デバッガのPCクライアント/サーバ・ インタフェースの概要

第V部 高度なトピック

12 ヒープ・アナライザの使用

13 その他の便利な機能

14 特殊なデバッグ

15 マルチプロセス・プログラムのデバッグ

16 ベクタ化されたプログラムのデバッグ(VAXのみ)

17 タスキング・プログラムのデバッグ

第VI部 付録

A 定義済みのキー機能

B 組み込みシンボルと論理名

C 各言語に対するデバッガ・ サポートの要約

D EIGHTQUEENS.C

索引

例

図

表

## 詳細目次

まえがき

第I部 デバッガ概要

1 デバッガ概要 1.1 デバッガの概要

1.1.1 デバッガの機能

1.1.2 便利な機能

1.2 デバッグのための実行イメージの準備

1.2.1 デバッグのためのプログラムのコンパイル

1.2.2 デバッグのためのプログラムのリンク

1.2.3 LINKコマンドとRUNコマンドによるデバッガ起動の制御

1.3 保持デバッガでのプログラムのデバッグ

1.3.1 保持デバッガの起動

1.3.2 プログラム実行の終了

1.3.3 保持デバッガからの同じプログラムの実行

1.3.4 保持デバッガからの他のプログラムの実行

1.4 プログラムの実行に対する割り込みとデバッガ・ コマンドの強制終了

1.5 デバッガ・セッションの割り込みと再開

1.6 プログラムの実行によるデバッガの起動

1.7 実行中のプログラムに割り込みをかけたあとのデバッガの起動

1.8 デバッガ・セッションの終了

1.9 複数のプロセスのデバッグ構成の設定

1.10 DECwindows Motifを実行しているワークステーションでのプログラムのデバッグ

1.11 デバッグ・クライアントを実行しているPCからのプログラムのデバッグ

1.12 CLIなしで動作する切り離されたプロセスのデバッグ

1.13 デバッガ・コマンドの要約

1.13.1 デバッガ・ セッションの開始と終了

1.13.2 プログラム実行の制御とモニタ

1.13.3 データの検査と操作

1.13.4 型の選択の制御と基数の制御

1.13.5 シンボル検索とシンボル化の制御

1.13.6 ソース・コードの表示

1.13.7 画面モードの使用

1.13.8 ソース・コードの編集

1.13.9 シンボルの定義

1.13.10 キーパッド・モードの使用

1.13.11 コマンド・ プロシージャ，ログ・ファイル，初期化ファイルの使用

1.13.12 制御構造の使用

1.13.13 マルチプロセス・ プログラムのデバッグ

1.13.14 補助的なコマンド

第II部 コマンド・インタフェース

2 デバッガの起動 2.1 デバッガ・コマンドの入力とオンライン・ ヘルプへのアクセス

2.2 ソース・コードの表示

2.2.1 非画面モード

2.2.2 画面モード

2.3 プログラム実行の制御とモニタ

2.3.1 プログラム実行の開始または再開

2.3.2 ステップ単位でのプログラムの実行

2.3.3 実行停止箇所の決定

2.3.4 ブレークポイントを使用したプログラムの実行の中断

2.3.5 トレースポイントを使用したプログラム実行のトレース

2.3.6 ウォッチポイントを使用した変数値の変化のモニタ

2.4 プログラム・データの検査と操作

2.4.1 変数値の表示

2.4.2 変数への値の代入

2.4.3 言語式の評価

2.5 プログラム内シンボルへのアクセス制御

2.5.1 モジュールの設定と取り消し

2.5.2 シンボルのあいまいさの解消

2.6 デバッギング・セッションの例

3 プログラム実行の制御とモニタ 3.1 プログラムを実行するコマンド

3.2 ステップ単位でのプログラムの実行

3.2.1 STEPコマンドの動作の変更

3.2.2 ルーチン内のステップ実行とルーチンの1ステップ実行

3.3 ブレークポイントによる実行の中断とトレースポイントによるトレース

3.3.1 個々のプログラム記憶位置へのブレークポイントまたはトレースポイントの設定

3.3.1.1 シンボリック・ アドレスの指定

3.3.1.2 メモリ内の記憶位置の指定

3.3.1.3 メモリ・ アドレスの取得とシンボル化

3.3.2 行または命令へのブレークポイントまたはトレースポイントの設定

3.3.3 エミュレートされた命令へのブレークポイントの設定(Alphaのみ)

3.3.4 ブレークポイントまたはトレースポイントでのデバッガ動作制御

3.3.5 例外発生時点でのブレークポイントまたはトレースポイントの設定

3.3.6 イベント発生時点でのブレークポイントまたはトレースポイントの設定

3.3.7 ブレークポイントまたはトレースポイントの無効化， 有効化，および取り消し

3.4 変数および他のプログラム記憶位置の変更のモニタ

3.4.1 ウォッチポイントの無効化， 有効化，および取り消し

3.4.2 ウォッチポイント・ オプション

3.4.3 非静的変数のウォッチ

3.4.3.1 実行速度

3.4.3.2 非静的変数へのウォッチポイントの設定

3.4.3.3 非静的変数のウォッチ・ オプション

3.4.3.4 インストールされた書き込み可能な共用可能イメージへのウォッチポイントの設定

4 プログラム・データの検査と操作 4.1 概要

4.1.1 デバッグ時の変数へのアクセス

4.1.2 EXAMINEコマンドの使用

4.1.3 DUMPコマンドの使用

4.1.4 DEPOSITコマンドの使用

4.1.5 アドレス式とそれに対応した型

4.1.6 言語式の評価

4.1.6.1 言語式での変数の使用

4.1.6.2 デバッガによる数値の型変換

4.1.7 言語式と比較した場合のアドレス式

4.1.8 現在の値，前の値， および次の値の指定

4.1.9 言語固有性と現在の言語

4.1.10 整数データを入力または表示するための基数の指定

4.1.11 メモリ・アドレスの取得とシンボル化

4.2 変数の検査と値の格納

4.2.1 スカラ型

4.2.2 ASCII文字列型

4.2.3 配列型

4.2.4 レコード型

4.2.5 ポインタ(アクセス)型

4.3 命令の検査と値の格納

4.3.1 命令の検査

4.3.2 命令への値の格納(VAXのみ)

4.4 レジスタの検査と値の格納

4.4.1 プロセッサ・ステータス・ ロングワード(VAXのみ)

4.4.2 プロセッサ・ステータス(Alphaのみ)

4.5 検査と格納を行う場合の型の指定

4.5.1 シンボリック名を持たないプログラム記憶位置に対する型の定義

4.5.2 現在の型の上書き

4.5.2.1 整数型

4.5.2.2 ASCII文字列型

4.5.2.3 ユーザ宣言型

5 プログラム内シンボルへのアクセス制御 5.1 コンパイル時およびリンク時のシンボル情報制御

5.1.1 コンパイル

5.1.2 ローカル・シンボルとグローバル・ シンボル

5.1.3 リンク

5.1.4 デバッグ済みイメージ内のシンボル情報制御

5.1.5 個別のシンボル・ファイルの作成(Alphaのみ)

5.2 モジュールの設定と取り消し

5.3 シンボルのあいまいさの解消

5.3.1 シンボル検索規則

5.3.2 シンボルを一意に指定するためのSHOW SYMBOL コマンドとパス名の使用

5.3.2.1 パス名の単純化

5.3.2.2 呼び出しスタック上ルーチン内のシンボルの指定

5.3.2.3 グローバル・ シンボルの指定

5.3.2.4 ルーチンの起動の指定

5.3.3 シンボル検索の有効範囲を指定するSET SCOPE の使用

5.4 共用可能イメージのデバッグ

5.4.1 共用可能イメージをデバッグするためのコンパイルとリンク

5.4.2 共用可能イメージ内のシンボルへのアクセス

5.4.2.1 PC範囲内のシンボルへのアクセス(動的モード)

5.4.2.2 任意のイメージ内のシンボルへのアクセス

5.4.2.3 実行時ライブラリおよびシステム・ イメージ内のユニバーサル・シンボルへのアクセス

5.4.3 常駐イメージのデバッグ(Alphaのみ)

6 ソース・コードの表示の制御 6.1 デバッガがソース・コード情報を取得する方法

6.2 ソース・ファイルの記憶位置の指定

6.3 行番号の指定によるソース・コードの表示

6.4 コード・アドレス式の指定によるソース・ コードの表示

6.5 文字列の検索によるソース・コードの表示

6.6 ステップ実行後，およびイベントポイントでのソースの表示の制御

6.7 ソースの表示用のマージンの設定

7 画面モード 7.1 概念と用語

7.2 ディスプレイ対象

7.2.1 DO (コマンド[; . . . ]) ディスプレイ対象

7.2.2 INSTRUCTIONディスプレイ対象

7.2.3 INSTRUCTION(コマンド)ディスプレイ対象

7.2.4 OUTPUTディスプレイ対象

7.2.5 レジスタ・ディスプレイ対象

7.2.6 SOURCEディスプレイ対象

7.2.7 SOURCE (コマンド)ディスプレイ対象

7.2.8 PROGRAMディスプレイ対象

7.3 ディスプレイ属性の割り当て

7.4 定義済みディスプレイ

7.4.1 定義済みソース・ ディスプレイ(SRC)

7.4.1.1 任意のプログラム記憶位置でのソース・ コードの表示

7.4.1.2 呼び出しスタック上にあるルーチンのソース・ コードの表示

7.4.2 定義済み出力ディスプレイ(OUT)

7.4.3 定義済みプロンプト・ ディスプレイ(PROMPT)

7.4.4 定義済み機械語命令ディスプレイ(INST)

7.4.4.1 機械語命令ディスプレイの表示

7.4.4.2 任意のプログラム記憶位置にある命令の表示

7.4.4.3 呼び出しスタック上にあるルーチンの命令の表示

7.4.5 定義済みレジスタ・ ディスプレイ(REG，IREG，FREG)

7.4.5.1 呼び出しスタック上にあるルーチンのレジスタ値の表示

7.5 既存のディスプレイの操作

7.5.1 ディスプレイのスクロール

7.5.2 ディスプレイの表示，非表示， 除去，取り消し

7.5.3 ディスプレイの画面内移動

7.5.4 ディスプレイの拡大または縮小

7.6 新しいディスプレイの作成

7.7 ディスプレイ・ウィンドウの指定

7.7.1 行数と桁数によるウィンドウの指定

7.7.2 定義済みウィンドウの使用

7.7.3 新しいウィンドウ定義の作成

7.8 ディスプレイ構成のサンプル

7.9 ディスプレイと画面状態の保存

7.10 画面の高さと幅の変更

7.11 画面に関連した組み込みシンボル

7.11.1 画面の高さと幅

7.11.2 ディスプレイ組み込みシンボル

7.12 画面の寸法と定義済みウィンドウ

7.13 各国に対応した画面モード

第III部 DECwindowsインタフェース

8 DECwindows Motifインタフェースの概要 8.1 はじめに

8.1.1 便利な機能

8.2 デバッガのウィンドウとメニュー

8.2.1 省略時のウィンドウ構成

8.2.2 メイン・ウィンドウ

8.2.2.1 タイトル・バー

8.2.2.2 ソース・ビュー

8.2.2.3 メイン・ウィンドウ上のメニュー

8.2.2.4 「Call Stack」メニュー

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

8.2.2.6 コマンド・ビュー

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

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

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

8.3.1 DECwindows Motifインタフェース内で使用不可能なデバッガ・ コマンド

8.4 デバッガについてのオンライン・ ヘルプの表示

8.4.1 コンテキスト依存のヘルプの表示

8.4.2 「Overview」ヘルプ・トピックとサブトピックの表示

8.4.3 デバッガ・コマンドについてのヘルプの表示

8.4.4 デバッガの診断メッセージについてのヘルプの表示

9 デバッグ・セッションの開始と終了 9.1 保持デバッガの起動

9.2 プログラムの実行の終了

9.3 現在のデバッグ・セッションからの同一プログラムの再実行

9.4 現在のデバッグ・セッションからの別のプログラムの実行

9.5 プログラムの実行に対する割り込みおよびデバッガ動作の強制終了

9.6 デバッグ・セッションの終了

9.7 デバッガを起動するときの追加オプション

9.7.1 プログラムの実行によるデバッガの起動

9.7.2 実行中のプログラムの割り込み後のデバッガの起動

9.7.3 デバッガの省略時のインタフェースの変更

9.7.3.1 別のワークステーション上でのデバッガのDECwindows Motif インタフェースの表示

9.7.3.2 DECtermウィンドウへのデバッガのコマンド・ インタフェースの表示

9.7.3.3 別のDECtermウィンドウへのコマンド・ インタフェースとプログラムの入出力(I/O)の個別表示

9.7.3.4 DBG$DECW$DISPLAYとDECW$DISPLAYの説明

9.8 Motifデバッグ・ クライアントの起動

9.8.1 ソフトウェアの必要条件

9.8.2 サーバの起動

9.8.3 プライマリ・ クライアントとセカンダリ・クライアント

9.8.4 Motifクライアントの起動

9.8.5 セッションの切り替え

9.8.6 クライアント/サーバ・ セッションの終了

10 デバッガの使用方法 10.1 ユーザ・プログラムのソース・ コードの表示

10.1.1 別ルーチンのソース・ コードの表示

10.1.2 別モジュールのソース・ コードの表示

10.1.3 目的のソース・コードを表示できない場合

10.1.4 ソース・ファイルの記憶位置の指定

10.2 ユーザ・プログラムの編集

10.3 プログラムの実行

10.3.1 実行の停止箇所の特定

10.3.2 プログラム実行の開始または再開

10.3.3 プログラムのソース行の1行ずつの実行

10.3.4 呼び出されるルーチン内の命令のステップ実行

10.3.5 呼び出されたルーチンからの戻り

10.4 ブレークポイントの設定による実行の中断

10.4.1 ソース行へのブレークポイントの設定

10.4.2 ソース・ブラウザによるルーチン上のブレークポイントの設定

10.4.3 例外ブレークポイントの設定

10.4.4 現在設定されているブレークポイントの識別

10.4.5 条件付きブレークポイントの設定

10.4.6 アクション・ブレークポイントの設定

10.5 変数の検査と操作

10.5.1 ウィンドウでの変数名の選択

10.5.2 変数の現在値の表示

10.5.3 変数の現在値の変更

10.5.4 変数のモニタ

10.5.4.1 集合体(配列または構造体)変数のモニタ

10.5.4.2 ポインタ(アクセス)変数のモニタ

10.5.5 変数のウォッチ

10.5.6 モニタされたスカラ型変数の値の変更

10.6 プログラム変数へのアクセス

10.6.1 静的変数と非静的(自動)変数へのアクセス

10.6.2 呼び出しスタックを基準とする現在の有効範囲の設定

10.6.3 変数やその他のシンボルの検索方法

10.7 レジスタに格納されている値の表示と変更

10.8 ユーザ・プログラムのデコード済み命令ストリームの表示

10.9 タスキング・プログラムのデバッグ

10.9.1 タスク情報の表示

10.9.2 タスク特性の変更

10.10 デバッガのDECwindows Motifインタフェースのカスタマイズ

10.10.1 デバッガ・ビューの起動時構成の定義

10.10.2 ソース・ビューと命令ビュー内の行番号の表示と非表示

10.10.3 プッシュ・ボタンの変更， 追加，削除，並べ替え

10.10.3.1 ボタンのラベルまたは対応するコマンドの変更

10.10.3.2 新しいボタンおよび対応するコマンドの追加

10.10.3.3 ボタンの削除

10.10.3.4 ボタンの並べ替え

10.10.4 デバッガ・リソース・ ファイルの編集

10.10.4.1 「Breakpoint」ダイアログ・ ボックスを表示するキー・シーケンスの定義

10.10.4.2 言語依存のテキスト選択のキー・ シーケンスの定義

10.10.4.3 表示テキスト用のフォントの定義

10.10.4.4 キーパッド上のキーのバインディングの定義

10.11 切り離されたプロセスのデバッグ

第IV部 PCクライアント・インタフェース

11 デバッガのPCクライアント/サーバ・ インタフェースの概要 11.1 概要

11.2 インストール

11.3 プライマリ・クライアントとセカンダリ・ クライアント

11.4 PCクライアント・ワークスペース

11.5 サーバ接続の確立

11.5.1 トランスポートの選択

11.5.2 セカンダリ接続

11.6 サーバ接続の終了

11.6.1 クライアントとサーバの終了

11.6.2 クライアントのみの終了

11.6.3 サーバのみの停止

11.7 ドキュメント

第V部 高度なトピック

12 ヒープ・アナライザの使用 12.1 ヒープ・アナライザ・セッションの開始

12.1.1 ヒープ・アナライザの起動

12.1.2 ヒープ・アナライザのウィンドウ

12.1.3 ヒープ・アナライザのプルダウン・ メニュー

12.1.4 ヒープ・アナライザのコンテキスト依存のメニュー

12.1.5 ソース・ディレクトリの設定

12.1.6 アプリケーションの起動

12.1.7 表示速度の調節

12.2 省略時設定のディスプレイでの作業

12.2.1 「Memory Map」ディスプレイ

12.2.2 「Memory Map」ディスプレイのオプション

12.2.3 詳細な情報についてのオプション

12.2.4 トレースバック情報の表示

12.2.5 トレースバック情報とソース・ コードとの対応づけ

12.3 タイプ設定とタイプ・ディスプレイの変更

12.3.1 詳細な情報についてのオプション

12.3.2 タイプ設定の変更

12.3.3 「Views-and-Types」ディスプレイの変更

12.3.3.1 変更の有効範囲の選択

12.3.3.2 ディスプレイ・オプションの選択

12.4 ヒープ・アナライザの終了

12.5 サンプル・セッション

12.5.1 会話型コマンドの表示の取り出し

12.5.2 タイプ設定の変更

12.5.3 トレースバック情報の表示

12.5.4 トレースバックとソース・ コードとの相互対応

12.5.5 ソース・コードにある割り当てエラーの発見

13 その他の便利な機能 13.1 デバッガ・ コマンド・プロシージャの使用

13.1.1 基本的な規則

13.1.2 コマンド・プロシージャへのパラメータの引き渡し

13.2 デバッガ初期化ファイルの使用

13.3 ログ・ファイルへのデバッグ・セッションの記録

13.4 コマンド，アドレス式，値の各シンボルの定義

13.4.1 コマンドのシンボルの定義

13.4.2 アドレス式のシンボルの定義

13.4.3 値のシンボルの定義

13.5 ファンクション・ キーへのコマンドの割り当て

13.5.1 基本的な規則

13.5.2 より高度な方法

13.6 コマンド入力のための制御構造の使用

13.6.1 FORコマンド

13.6.2 IFコマンド

13.6.3 REPEATコマンド

13.6.4 WHILEコマンド

13.6.5 EXITLOOPコマンド

13.7 プログラムの実行から独立したルーチンの呼び出し

14 特殊なデバッグ 14.1 最適化されたコードのデバッグ

14.1.1 削除された変数

14.1.2 コーディング順序の変更

14.1.3 セマンティク・ステップ実行(Alphaのみ)

14.1.4 レジスタの使用

14.1.5 条件コードの使用(VAXのみ)

14.1.6 存在期間分割変数

14.2 画面用プログラムのデバッグ

14.2.1 端末を占有するための保護の設定

14.3 複数言語プログラムのデバッグ

14.3.1 現在のデバッガ言語の制御

14.3.2 言語に固有の相違点

14.3.2.1 省略時の基数

14.3.2.2 言語式の評価

14.3.2.3 配列およびレコード

14.3.2.4 大文字/小文字の区別

14.3.2.5 初期化コード

14.3.2.6 定義済みのブレークポイント

14.3.2.7 STEP/OVERコマンドとFortran (VAX のみ)

14.4 スタックの破損からの回復

14.5 例外ハンドラおよび条件ハンドラのデバッグ

14.5.1 例外へのブレークポイントまたはトレースポイントの設定

14.5.2 例外ブレークポイントでの実行の再開

14.5.3 条件ハンドラへのデバッガの影響

14.5.3.1 1次ハンドラ

14.5.3.2 2次ハンドラ

14.5.3.3 呼び出しフレーム・ ハンドラ(アプリケーションで宣言されたもの)

14.5.3.4 最終ハンドラおよびラスト・ チャンス・ハンドラ

14.5.4 例外関連の組み込みシンボル

14.6 終了ハンドラのデバッグ

14.7 ASTドライブ式プログラムのデバッグ

14.7.1 ASTの実行要求の禁止と許可

14.8 変換されたイメージのデバッグ(Alphaのみ)

14.9 同期化または通信機能を実行するプログラムのデバッグ

14.10 インライン・ルーチンのデバッグ

15 マルチプロセス・プログラムのデバッグ 15.1 マルチプロセス・ モデル

15.2 基本的なマルチプロセス・ デバッグ方法

15.2.1 マルチプロセス・デバッグ・ セッションの開始

15.2.2 可視プロセスとプロセス固有コマンド

15.2.3 プロセス情報の取得

15.2.4 作成されたプロセスをデバッガの制御下に置く方法

15.2.5 指定されたプロセスにコマンドをブロードキャストする方法

15.2.6 実行制御

15.2.6.1 SET MODE NOINTERRUPTコマンドを使用した実行制御

15.2.6.2 特定のプロセスを凍結する方法

15.2.7 可視プロセスの変更

15.2.8 動的プロセス設定

15.2.9 イメージ終了のモニタ

15.2.10 デバッガの制御からのプロセスの解放

15.2.11 特定のプロセスの終了

15.2.12 プログラム実行への割り込み

15.2.13 デバッグ・ セッションの終了

15.3 補足情報

15.3.1 デバッグ構成とプロセスの関係

15.3.1.1 省略時のデバッグ構成の設定

15.3.1.2 マルチプロセス・デバッグ構成の設定

15.3.1.3 デバッグ時のプロセス関係

15.3.2 デバッガ・コマンド内のプロセス指定

15.3.3 プロセスの起動と終了のモニタ

15.3.4 イメージの実行に割り込みをかけてデバッガに接続する方法

15.3.4.1 Ctrl/Y-DEBUGシーケンスを使用したデバッガの起動

15.3.4.2 CONNECTコマンドを使用したイメージへの割り込み

15.3.5 指定のプロセスを解放して再開する実行

15.3.6 マルチプロセス・ デバッグの画面モード機能

15.3.7 グローバル・セクション内でのウォッチポイントの設定(Alphaのみ)

15.3.8 マルチプロセス・ コマンドを省略時の構成で使用する方法

15.3.9 マルチプロセス・デバッグのシステム要件

15.3.9.1 ユーザ・クォータ

15.3.9.2 システム・リソース

16 ベクタ化されたプログラムのデバッグ(VAXのみ) 16.1 ベクタ型プロセッサについての情報の入手

16.2 ベクタ命令の実行の制御とモニタ

16.2.1 次のベクタ命令までのプログラム実行

16.2.2 ベクタ命令に対するブレークポイントとトレースポイントの設定

16.2.3 ベクタ・レジスタ上へのウォッチポイントの設定

16.3 ベクタ・レジスタの検査と値の格納

16.3.1 ベクタ・レジスタとベクタ制御レジスタの指定

16.3.2 ベクタ数レジスタの検査と値の格納

16.3.3 ベクタ長レジスタの検査と値の格納

16.3.4 ベクタ・マスク・レジスタの検査と値の格納

16.3.5 ベクタ・レジスタ(V0〜V15)の検査と値の格納

16.4 ベクタ命令の検査と値の格納

16.4.1 ベクタ命令とそのオペランドの検査

16.4.2 ベクタ命令の格納

16.5 ベクタ・レジスタまたはベクタ命令を検査するときのマスクの使用方法

16.5.1 省略時のマスクとしてのVMRの使用方法

16.5.2 VMRの断面をマスクとして使用する方法

16.5.3 VMR以外のマスクの使用方法

16.6 複合ベクタ・アドレス式の検査

16.7 ベクタ浮動小数点例外の結果の表示

16.8 スカラとベクタの同期化の制御

16.9 プログラムのベクタ状態に影響を与えることがある呼び出しルーチン

16.10 画面モードでのベクタ・レジスタ・ データの表示

16.11 問題点と制限事項

17 タスキング・プログラムのデバッグ 17.1 DECthreads用語とAda用語の対応表

17.2 タスキング・プログラムの例

17.2.1 Cのマルチスレッド・ プログラムの例

17.2.2 Adaのタスキング・ プログラムの例

17.3 デバッガ・コマンドによるタスクの指定

17.3.1 アクティブ・タスクと可視タスクの定義

17.3.2 Adaのタスキングの構文

17.3.3 タスクID

17.3.4 タスク組み込みシンボル

17.3.4.1 呼び出す側のタスクのシンボル(Ada専用)

17.4 タスク情報の表示

17.4.1 DECthreadsタスクのタスク情報の表示

17.4.2 Adaタスクのタスク情報の表示

17.5 タスク特性の変更

17.5.1 タスクの保留によるタスク・ スイッチの制御

17.5.2 タイム・スライス機能を使用するプログラムのデバッグ(VAXのみ)

17.6 実行の制御とモニタ

17.6.1 タスク依存およびタスク非依存のデバッガ・ イベントポイントの設定

17.6.2 DECthreadsタスキング構造へのブレークポイントの設定

17.6.3 Adaタスク本体，エントリ呼び出し， およびaccept文へのブレークポイントの設定

17.6.4 タスク・イベントのモニタ

17.7 タスク・デバッグについての補足

17.7.1 デッドロック状態になるプログラムのデバッグ

17.7.2 デバッガによる自動スタック・ チェック

17.7.3 AdaタスクをデバッグするときのCtrl/Yの使用

第VI部 付録

A 定義済みのキー機能 A.1 機能DEFAULT，GOLD ，BLUE

A.2 LK201キーボードに固有なキー定義

A.3 表示のスクロール，移動， 拡大，縮小を行うキー

A.4 オンライン・キーパッド・ キー図

A.5 デバッガのキー定義

B 組み込みシンボルと論理名 B.1 SS$_DEBUG条件

B.2 論理名

B.3 組み込みシンボル

B.3.1 レジスタの指定

B.3.2 識別子の作成

B.3.3 コマンド・プロシージャに渡されるパラメータの数

B.3.4 デバッガ・インタフェース(コマンドまたはDECwindows Motif) の決定

B.3.5 入力基数の制御

B.3.6 プログラム記憶位置と要素の現在値の指定

B.3.7 アドレス式におけるシンボルと演算子の使用方法

B.3.8 例外情報の入手

B.3.9 呼び出しスタック上の現在の有効範囲， 次の有効範囲，前の有効範囲の指定

C 各言語に対するデバッガ・ サポートの要約 C.1 概要

C.2 Ada

C.2.1 Adaの名前とシンボル

C.2.1.1 Adaの名前

C.2.1.2 定義済みの属性

C.2.1.2.1 列挙型の属性の指定

C.2.1.2.2 オーバロードされた列挙リテラルの解決

C.2.2 演算子と式

C.2.2.1 言語式の演算子

C.2.2.2 言語式

C.2.3 データ型

C.2.4 コンパイルとリンク

C.2.5 ソースの表示

C.2.6 EDITコマンド

C.2.7 GOコマンドとSTEPコマンド

C.2.8 Adaのライブラリ・ パッケージのデバッグ

C.2.9 定義済みブレークポイント

C.2.10 例外のモニタ

C.2.10.1 すべての例外のモニタ

C.2.10.2 特定の例外のモニタ

C.2.10.3 処理される例外と例外ハンドラのモニタ

C.2.11 データの検査と操作

C.2.11.1 レコード

C.2.11.2 アクセス型

C.2.12 モジュール名とパス名

C.2.13 シンボル検索規則

C.2.14 モジュールの設定

C.2.14.1 パッケージ本体のためのモジュールの設定

C.2.15 オーバロードされた名前とシンボルの解決

C.2.16 CALLコマンド

C.3 BASIC

C.3.1 言語式の演算子

C.3.2 言語式とアドレス式の構造

C.3.3 データ型

C.3.4 デバッグのためのコンパイル

C.3.5 定数

C.3.6 式の評価

C.3.7 行番号

C.3.8 ルーチンへのステップ

C.3.9 シンボル参照

C.3.10 ウォッチポイント

C.4 BLISS

C.4.1 言語式の演算子

C.4.2 言語式とアドレス式の構造

C.4.3 データ型

C.5 CC

C.5.1 言語式の演算子

C.5.2 言語式とアドレス式の構造

C.5.3 データ型

C.5.4 大文字小文字の区別

C.5.5 静的変数と非静的変数

C.5.6 スカラ変数

C.5.7 配列

C.5.8 文字列

C.5.9 構造体と共用体

C.6 C++バージョン5.5および5.5以降(Alphaのみ)

C.6.1 言語式における演算子

C.6.2 言語式とアドレス式における構造体

C.6.3 データ型

C.6.4 大文字小文字の区別

C.6.5 クラスに関する情報の表示

C.6.6 オブジェクトに関する情報の表示

C.6.7 ウォッチポイントの設定

C.6.8 デバッグ関数

C.6.9 C++デバッガ・サポートに関する制限事項

C.7 C++

C.7.1 %nameレキシカル関数

C.7.2 言語式の演算子

C.7.3 言語式とアドレス式の構造

C.7.4 データ型

C.7.5 大文字小文字の区別

C.7.6 修飾子がついたクラス名

C.7.7 C++のデータに対するデバッガの使用法

C.7.7.1 非静的データ・メンバ

C.7.7.1.1 継承されないデータ・ メンバ

C.7.7.1.2 継承されるデータ・メンバ

C.7.7.1.3 継承される仮想データ・ メンバ

C.7.7.2 静的データ・メンバ

C.7.7.3 参照オブジェクトと参照メンバ

C.7.7.4 メンバを指すポインタ

C.7.7.5 型によるエンティティの参照

C.7.8 C++の関数に対するOpenVMSデバッガの使用

C.7.8.1 オーバロードされた関数

C.7.8.2 静的メンバ関数および非静的メンバ関数の参照

C.7.8.3 コンストラクタの参照

C.7.8.4 デストラクタの参照

C.7.8.5 変換の参照

C.7.8.6 ユーザ定義演算子の参照

C.7.8.7 関数の引数の参照

C.8 COBOL

C.8.1 言語式の演算子

C.8.2 言語式とアドレス式の構造

C.8.3 データ型

C.8.4 ソース表示

C.8.5 COBOLのINITIALIZE文と大きいテーブル(配列) (Alpha のみ)

C.9 DIBOL (VAXのみ)

C.9.1 言語式の演算子

C.9.2 言語式とアドレス式の構造

C.9.3 データ型

C.10 Fortran

C.10.1 言語式の演算子

C.10.2 言語式とアドレス式の構造

C.10.3 定義済みのシンボル

C.10.4 データ型

C.10.5 初期化コード

C.11 MACRO-32

C.11.1 言語式の演算子

C.11.2 言語式とアドレス式の構造

C.11.3 データ型

C.11.4 MACRO-32コンパイラ(AMACRO) (Alpha 専用)

C.11.4.1 コードの再配置

C.11.4.2 シンボリック変数

C.11.4.3 $ARGnシンボルを使用しない引数検索

C.11.4.4 検索しやすい引数

C.11.4.5 検出しにくい引数

C.11.4.6 浮動小数点数データ付きのコードのデバッグ

C.11.4.7 パック10進数データ付きのコードのデバッグ

C.12 MACRO-64 (Alphaのみ)

C.12.1 言語式の演算子

C.12.2 言語式とアドレス式の構造

C.12.3 データ型

C.13 PASCAL

C.13.1 言語式の演算子

C.13.2 言語式とアドレス式の構造

C.13.3 定義済みのシンボル

C.13.4 組み込み関数

C.13.5 データ型

C.13.6 補足情報

C.13.7 制限事項

C.14 PL/I

C.14.1 言語式の演算子

C.14.2 言語式とアドレス式の構造

C.14.3 データ型

C.14.4 静的変数と非静的変数

C.14.5 データの検査と操作

C.14.5.1 EXAMINEコマンドの例

C.14.5.2 デバッガのサポートについての注意事項

C.15 RPG II (VAXのみ)

C.15.1 言語式の演算子

C.15.2 言語式とアドレス式の構造

C.15.3 データ型

C.15.4 ブレークポイントまたはトレースポイントの設定

C.15.4.1 仕様

C.15.4.2 ラベル

C.15.5 EXAMINEコマンド

C.15.6 DEPOSITコマンド

C.15.7 EDITコマンド

C.16 SCAN (VAXのみ)

C.16.1 言語式の演算子

C.16.2 言語式とアドレス式の構造

C.16.3 定義済みのシンボル

C.16.4 データ型

C.16.5 名前

C.16.6 実行の制御

C.16.6.1 ブレークポイントとトレースポイント

C.16.6.2 ウォッチポイント

C.16.7 検査と格納

C.16.7.1 STRING変数

C.16.7.2 FILL変数

C.16.7.3 POINTER変数

C.16.7.4 TREE変数とTREEPTR変数

C.16.7.5 RECORD変数とOVERLAY変数

C.17 UNKNOWN言語

C.17.1 言語式の演算子

C.17.2 言語式とアドレス式の構造

C.17.3 定義済みのシンボル

C.17.4 データ型

D EIGHTQUEENS.C D.1 EIGHTQUEENS.C

D.2 8QUEENS.C

索引

例 1-1 /DEBUG修飾子によるプログラムのコンパイル

1-2 /DEBUG修飾子を使用したプログラムのリンク

1-3 /OPTIONS_FILE修飾子を使用したプログラムのリンク(VAXのみ)

2-1 サンプル・プログラムSQUARES

2-2 プログラムSQUARESを使用したデバッギング・ セッション例

9-1 コマンド・プロシージャSEPARATE_WINDOW.COM

10-1 システムの省略時デバッガ・ リソース・ファイル(DECW$SYSTEM_DEFAULTS:VMSDEBUG.DAT)

17-1 Cのマルチスレッド・プログラムの例

17-2 Adaのタスキング・プログラムの例

17-3 DECthreadsタスクに対してSHOW TASK/ALL を実行したときの表示例

17-4 DECthreadsタスクに対してSHOW TASK/FULL を実行したときの表示例

17-5 DECthreadsタスクに対してSHOW TASK/STAT/FULL を実行したときの表示例((VAXシステムの例)

17-6 Adaタスクに対してSHOW TASK/ALL を実行したときの表示例

17-7 ADAタスクに対してSHOW TASK/FULL を実行したときの表示例

17-8 Adaタスクに対してSHOW TASK/STATISTICS/FULL を実行したときの表示例(VAXプロセッサの例)

C-1 C++プログラム例，CXXDOCEXAMPLE.C

C-2 C++デバッグ例

D-1 シングル・モジュール構成のプログラムEIGHTQUEENS.C

D-2 8QUEENS.Cのメイン・モジュール

D-3 8QUEENS_SUB.Cのサブ・モジュール

図 2-1 デバッガの定義済みキーパッド・ キー機能-コマンド・インタフェース

2-2 省略時の画面モード・ディスプレイ構成

7-1 省略時の画面モード・ディスプレイ構成

7-2 ソース・コードが取得できない場合の画面モード・ ソースの表示

7-3 画面モード機械語命令ディスプレイ(VAXシステムの例)

7-4 画面モード・レジスタ・ディスプレイ

8-1 省略時のウィンドウ構成

8-2 メイン・ウィンドウ上のメニュー

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

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

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

8-6 命令ビュー

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

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

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

9-1 起動時のデバッガ

9-2 イメージの指定によるプログラムの実行

9-3 コマンド・シンボルの指定によるプログラムの実行

9-4 起動時のソース・ ディスプレイ

9-5 同一プログラムの再実行

9-6 「Server Connection 」ダイアログ

9-7 「Server Options」ダイアログ

9-8 「Active Sessions」リスト

9-9 「Confirm Exit」ダイアログ

10-1 ソース・ディスプレイ

10-2 別ルーチンのソース・ コードの表示

10-3 エディタ・ウィンドウ

10-4 ソース行へのブレークポイントの設定

10-5 ルーチンへのブレークポイントの設定

10-6 条件付きブレークポイントの設定

10-7 アクション・ブレークポイントの設定

10-8 整変数の値の表示

10-9 配列集合体の値の表示

10-10 配列集合体の値の表示

10-11 変数値の型キャスト

10-12 変数値の変更

10-13 変数のモニタ

10-14 モニタ・ビューに展開された集合体変数(配列)

10-15 モニタ・ビューでのポインタ変数と参照されたオブジェクト

10-16 モニタ・ビューでの変数のウォッチ

10-17 モニタされたスカラ型変数の値の変更

10-18 集合体型変数の構成要素の値の変更

10-19 現在の有効範囲を呼び出し元ルーチンに設定する

10-20 レジスタ・ビュー

10-21 命令ビュー

10-22 タスキング・ビュー

10-23 「Step」ボタン・ ラベルのアイコンへの変更

10-24 「EXAMINE/ASCIZ」コマンドのボタンの追加

12-1 ヒープ・アナライザのウィンドウ

12-2 ヒープ・アナライザのプルダウン・ メニュー

12-3 ヒープ・アナライザのコンテキスト依存のポップアップ・ メニュー

12-4 ヒープ・アナライザのコントロール・ パネル

12-5 ヒープ・アナライザの「Display」メニュー

12-6 ヒープ・アナライザのコンテキスト依存の「Memory Map 」ポップアップ・メニュー

12-7 ヒープ・アナライザの「Information」ウィンドウと「Source」ウィンドウ

12-8 ヒープ・アナライザの「Type」ヒストグラム

12-9 ヒープ・アナライザの「Do-not-use Type 」リスト

12-10 ヒープ・アナライザの「Views-and-Types」の階層

12-11 ヒープ・アナライザの「Views-and-Types」ディスプレイのオプション

12-12 メモリ・リークを示すメモリ割り当ての増分

12-13 セグメント・タイプを再定義する「Do Not Use Type 」メニュー項目

12-14 トレースバック・エントリのクリックによる， 対応したソース・コードの表示

12-15 二重の割り当てを示すソース・ コード

16-1 メモリからベクタ・レジスタへの配列要素のマスクされたロード

17-1 タスク・スタック図

A-1 デバッガによって定義済みのキーパッド・ キー機能-コマンド・インタフェース

表 1-1 LINKコマンドとRUNコマンドによるデバッガ起動の制御

4-1 VAXレジスタ用のデバッガ・シンボル

4-2 Alphaレジスタ用のデバッガ・ シンボル

4-3 SET TYPEキーワード

5-1 DSTシンボル情報用のコンパイラ・ オプション

5-2 DSTおよびGSTのシンボル情報に与えるコンパイラとリンカの影響

7-1 定義済みディスプレイ

7-2 定義済みウィンドウ

8-1 メイン・ウィンドウ上のメニュー

8-2 プッシュ・ボタン枠の省略時のボタン

8-3 オプション・ビュー

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

8-5 DECwindows Motifデバッガ・インタフェースのキーパッド定義

8-6 DECwindows Motifインタフェースで使用不可能なデバッガ・ コマンド

15-1 デバッグ状態

15-2 プロセス指定

17-1 DECthreads用語とAda用語の対応

17-2 タスク組み込みシンボル

17-3 一般的なタスクの状態

17-4 DECthreadsタスクの副次状態

17-5 Adaタスクの副次状態

17-6 下位レベルの汎用タスクのスケジューリング・ イベント

17-7 DECthreads依存イベント

17-8 Ada固有のイベント

17-9 Adaタスクのデッドロック状態とそれを診断するためのデバッガ・ コマンド

A-1 LK201キーボードに固有なキー定義

A-2 キー状態を変更するキー

A-3 キーパッド図を表示するオンライン・ ヘルプを起動するキー

A-4 デバッガのキー定義

B-1 VAXレジスタのデバッガ・シンボル(VAXのみ)

B-2 Alphaレジスタのデバッガ・シンボル(Alphaのみ)

[ 次のページ ] [ 目次 ] [ 索引 ] [ DOC Home ]