日本-日本語

製品  >  ソフトウェア  >  OpenVMS  >  マニュアル

OpenVMS マニュアル


≫ 

OpenVMS V7.3-2
ライブラリ

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

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


目次 索引

ワイルドカード文字のアスタリスク (*) は使用できません。代わりに /ALL 修飾子を使用してください。/ALL または /TIME_SLICE を指定する場合,タスクは指定できません。タスクを指定しないか, /ALL を /ABORT,/[NO]HOLD,/PRIORITY,または /RESTORE とともに指定しないと,可視タスクが選択されます。


修飾子



/ABORT

指定されたタスクに終了のマークをつけます。指定されたタスクが実行を再開したあとに次に認められる時点で終了します。

Ada タスクの場合,指定されたタスクに Ada 強制終了文を実行することと同じであり,これらのタスクは異常として示されます。依存タスクにも終了のマークがつけられます。

POSIX Threads スレッドの場合,次のコマンドを使用します。


PTHREAD tset -c thread-number 



/ACTIVE

指定されたタスクをアクティブ・タスクにします。これは,コマンド STEP,GO,CALL または EXIT を実行したときに実行されるタスクです。この修飾子を使用すると,タスクは新しいアクティブ・タスクに切り替わり,そのタスクが可視タスクになります。指定されたタスクは,RUNNING 状態か READY 状態になければなりません。 /ACTIVE を使用する場合,タスクを 1 つ指定しなければなりません。

SET TASK/ACTIVE コマンドは,VAX 上の Adaでのみサポートされています。

POSIX Threads プログラムまたは Alpha プログラム上の Ada では,次のコマンドのうちのいずれかを使用します。クエリー型のアクションには SET TASK/ACTIVE コマンドではなく SET TASK/VISIBLE コマンドを使用してください。または,実行の制御を得るには,ブレークポイントを効果的な位置に配置します。

  • クエリー型のアクションには,SET TASK/VISIBLE コマンドを使用

  • 実行の制御を得るには,ブレークポイントを効果的な位置に配置する

  • PTHREAD tset -a thread-number コマンドを使用する



/ALL

SET TASK コマンドをすべてのタスクに指定します。

/HOLD



/NOHOLD (省略時の設定)

イベント機能が THREADS の場合は, PTHREAD tset -h thread-number コマンドまたは PTHREAD tset -n thread-number コマンドを使用します。

指定されたタスクを保留するかどうかを制御します。 /HOLD 修飾子は指定されたタスクを保留します。

タスクを保留すると,そのタスクを RUNNING 状態にできなくなります。保留状態にあるタスクは,他の状態に移行できます。たとえば, SUSPENDED 状態から READY 状態に変わることができます。

すでに RUNNING 状態にあるタスク ( アクティブ・タスク ) は, RUNNING 状態にあるかぎり実行を続けることができます。実行は保留状態にあっても続けられます。何らかの理由 ( タイム・スライスが使用できる場合,タイム・スライス値を超えたなど ) で RUNNING 状態でなくなると,保留条件が解消されないかぎり, RUNNING 状態に戻ることはできません。

SET TASK/ACTIVE コマンドを使用すれば,タスクが保留されていても,保留条件を上書きし,タスクを RUNNING 状態にできます。

/NOHOLD 修飾子は,指定されたタスクの保留を解除します。

/PRIORITY=n

イベント機能が THREADS の場合は, PTHREAD tset -s thread-number コマンドを使用します。

指定されたタスクの優先順位を n に設定します。ここで n は 0 から 15 までの 10 進整数です。これにより,実行中 ( たとえば,Ada ランデブまたは POSIX Threads 同期化の実行中 ) にあとで優先順位を変更できなくなるわけではありません。この修飾子は,タスクのスケジューリング方法には影響を与えません。

/RESTORE

(Ada on VAX のみ)

指定されたタスクの優先順位を,作成されたときの優先順位に復元します。タスクのスケジューリング方法には影響を与えません。

/TIME_SLICE=t

Supported for Ada on VAX only. タイム・スライス期間を t の値に設定します。ここで,t は秒数を表す 10 進整数または実数値です。ここで設定された値は,プログラム内で指定されたタイム・スライス値 ( 指定されている場合 ) を上書きします。タイム・スライスを禁止するには,/TIME_SLICE=0.0 を使用します。 /TIME_SLICE はイベント機能が ADA の時のみ有効になります。

