日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトルページ
目次
まえがき
第1章:コマンド・ディクショナリ概要
第2章:デバッガ・コマンド・ディクショナリ
  ≫ コマンド一覧
索引
PDF
OpenVMS ホーム

HP OpenVMS
デバッガ・コマンド・ディクショナリ


目次 索引

このコマンドはすべてのユーザ定義ブレークポイントを無効にします。




以前に設定したあと無効にしたトレースポイントを有効にします。

形式

DEACTIVATE TRACE [address-expression[,...]]


パラメータ



address-expression

有効にするトレースポイントを指定します。ワイルドカード文字のアスタリスク (*) は使用できません。代わりに /ALL 修飾子を使用してください。 /EVENT,/PREDEFINED,/USER 以外の修飾子を使用する場合は,アドレス式は指定できません。

修飾子



/ACTIVATING

前回の SET TRACE/ACTIVATING コマンドで設定されたトレースポイントを有効にします。

/ALL

省略時の設定では,すべてのユーザ定義トレースポイントを有効にします。 /PREDEFINED といっしょに使用すると,定義済みトレースポイントはすべて有効になりますが,ユーザ定義トレースポイントは有効になりません。すべてのトレースポイントを有効にするには /ALL/USER/PREDEFINED を使用します。

/BRANCH

前回の SET TRACE/BRANCH コマンドで設定されたトレースポイントを有効にします。

/CALL

前回の SET TRACE/CALL コマンドで設定されたトレースポイントを有効にします。

/EVENT=event-name

前回の SET TRACE/EVENT=event-name コマンドで設定されたトレースポイントを有効にします。イベント名 ( および必要であればアドレス式 ) は SET TRACE/EVENT コマンドで指定したとおりに指定してください。

現在のイベント機能とそれに対応するイベント名を表示するには, SHOW EVENT_FACILITY コマンドを使用します。

/EXCEPTION

前回の SET TRACE/EXCEPTION コマンドで設定されたトレースポイントを有効にします。

/INSTRUCTION

前回の SET TRACE/INSTRUCTION コマンドで設定されたトレースポイントを有効にします。

/LINE

前回の SET TRACE/LINE コマンドで設定されたトレースポイントを有効にします。

/PREDEFINED

ユーザ定義トレースポイントには全く影響を及ぼさずに指定の定義済みトレースポイントを有効にします。 /ALL といっしょに使用すると,定義済みトレースポイントがすべて有効になります。

/TERMINATING

前回の SET TRACE/TERMINATING コマンドで設定されたトレースポイントを有効にします。

/USER

定義済みトレースポイントには全く影響を及ぼさずに指定のユーザ定義トレースポイントを有効にします。/ALL といっしょに使用すると,ユーザ定義トレースポイントがすべて有効になります。 /PREDEFINED を指定した場合を除き,/USER 修飾子が省略時の設定です。

説明

ユーザ定義トレースポイントは SET TRACE コマンドで設定すると有効になります。定義済みトレースポイントは省略時の設定で有効になります。 DEACTIVATE TRACE を使用して無効にした 1 つまたは複数のトレースポイントを有効にするにはACTIVATE TRACE コマンドを使用します。

トレースポイントを有効にしたり無効にしたりすることにより,プログラムの実行や再実行のときに,トレースポイントを取り消して再設定する手間をかけずに,トレースポイントを使用したり使用しなかったりすることができます。省略時の設定でRERUN コマンドを実行すると,すべてのトレースポイントの現在の状態 ( 有効か無効か ) が保存されます。

有効や無効にするのはユーザ定義トレースポイントと定義済みトレースポイントのどちらか一方でも両方でもかまいません。トレースポイントが有効になっているかを確かめるには, SHOW TRACE コマンドを使用してください。

関連コマンド

CANCEL ALL
RERUN
(SET,SHOW) EVENT_FACILITY
(SET,SHOW,CANCEL,ACTIVATE) TRACE

#1
DBG> DEACTIVATE TRACE MAIN\LOOP+10

このコマンドは MAIN\LOOP+10 の位置にあるユーザ定義トレースポイントを有効にします。

#2
DBG> DEACTIVATE TRACE/ALL

このコマンドはユーザ定義トレースポイントをすべて有効にします。




以前に設定したあと無効にしたウォッチポイントを有効にします。

