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


OpenVMS マニュアル


 

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

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

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


目次 索引

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/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

(Ada on VAX のみ) タイム・スライス期間を値 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
/INTO
/LINE
/OVER
/[NO]SHARE
/[NO]SYSTEM
/TERMINATING

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

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

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

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

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

/INTO

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

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

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

/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
/LINE

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

/RETURN

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

Alpha の場合,この修飾子はどのルーチンにも指定できます。

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

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

/SHARE (省略時の設定)

/NOSHARE

/INTO を修飾します。 /INTO と次のいずれかの修飾子といっしょに使用します。
/BRANCH
/CALL
/INSTRUCTION
/LINE

/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
/LINE

/SYSTEM 修飾子を指定すると,他のルーチンだけでなくシステム・ルーチン (P1 空間 ) 内でもデバッガはトレースポイントを設定できます。 /NOSYSTEM 修飾子を指定すると,システム・ルーチン内ではトレースポイントは設定されません。

/TEMPORARY

トレースポイントを検出したあとでそのトレースポイントを消去します ( トレースポイントを一時的に設定するときに使用します )。

/TERMINATING

省略時の設定。プロセスがイメージを終了したときにデバッガがトレースします。単一プロセス・プログラムまたはマルチプロセス・プログラムの最後のイメージが終了すると,デバッガに制御が戻り,そのプロンプトを表示します。/ACTIVATING 修飾子も参照してください。


説明

トレースポイントが検出されると,デバッガは次の動作を行います。

  1. トレースポイント記憶位置でプログラムの実行を中断する。

  2. トレースポイントの設定時に /AFTER を指定した場合,AFTER 回数をチェックする。指定された回数に達していないと実行が再開され,デバッガは残りのステップを実行しない。

  3. トレースポイントの設定時に WHEN 句を指定した場合,WHEN 句の式を評価する。式の値が偽であれば実行が再開され,デバッガは残りのステップを実行しない。

  4. /SILENT が指定されていない場合, "trace..." メッセージを発行して,実行がトレースポイント記憶位置に達したことを報告する。

  5. トレースポイントの設定時に /NOSOURCE も /SILENT も指定しないか,または SET STEP NOSOURCE コマンドを入力していない場合,トレースポイントに対応したソース・コード行を表示する。

  6. トレースポイントの設定時に DO 句を指定していれば,その DO 句内のコマンドを実行する。

  7. 実行を再開する。

プログラムの特定の記憶位置にトレースポイントを設定するには, SET TRACE コマンドでアドレス式を指定します。連続したソース行,命令クラス,またはイベントにトレースポイントを設定するには, SET TRACE コマンドとともに修飾子を指定します。通常はアドレス式か修飾子のどちらかを指定するだけでよく,両方を指定する必要はありません。ただし,/EVENT と /RETURN の場合は両方指定しなければなりません。


目次 索引

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