/VISIBLE

指定されたタスクを可視タスクにします。これは,シンボル,レジスタ値,ルーチン呼び出し,ブレークポイントなどの検索時に現在のコンテキストになっている呼び出しスタックとレジスタ・セットを持つタスクです。 EXAMINE などのコマンドは,可視タスクで出力先が指定されます。 /VISIBLE 修飾子はアクティブ・タスクには影響を与えません。 /VISIBLE を使用する場合は,タスクを 1 つ指定しなければなりません。

説明

SET TASK コマンドは,可視タスクとアクティブ・タスクの設定,これらのタスクの実行の制御,タスク状態の変更を直接または間接的に行えるようにします。

タスクの現在の状態を調べるには,SHOW TASK コマンドを使用します。タスクは,RUNNING,READY,SUSPENDED,TERMINATED のいずれかの状態にあります。

関連コマンド

DEPOSIT/TASK
EXAMINE/TASK
SET BREAK/EVENT
SET TRACE/EVENT
(SET, SHOW) EVENT_FACILITY
SHOW TASK|THREAD

#1

DBG> SET TASK/ACTIVE %TASK 3

(イベント・ファシリティ = ADA) このコマンドは,タスク 3(タスク ID = 3) をアクティブ・タスクにします。

#2

DBG> PTHREAD tset -a 3

( イベント・ファシリティ = THREADS) このコマンドは,タスク 3(タスク ID = 3) をアクティブ・タスクにします。

#3

DBG> SET TASK %NEXT_TASK

このコマンドは,デバッガのタスク・リスト中で次のタスクを可視タスクにします (/VISIBLE 修飾子は,SET TASK コマンドの省略時の修飾子です )。

#4

DBG> SET TASK/HOLD/ALL
DBG> SET TASK/ACTIVE %TASK 1
DBG> GO
    ...
DBG> SET TASK/ACTIVE %TASK 3
DBG> STEP
    ...

この例では,SET TASK/HOLD/ALL コマンドがアクティブ・タスク以外のすべてのタスクの状態を凍結します。したがって,SET TASK/ACTIVE を必要なときだけ使用して (GO コマンドと STEP コマンドとともに ), 1 つまたは複数の指定されたタスクの動作を切り離して観察できます。




デバッガが画面やその他の出力を編集するときに使用する端末画面の高さと幅を設定します。

注意

このコマンドは,デバッガへの HP DECwindows Motif for OpenVMS ユーザ・インタフェースでは使用できません。


形式

SET TERMINAL


修飾子



/PAGE:n

端末画面の高さをn行に設定することを指定します。 18 から 100 まで指定できます。

/WIDTH:n

端末画面の幅をn欄に設定することを指定します。 20 から 255 まで指定できます。VT100,VT200 または VT300 のシリーズの端末では,nは通常の場合 80 または 132 です。

/WRAP

デバッガが定義済みのディスプレイ OUT に /WIDTH 修飾子によって指定されたカラムで出力テキストをラップするようにします。 /WIDTH を現在のコマンドに指定しない場合は,/WRAP は %WIDTH 設定を省略時の設定にします。

説明

SET TERMINAL コマンドを使用すると,デバッガが画面出力の編集に使用できる画面部分を定義できます。

このコマンドは,VT100,VT200 または VT300 のシリーズの端末を使用する場合に便利です。この場合,たいていは画面幅を 80 欄または 132 欄に設定できます。また,ワークステーションではデバッガが使用するターミナル・エミュレータ・ウィンドウのサイズを変更できるので,やはり便利です。

少なくとも 1 つの修飾子を指定しなければなりません。全部の修飾子を指定することも可能です。 /PAGE 修飾子と /WIDTH 修飾子には,それぞれ値が必要です。

SET TERMINAL コマンドを入力すると,すべての画面ウィンドウ定義が,新しい画面サイズに合うように自動的に調整されます。たとえば,RH1 は,画面の右上半分を表示するようにサイズを比例して変更します。