形式

DEACTIVATE WATCH [address-expression[,...]]


パラメータ



address-expression

有効にするウォッチポイントを指定します。高級言語を使用している場合,これは通常,変数の名前になります。ワイルドカード文字のアスタリスク (*) は使用できません。代わりに /ALL 修飾子を使用してください。 /ALL を指定する場合は,アドレス式は指定できません。

修飾子



/ALL

すべてのウォッチポイントを有効にします。

説明

ウォッチポイントは SET WATCH コマンドで設定すると有効になります。 DEACTIVATE WATCH で無効にした 1 つまたは複数のウォッチポイントを有効にするには ACTIVATE WATCH コマンドを使用します。

ウォッチポイントを有効にしたり無効にしたりすることにより,プログラムの実行や再実行のときに,ウォッチポイントを取り消して再設定する手間をかけずに,ウォッチポイントを使用したり使用しなかったりすることができます。

省略時の設定では,RERUN コマンドを実行すると,すべての静的ウォッチポイントの現在の状態 ( 有効か無効か ) が保存されます。特定の非静的ウォッチポイントは,( 実行を再開する ) メイン・プログラム・ユニットを基準にした,ウォッチの対象になっている変数の有効範囲によって保存されることもあり,保存されないこともあります。

ウォッチポイントが有効になっているかを確かめるには, SHOW WATCH コマンドを使用します。

関連コマンド

CANCEL ALL
RERUN
(SET,SHOW,CANCEL,ACTIVATE) WATCH

#1
DBG> DEACTIVATE WATCH SUB2\TOTAL

このコマンドはモジュール SUB2 の中の TOTAL 変数でのウォッチポイントを有効にします。

#2
DBG> DEACTIVATE WATCH/ALL

このコマンドは設定したあと無効にしたすべてのウォッチポイントを有効にします。




コマンド・プロシージャの中で仮パラメータを宣言します。これにより,@ ( 実行プロシージャ ) コマンドの入力時に実パラメータを渡すことができます。

形式

DECLARE p-name:p-kind [,p-name:p-kind[,...]]


パラメータ



p-name

コマンド・プロシージャの中で宣言される仮パラメータ ( シンボル ) を指定します。

( 連続する 2 つのコンマまたはコマンドの最後のコンマで表される ) 空パラメータは指定できません。

p-kind

仮パラメータのパラメータ種別を指定します。有効なキー・ワードは次のとおりです。

ADDRESS 実パラメータをアドレス式として解釈することを指定します。 DEFINE/ADDRESS p-name= actual-parameter と同じ働きです。
COMMAND 実パラメータをコマンドとして解釈することを指定します。 DEFINE/COMMAND p-name = actual-parameter コマンドと同じ働きです。
VALUE 実パラメータを現在の言語での値式として解釈することを指定します。 DEFINE/VALUE p-name = actual-parameter と同じ働きです。


説明

DECLARE コマンドはコマンド・プロシージャの中でだけ有効です。

DECLARE コマンドは,@ ( 実行プロシージャ ) コマンドに続くコマンド行に指定された 1 つまたは複数の実パラメータを,コマンド・プロシージャの中で宣言された仮パラメータ ( シンボル ) にバインドします。

DECLARE コマンドで指定される各 p-name:p-kind の組は 1 つの仮パラメータを 1 つの実パラメータにバインドします。仮パラメータはデバッガがパラメータ宣言を処理する順番で実パラメータにバインドされます。1 つの DECLARE コマンドに複数の仮パラメータを指定すると,左端の仮パラメータが最初の実パラメータにバインドされ,次の仮パラメータが 2 番目の実パラメータにバインドされるというようになります。DECLARE コマンドをループで使用すると,仮パラメータはループの 1 回目の最初の実パラメータにバインドされます。そして同じ仮パラメータが 2 回目の 2 番目の実パラメータにバインドされるというようになります。

各パラメータ宣言は DEFINE コマンドと同様に動作します。指定されたパラメータ種別に従って,アドレス式,コマンドまたは現在の言語での値式に仮パラメータを対応づけるのです。仮パラメータそのものは DEFINE コマンドで受け入れられるものと一致しており,実際に DELETE コマンドでシンボル・テーブルから削除することができます。