同様に,すべての "動的" 表示ウィンドウは,相対的な比率を維持するように自動的に調整されます。すべての標準ウィンドウは動的ですが,DISPLAY/NODYNAMIC コマンドで参照した場合は例外です。その場合には,あとで SET TERMINAL コマンドを実行した場合も,表示ウィンドウは現在のサイズのまま変化しません。しかし,DISPLAY コマンドを使用すると,表示ウィンドウを再構成できます ( また,BLUE-MINUS などのキーパッド・キーの組み合わせを使用して,定義済みの DISPLAY コマンドを入力することも可能です )。

関連コマンド

DISPLAY/[NO]DYNAMIC
EXPAND
(SET,SHOW,CANCEL) WINDOW
SHOW TERMINAL


DBG> SET TERMINAL/WIDTH:132

このコマンドは,端末画面幅を 132 欄に設定することを指定します。




特定のクラスの命令または指定されたイベントの発生時に,アドレス式で示された記憶位置にトレースポイントを設定します。

形式

SET TRACE [address-expression[,...]]
[WHEN(conditional-expression)]
[DO(command[;...])]


パラメータ



address-expression

トレースポイントを設定するアドレス式 ( プログラム記憶位置 ) を指定します。高級言語の場合,これはたいていは行番号,ルーチン名,またはラベルです。値を一意に指定するパス名をいれることもできます。また,アドレス式はメモリ・アドレスまたはレジスタの場合もあります。数字 ( オフセット ) とシンボルで構成したり,1 つまたは複数の演算子,オペランド,または区切り文字で構成したりできます。アドレス式で使用できる演算子についての詳しい説明は,ヘルプ・トピック Address_Expressions を参照してください。

ワイルドカード文字のアスタリスク (*) は使用できません。また次の修飾子を指定する場合は,アドレス式は指定できません。

/ACTIVATING
/BRANCH
/CALL
/EXCEPTION
/INSTRUCTION
/INSTRUCTION=(opcode[,...]) (VAX のみ)
/INTO
/[NO]JSB (VAX のみ)
/LINE
/OVER
/[NO]SHARE
/[NO]SYSTEM
/TERMINATING
/VECTOR_INSTRUCTION (VAX のみ)

/MODIFY 修飾子と /RETURN 修飾子は,特定の種類のアドレス式に指定できます。

メモリ・アドレス,または値がシンボリック記憶位置でないアドレス式を指定する場合は,示しているメモリ・バイトで命令が実際に始まっているかを(EXAMINE コマンドを使用して) チェックしてください。命令がこのバイトで始まっていないと,そのバイトを持つ命令を実行したときに実行時エラーが発生します。値がシンボリック記憶位置でないアドレス式を指定してトレースポイントを設定しても,デバッガは指定された記憶位置が命令の開始位置を示しているかどうかをチェックしません。

VAX プロセッサの場合,CALLS ルーチンと CALLG ルーチンは,エントリ・マスクで始まります。

conditional-expression

現在設定されている言語で条件式を指定します。この式は実行がブレークポイントに達したときに評価されます。ブレークポイントが設定されたときではなく,実行がブレークポイントに達すると,デバッガは WHEN 句にある式の構文をチェックします。式が真であれば,デバッガは,ブレークポイントが発生したことを報告します。ブレーク・アクション (DO 句 ) がブレークポイントと関連付けられている場合は,同時に発生します。式が偽の場合は報告されません。また,DO 句によって指定されたコマンドは実行されず,プログラムの実行は続行されます。

command

ブレーク・アクションが実行されたときに,DO 句の一部として実行されるデバッガ・コマンドを指定します。ブレークポイントが設定されたときではなく,DO 句が実行されると,デバッガは DO 句にある式の構文をチェックします。

修飾子



/ACTIVATING

新しいプロセスがデバッガの制御下に置かれると,デバッガはトレースします。/TERMINATING 修飾子も参照してください。

/AFTER:n

指定されたトレースポイントが n 回検出されるまで,トレース・アクションを実行しないことを指定します (nは 10 進整数です )。それ以降は,WHEN 句の条件 (指定された場合) が真,検出されるたびにトレースポイントが発生します。 SET TRACE/AFTER:1 コマンドは,SET TRACE と同じです。

/BRANCH

デバッガは,プログラムの実行中に検出されるすべての分岐命令をトレースします。/INTO 修飾子と /OVER 修飾子も参照してください。

/CALL

デバッガは,プログラムの実行中に呼び出し命令 ( 復帰命令を含む ) を検出するたびにトレースします。 /INTO 修飾子と /OVER 修飾子も参照してください。

/EVENT=event-name

指定されたイベントが発生する ( 現在のイベント機能によってイベントが定義され,そのイベントが検出される ) と,デバッガがトレースします。アドレス式に /EVENT を指定すると,そのアドレス式に対して指定されたイベントが発生するたびにデバッガがトレースします。アドレス式に特定のイベント名を指定することはできません。

イベント機能は,Ada ルーチンまたは SCAN ルーチンを呼び出すプログラムまたは POSIX Threads サービスを使用するプログラムで使用できます。現在のイベント機能および関連したイベント名を表示するには, SHOW EVENT_FACILITY コマンドを使用します。

/EXCEPTION

デバッガはシグナル通知されるすべての例外をトレースします。トレース・アクションは,アプリケーションで宣言した例外ハンドラが起動される前に実行されます。

プログラムが例外を発生すると,SET TRACE/EXCEPTION コマンドの結果として,デバッガは例外を報告しその例外を再度シグナル通知します。その結果,アプリケーションで宣言した例外ハンドラを実行できます。

/INSTRUCTION



/INSTRUCTION[=(opcode[,...])] (VAX のみ)

命令コードを指定しないと,デバッガはプログラム実行中に検出されたすべての命令をトレースします。

(VAX のみ ) 命令コードを 1 つまたは複数個指定すると,デバッガは,リスト内で指定したすべての命令コードをトレースします。

ベクタ命令を指定するとき,命令修飾子 (/UNALIGNED_DATA,/VECTOR_INSTRUCTION,/MODIFY,/0,または /1) と命令ニーモニックの両方をいれることはできません。

/INTO 修飾子と /OVER 修飾子も参照してください。

/INTO

(省略時の設定。) 次の修飾子で設定されているトレースポイント ( すなわち,アドレス式が明示的に指定されていない場合 ) にだけ指定できます。
/BRANCH
/CALL
/INSTRUCTION
/INSTRUCTION=(opcode[,...]) (VAX のみ)
/LINE
/VECTOR_INSTRUCTION (VAX のみ)

/INTO をこれらの修飾子といっしょに使用すると,デバッガは,呼び出されたルーチン内 ( 実行が現在中断されているルーチン内だけでなく ) の指定された箇所をトレースします。 /INTO 修飾子は省略時の設定であり,/OVERの反対です。

/INTO を使用する場合,/[NO]JSB,/[NO]SHARE,/[NO]SYSTEM の修飾子でトレース・アクションをさらに修飾できます。

/JSB



/NOJSB

(VAX のみ) の場合,/INTO を修飾します。 /INTO と次のいずれかの修飾子といっしょに使用します。
/BRANCH
/CALL
/INSTRUCTION
/INSTRUCTION=(opcode[,...])
/LINE
/VECTOR_INSTRUCTION

/JSB 修飾子は,DIBOL 以外のすべての言語における省略時の値です。これを指定すると,デバッガは,JSB 命令またはCALL 命令によって呼び出されるルーチン内にトレースポイントを設定します。 /NOJSB 修飾子 (DIBOL の省略時の設定 ) は,JSB 命令によって呼び出されるルーチン内でトレースポイントを設定しないことを指定します。 DIBOL の場合,アプリケーションで宣言したルーチンは CALL 命令によって呼び出され,DIBOL 実行時ライブラリ・ルーチンが JSB 命令によって呼び出されます。

/LINE

デバッガは,プログラム実行中にソース行が検出されるたびにその行の先頭をトレースします。/INTO 修飾子と /OVER 修飾子も参照してください。

/MODIFY

指定されたアドレス式が示す記憶位置に命令が値を書き込んで変更したとき,デバッガはトレースを行います。通常の場合,アドレス式は変数名です。

SET TRACE/MODIFY X コマンドは SET WATCH X DO(GO) と同じです。 SET TRACE/MODIFY コマンドは,SET WATCH コマンドと全く同じ制限事項の下で動作します。