%PARCNT 組み込みシンボルはコマンド・プロシージャの中でだけ使用できます。これを使用すれば,可変数のパラメータをコマンド・プロシージャに渡すことができます。 %PARCNT の値はコマンド・プロシージャに渡される実パラメータの数です。

関連コマンド

@ (実行プロシージャ)
DEFINE
DELETE

#1
! ***** コマンド・プロシージャ EXAM.COM *****
SET OUTPUT VERIFY
DECLARE K:ADDRESS
EXAMINE K
 
DBG> @EXAM ARR4
%DEBUG-I-VERIFYIC, entering command procedure EXAM 
 DECLARE K:ADDRESS 
 EXAMINE K 
PROG_8\ARR4 
    (1):        18 
    (2):        1 
    (3):        0 
    (4):        1 
%DEBUG-I-VERIFYIC, exiting command procedure EXAM
DBG>

この例では,DECLARE K:ADDRESS コマンドはコマンド・プロシージャ EXAM.COM の内部の仮パラメータ K を宣言しています。 EXAM.COM を実行すると,EXAM.COM に渡される実パラメータはアドレス式として解釈され,EXAMINE K コマンドはそのアドレス式の値を表示します。 SET OUTPUT VERIFY コマンドを実行すると,コマンドをデバッガが読んだときに,それらのコマンドがエコーバックされます。

デバッガ・プロンプトが表示された状態で,@EXAM ARR4 コマンドは EXAM.COM を実行し,実パラメータ ARR4 を渡します。EXAM.COM の中では, ARR4 はアドレス式 ( この場合には配列変数 ) として解釈されます。

#2
! ***** デバッガ・コマンド・プロシージャ EXAM_GO.COM *****
DECLARE L:ADDRESS, M:COMMAND
EXAMINE L; M
 
DBG> @EXAM_GO X "@DUMP"

この例では,コマンド・プロシージャ EXAM_GO.COM はアドレス式 (L) とコマンド文字列 (M) の 2 つのパラメータを受け付けます。そしてアドレス式がチェックされ,コマンドが実行されます。

デバッガ・プロンプトが表示された状態で,@EXAM_GO X "@DUMP" コマンドは EXAM_GO.COM を実行し,アドレス式 X とコマンド文字列の @DUMP を渡します。

#3
! ***** デバッガ・コマンド・プロシージャ VAR.DBG *****
SET OUTPUT VERIFY 
FOR I = 1 TO %PARCNT DO (DECLARE X:VALUE; EVALUATE X)
DBG> @VAR.DBG 12,37,45
%DEBUG-I-VERIFYIC, entering command procedure VAR.DBG 
 FOR I = 1 TO %PARCNT DO (DECLARE X:VALUE; EVALUATE X) 
12 
37 
45 
%DEBUG-I-VERIFYIC, exiting command procedure VAR.DBG
DBG>

この例では,コマンド・プロシージャ VAR.DBG が受け取るパラメータの個数は固定されていません。パラメータの個数は組み込みシンボル %PARCENT に格納されます。

デバッガ・プロンプトが表示された状態で,@VAR.DBG コマンドは VAR.DBG を実行し,実パラメータ 12,37,45 を渡します。したがって,%PARCNT の値は 3 になり,FOR ループが 3 回繰り返されます。 FOR ループにより,DECLARE コマンドは 3 つの実パラメータ (12 から始まる ) の各々を X の新しい宣言にバインドするようになります。各実パラメータは現在の言語での値式として解釈され,EVALUATE X コマンドがその値を表示します。




アドレス式,コマンドまたは値にシンボリック名を割り当てます。

形式

DEFINE symbol-name=parameter [,symbol-name=parameter[,...]]


パラメータ



symbol-name

アドレス,コマンドまたは値に割り当てるシンボリック名を指定します。シンボリック名は英字とアンダスコアで構成できます。デバッガは英小文字を大文字に変換します。先頭文字は数字であってはなりません。シンボリック名は 31 文字を超えてはなりません。

parameter

指定された修飾子によって異なります。

修飾子



/ADDRESS

省略時の設定。定義したシンボルがアドレス式の短縮形であることを指定します。この場合,parameter はアドレス式になります。

/COMMAND

定義したシンボルを新しいデバッガ・コマンドとして扱うことを指定します。この場合,parameter は引用符で囲まれた文字列になります。この修飾子は,単純な場合には基本的に次の DCL コマンドと同じ機能を提供します。