アドレス式に絶対アドレスを指定すると,デバッガがアドレスを特定のデータ・オブジェクトに関連づけることができない場合があります。この場合,デバッガは省略時の長さとして 4 バイトを使用します。ただし,この長さは,入力を WORD (SET TYPE WORD,省略時の長さを 2 バイトに変更します ) か BYTE (SET TYPE BYTE,省略時の長さを 1 バイトに変更します ) に設定すれば変更できます。 SET TYPE LONGWORD コマンドを指定すると,省略時の長さは 4 バイトに戻ります。

/OVER

次のいずれかの修飾子で設定されているトレースポイント ( すなわち,アドレス式が明示的に指定されていない場合 ) だけに指定できます。
/BRANCH
/CALL
/INSTRUCTION
/INSTRUCTION=(opcode[,...]) (VAX のみ)
/LINE
/VECTOR_INSTRUCTION (VAX のみ)

/OVER をこれらの修飾子といっしょに使用すると,( 呼び出されたルーチンではなく ) 現在実行を中断しているルーチン内だけの指定された箇所をデバッガはトレースします。 /OVER 修飾子は,/INTO (省略時の設定) の反対です。

/RETURN

指定されたアドレス式 ( ルーチン名,行番号など ) に関連しているルーチンの復帰命令でデバッガがブレークします。復帰命令でブレークすると,ルーチンがアクティブである間ローカル環境を調べること ( たとえば,ローカル変数の値を得るなど ) ができます。ローカル環境のビューはアーキテクチャにより異なるので注意してください。

VAX プロセッサの場合,この修飾子は,CALLS 命令または CALLG 命令で呼び出したルーチンにだけ指定できます。 JSB ルーチンでは使用できません。 Alpha プロセッサの場合,この修飾子はどのルーチンにも指定できます。

address-expression パラメータは,ルーチン内の命令アドレスです。単なるルーチン名の場合もあります。この場合は,ルーチンの開始アドレスを指定します。ただし,ルーチン内の別の場所を指定することもできます。こうすると,特定のコード・パスを実行したあとに行われる復帰だけを調べることができます。

SET TRACE/RETURN コマンドで SET TRACE と同じアドレス式を指定すると, SET TRACE は取り消されます。

/SHARE (省略時の設定)



/NOSHARE

/INTO を修飾します。 /INTO と次のいずれかの修飾子といっしょに使用します。
/BRANCH
/CALL
/INSTRUCTION
/INSTRUCTION=(opcode[,...]) (VAX のみ)
/LINE
/VECTOR_INSTRUCTION (VAX のみ)

/SHARE 修飾子を使用すると,デバッガは共用可能イメージ・ルーチン内でもその他のルーチンの場合と同様にトレースポイントを設定できます。 /NOSHARE 修飾子を指定すると,共用可能イメージ内にはトレースポイントは設定されません。

/SILENT



/NOSILENT (省略時の設定)

"trace..." メッセージと,現在の記憶位置のソース行をトレースポイントで表示するかどうかを制御します。 /NOSILENT 修飾子を指定すると,メッセージが表示されます。 /SILENT 修飾子を指定すると,メッセージとソース行は表示されません。 /SILENT 修飾子を指定すると,/SOURCE は上書きされます。

/SOURCE



/NOSOURCE (省略時の設定)

現在の記憶位置のソース行をトレースポイントで表示するかどうかを制御します。/SOURCE 修飾子を指定すると,ソース行が表示されます。 /NOSOURCE 修飾子を指定すると,ソース行は表示されません。 /SILENT 修飾子を指定すると,/SOURCE は上書きされます。 SET STEP [NO]SOURCE コマンドも参照してください。

/SYSTEM (省略時の設定)



/NOSYSTEM

/INTO を修飾します。 /INTO と次のいずれかの修飾子といっしょに使用します。
/BRANCH
/CALL
/INSTRUCTION
/INSTRUCTION=(opcode[,...]) (VAX のみ)
/LINE
/VECTOR_INSTRUCTION (VAX のみ)


目次 索引

印刷用画面へ
プライバシー 本サイト利用時の合意事項