$ symbol := string

複雑なコマンドを定義するには,仮パラメータ付きのコマンド・プロシージャの使用が必要となることがあります。コマンド・プロシージャに対するパラメータの宣言についての詳しい説明は,DECLARE コマンドを参照してください。

/LOCAL

定義されたコマンド・プロシージャ内でのみ有効になるように定義を指定します。定義されたシンボルはデバッガ・コマンド・レベルでは可視状態ではありません。省略時の設定では,コマンド・プロシージャの中で定義されたシンボルはそのプロシージャの外では可視状態になります。

/VALUE

定義されたシンボルが値の短縮形であることを指定します。この場合,parameter は現在の言語での言語式になります。

説明

DEFINE/ADDRESS コマンドを使用すれば,プログラム内のアドレス式にシンボリック名を割り当てられます。たとえば,シンボル以外のプログラム記憶位置に対してか,長いパス名接頭識別子を持つシンボルのプログラム記憶位置に対してシンボルを定義できます。シンボルを定義したら,そのプログラム記憶位置を新しく定義したシンボルで参照できるようになります。 /ADDRESS 修飾子が省略時の設定です。

DEFINE/COMMAND コマンドを使用すれば,デバッガ・コマンド・レベルまたはコマンド・プロシージャから,デバッガ・コマンドの短縮形を定義するか,新しいコマンドを定義することができます。

DEFINE/VALUE コマンドを使用すれば,シンボリック名を値 ( または言語式を評価する結果 ) に割り当てられます。

シンボル定義をコマンド・プロシージャ内に限定するには, /LOCAL 修飾子を使用します。省略時の設定では,定義されたシンボルはグローバル ( コマンド・プロシージャの外で可視状態 ) になります。

同じ修飾子を使用して複数の DEFINE コマンドを入力する場合は,まず SET DEFINE コマンドを使用して新しい省略時の修飾子を設定できます。たとえば,SET DEFINE COMMAND を使用すれば, DEFINE コマンドが DEFINE/COMMAND と同じように動作するようになります。そのあと,DEFINE コマンドで同じ修飾子を使用する必要はありません。他の修飾子を指定することにより,1 つの DEFINE コマンドの継続中に現在の省略時の修飾子を上書きできます。

シンボル変換では,デバッガはまずデバッグ・セッションの間に定義されたシンボルを検索します。したがって,プログラムにすでに存在しているシンボルが定義されると,パス名の接頭識別子が指定された場合を除き,デバッガはそのシンボルをもともと定義されていた定義に従って変換します。

シンボルを再定義すると,DEFINE コマンドで異なる修飾子を使用していた場合でも,もとの定義は取り消されます。

DEFINE/ADDRESS コマンドと DEFINE/VALUE コマンドで作成された定義は,それらが作成されたコンテキストの中のイメージが現在のイメージになっているときだけ使用できます。新しい現在のイメージを設定するために SET IMAGE コマンドを使用すると,これらの定義は一時的に使用できない状態になります。ただし,DEFINE/COMMAND コマンドと DEFINE/KEY コマンドで作成された定義はいつでもすべてのイメージに使用できます。

シンボルの同値を求めるには SHOW SYMBOL/DEFINED コマンドを使用します。

シンボル定義を取り消すには DELETE コマンドを使用します。

関連コマンド

DECLARE
DELETE
SET IMAGE
SHOW DEFINE
SHOW SYMBOL/DEFINED

#1
DBG> DEFINE CHK=MAIN\LOOP+10

このコマンドはシンボル CHK をアドレス MAIN\LOOP+10 に割り当てます。

#2
DBG> DEFINE/VALUE COUNTER=0
DBG> SET TRACE/SILENT R DO (DEFINE/VALUE COUNTER = COUNTER+1)

この例では,DEFINE/VALUE コマンドは値の 0 をCOUNTER シンボルに割り当てます。 SET TRACE コマンドを使用すると,デバッガはアドレス R が検出されるたびにシンボル COUNTER の値を 1 だけ増分します。つまり,この例では R への呼び出し回数を数えているのです。

#3
DBG> DEFINE/COMMAND BRE = "SET BREAK"

このコマンドはシンボル BRE をデバッガ・コマンドの SET BREAK に割り当てます。


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.