HP OpenVMS Systems Documentation |
| 前へ | 次へ | 目次 | 索引 |
ウォッチポイントを取り消します。
CANCEL WATCH [address-expression[,...]]
address-expression
取り消すウォッチポイントを指定します。高級言語を使用する場合,これは通常変数の名前になります。ワイルドカード文字のアスタリスク (*) は使用できません。代わりに /ALL 修飾子を使用してください。/ALL を指定する場合は,アドレス式は指定できません。
/ALL
すべてのウォッチポイントを取り消します。
CANCEL WATCH コマンドの作用は SET WATCH コマンドの作用の反対です。 SET WATCH コマンドで特定の記憶位置に設定されたウォッチポイントを取り消すには,CANCEL WATCH で同じ記憶位置を指定します。したがって,集合体全体に設定されたウォッチポイントを取り消すには,CANCEL WATCH コマンドでその集合体を指定します。集合体の 1 つの要素に設定されたウォッチポイントを取り消すには,CANCEL WATCH コマンドでその要素を指定します。CANCEL ALL コマンドもすべてのウォッチポイントを取り消します。
ウォッチポイントを取り消す手間をかけずに,デバッガにそのウォッチポイントを無視させたい場合には,DEACTIVATE WATCH コマンドを使用してください。あとで,ACTIVATE WATCH を使用してそのウォッチポイントを有効にすることができます。
関連コマンド
(ACTIVATE,DEACTIVATE,SET,SHOW) WATCH
CANCEL ALL
(SET,SHOW,CANCEL) BREAK
(SET,SHOW,CANCEL) TRACE
| #1 |
|---|
DBG> CANCEL WATCH SUB2\TOTAL |
このコマンドはモジュール SUB2 にある変数 TOTAL でのウォッチポイントを取り消します。
| #2 |
|---|
DBG> CANCEL WATCH/ALL |
このコマンドはユーザが設定したすべてのウォッチポイントを取り消します。
画面ウィンドウ定義を永久に削除します。
注意
このコマンドは,デバッガへの HP DECwindows Motif for OpenVMS ユーザ・インタフェースでは使用できません。
CANCEL WINDOW [window-name[,...]]
window-name
取り消す画面ウィンドウ定義の名前を指定します。ワイルドカード文字のアスタリスク (*)は使用できません。代わりに /ALL 修飾子を使用してください。/ALL を指定する場合は,ウィンドウ定義の名前は指定できません。
/ALL
すべての定義済みウィンドウ定義とユーザ定義ウィンドウ定義を取り消します。
ウィンドウ定義を取り消すと,その名前は DISPLAY コマンドで使用できなくなります。CANCEL WINDOW コマンドは表示には全く影響を及ぼしません。関連コマンド
(SHOW,CANCEL) DISPLAY
(SET,SHOW) WATCH
DBG> CANCEL WINDOW MIDDLE |
このコマンドは画面ウィンドウ定義の MIDDLE を永久に削除します。
( 保持デバッガのみ。) 他のプロセスでデバッガによる制御を受けずに実行されているイメージに割り込みをかけ,そのプロセスをデバッガの制御下に置きます。パラメータを指定しないで CONNECT を使用すると,CONNECT はデバッガに接続されるのを待っている作成されたプロセスすべてをデバッガの制御下に置きます。Alpha システムの場合,CONNECT コマンドは, Alpha オペレーティング・システムを稼動しているターゲット・システムを OpenVMS Alphaシステム・コード・デバッガの制御下に置きます。 OpenVMS Alphaシステム・コード・デバッガは,OpenVMS デバッガから起動するカーネル・デバッガです。
I64 システムでは,CONNECT デバッガ・コマンドを使って, I64 オペレーティング・システムが稼動しているターゲット・システムを OpenVMS I64 システム・コード・デバッガの制御下に置くこともできます。 OpenVMS I64 システム・コード・デバッガは, OpenVMS デバッガから起動するカーネル・デバッガです。
CONNECT コマンドを使用して Alpha オペレーティング・システムをデバッグする場合は,このコマンドを実行する前に,『OpenVMS System Analysis Tools Manual』の "System Code Debugger" の章で説明されている指示を完了していなければなりません。これらの指示には,Alpha デバイス・ドライバの作成や, OpenVMS Alpha システム・コード・デバッガを起動するコマンドの設定などがあります。また,OpenVMS デバッガを DCL コマンドの DEBUG/KEEP で起動していなければなりません。
CONNECT [process-spec]CONNECT %NODE_NAME node-name
process-spec
割り込みをかけたいイメージが実行されているプロセスを指定します。指定するプロセスはデバッガが起動されたプロセスと同じ OpenVMS ジョブにあるものでなければなりません。次のいずれかの形式で指定します。
[%PROCESS_NAME] proc-name スペースや小文字を全く含まない OpenVMS プロセス名。プロセス名にはワイルドカード文字のアスタリスク (*) を含むこともできます。 [%PROCESS_NAME] " proc-name" スペースや小文字を含む OpenVMS プロセス名。二重引用符 (") の代わりに一重引用符 (') を使用することもできます。 %PROCESS_PID proc-id OpenVMS プロセス識別子 (PID,16 進数)。
node-name
(Alpha または I64 のみ) Alpha オペレーティング・システムまたは I64 オペレーティング・システムをデバッグするときは,接続先のマシン (Alpha オペレーティング・システムまたは I64 オペレーティング・システムを稼動しているターゲット・マシン) のノード名を指定します。
/PASSWORD="password"
(Alpha または I64 のみ) Alpha オペレーティング・システムまたは I64 オペレーティング・システムをデバッグするときは,接続先のマシン (Alpha オペレーティング・システムまたは I64 オペレーティング・システムを稼動しているターゲット・マシン) に対するパスワードを指定します。そのマシンに対してパスワードが設定されていなかった場合は,この修飾子を省略することができます。/IMAGE_PATH="image-path"
(Alpha または I64 のみ) Alpha オペレーティング・システムをデバッグするときは,接続元のマシン (デバッガを実行しているホスト・マシン) に対するイメージ・パスを指定します。イメージ・パスは,システム・イメージの位置を指し示す論理名です。省略時の論理名は DBGHK$IMAGE_PATH: です。
(保持デバッガのみ。) プロセスを指定するとき,CONNECT コマンドを使用すれば,指定するプロセスでデバッガによる制御を受けずに実行されているイメージに割り込みをかけ,そのプロセスをデバッガの制御下に置くことができます。このコマンドは,DCL コマンドの RUN/NODEBUG でデバッグ可能なイメージを実行している場合,またはプログラムがデバッガを起動しない LIB$SPAWN 実行時ライブラリ呼び出しを行う場合などに役立ちます。$CREPRC システム・サービス呼び出しで作成したプロセスには接続することはできません。システムで実行中のデバッガのバージョンに応じて,ユーザは,ユーザが作成したプロセスとの接続に限定される場合もあり,また利用者識別コード (UIC) グループのメンバが作成したプロセスに接続することができる場合もあります。ときには,プロセスの作成前に SYSGEN SECURITY_POLICY パラメータを 8 に設定しなければならないことがあります。 表 2-1 は,デバッガの個々のバージョンに適用される制限事項の一覧表です。
表 2-1 プロセス作成の制限事項 (デバッガのバージョン別) デバッガのバージョン 接続可能なプロセス SYSGEN パラメータ設定の有無 VAX バージョン 5.5-2 以前,
Alpha バージョン 6.0 以前ユーザ自身が起動したプロセス なし VAX バージョン 6.0 ユーザ自身が起動したプロセスと, UIC グループのメンバが起動したプロセス あり VAX バージョン 6.1 以降,
Alpha バージョン 6.1 以降ユーザ自信が起動したプロセスと,UIC グループのメンバが起動したプロセス なし
デバッガ論理名 (JSY$DEBUG, JSY$DEBUGSHR, JSY$DEBUGUISHR, JSY$DBGTBKMSG, DBG$PROCESS, JSY$DBG_HELP, JSY$DBG_UIHELP, DEBUGAPPCLASS, JSY$VMSDEBUGUIL) がある場合,デバッガおよびターゲット・プロセスの両方で同一の定義に変換しなければなりません。
/DEBUG 修飾子付きでコンパイルおよびリンクしておかなければなりません。このイメージは,/NOTRACEBACK 修飾子付きでリンクしておくことはできません。
プロセスがデバッガの制御下に置かれたとき,イメージの実行は割り込みをかけられた時点で中断されます。
プロセスを指定しないと,CONNECT コマンドはデバッグ・セッションに接続されるのを待っているプロセスすべてをデバッガの制御下に置きます。待機中のプロセスがない場合には,Ctrl/C を押せば CONNECT コマンドを強制終了することができます。
省略時の設定では,プロセスがデバッガの制御下に置かれると,トレースポイントが検出されます。この定義済みトレースポイントは SET TRACE/ACTIVATING コマンドを入力した結果生じるものと同じです。デバッガの制御下に置かれたプロセスはデバッガによって認識されるようになり,SHOW PROCESS コマンドで表示できるようになります。
CONNECT コマンドを使用して,デバッガの制御下にあるプロセスのサブプロセスに接続することはできません。そのようなサブプロセスに接続するには,SET PROCESS コマンドを使用してください。
関連コマンド
DISCONNECT
Ctrl/Y
(SET,SHOW,CANCEL) TRACECONNECT コマンドを使用した OpenVMS オペレーティング・システムのデバッグ (Alpha および I64 のみ)
CONNECT コマンドを使用して OpenVMS システム・コード・デバッガ (SCD) で, Alpha オペレーティング・システムまたは I64 オペレーティング・システムのコードをデバッグできます。この機能には,ホストと呼ばれるシステムと,ターゲットと呼ばれるシステムの 2 つのシステムが必要です。ホストとターゲットは,同じオペレーティング・システム (Alpha または I64) を実行していなければなりません。ホストは,標準の OpenVMS システムとして構成します。このシステムから,DEBUG/KEEP を使用してデバッガを実行し,その後 CONNECT コマンドを入力します。ターゲットはスタンドアロン・システムで, SCD を有効にする特殊な方法でブートします。ホストとターゲットの間の通信は,イーサネット・ネットワークを通じて行います。
OpenVMS システム・コード・デバッガの使用についての詳細は,『OpenVMS System Analysis Tools Manual』を参照してください。
| #1 |
|---|
DBG_1> CONNECT |
このコマンドはデバッガに接続されるのを待っているプロセスをすべてデバッガの制御下に置きます。
| #2 |
|---|
DBG_1> CONNECT JONES_3 |
このコマンドは JONES_3 というプロセスで実行されているイメージに割り込みをかけ,そのプロセスをデバッガの制御下に置きます。 JONES_3 プロセスはデバッガが起動されたプロセスと同じ UIC グループになければなりません。また,イメージは /NOTRACEBACK 修飾子でリンクされていたものであってはなりません。
| #3 |
|---|
DBG> CONNECT %NODE_NAME SCDTST /PASSWORD="eager_beaver" %DEBUG-I-NOLOCALS, image does not contain local symbols DBG> |
この CONNECT コマンドは, OpenVMS オペレーティング・システムを実行しているターゲット・システムをデバッガの制御下に置きます。この例では,ターゲット・システムのノード名に SCDTST,パスワードに eager_beaver を指定しています。
デバッグ・セッション中に入力された場合, Ctrl/C はデバッグ・セッションを中断せずに,デバッガ・コマンドの実行を強制終了するか,プログラムの実行を中断します。
注意
デバッグ・セッション中は Ctrl/Y は使用できません。
[Ctrl/C]
Ctrl/C を押せば,デバッグ・セッションを中断せずに,デバッガ・コマンドの実行を強制終了するか,プログラムの実行を中断できます。この機能は,たとえばプログラムがブレークポイントのない無限ループを実行している場合や,完了するまでに長い時間を要するデバッガ・コマンドを強制終了したい場合に役立ちます。 Ctrl/C を押すと,デバッガ・プロンプトが表示され,デバッガ・コマンドを入力できる状態になります。プログラムがすでに Ctrl/C AST サービス・ルーチンを使用可能にしている場合には,SET ABORT_KEY コマンドを使用して,デバッガの強制終了機能を他の Ctrl キー・シーケンスに割り当てます。ただし,多くのCtrl キー・シーケンスの機能が定義済みであり, SET ABORT_KEY コマンドを使用すれば,そのような定義も上書きできることに注意してください (『OpenVMS ユーザーズ・マニュアル』を参照 )。オペレーティング・システムによって使用されていない Ctrl キー文字としては,G,K,N,P があります。
プログラムが Ctrl/C AST サービス・ルーチンを使用可能に していない 場合,デバッガの強制終了機能を他の Ctrl キー・シーケンスに割り当てると,Ctrl/C は Ctrl/Y と同じように動作します。つまり,デバッグ・セッションに割り込みをかけ, DCL レベルに戻します。
デバッグ・セション中には Ctrl/Y は使用できません。代わりに Ctrl/C を使用するか,SET ABORT_KEY コマンドで設定した同等の Ctrl キー・シーケンスを使用してください。
SPAWN コマンドと ATTACH コマンドを使用すれば,デバッグ・コンテキストを失わずに,デバッグ・セッションから移行したり,デバッグ・セッションに戻ったりすることができます。
関連コマンド
ATTACH
Ctrl/Y
(SET,SHOW) ABORT_KEY
SPAWN
DBG> GO
...
[Ctrl/C]
DBG> EXAMINE/BYTE 1000:101000 !should have typed 1000:1010
1000: 0
1004: 0
1008: 0
1012: 0
1016: 0
[Ctrl/C]
%DEBUG-W-ABORTED, command aborted by user request
DBG>
|
この例は,Ctrl/C を使用して,プログラム実行を中断し,デバッガ・コマンドの実行を強制終了する方法を示しています。
Ctrl/W は (DISPLAY/REFRESH と同様に ) 画面モードで画面を再表示します。
[Ctrl/W]
Ctrl/W についての詳しい説明は, DISPLAY コマンドの /REFRESH 修飾子の項目を参照してください。
DCL レベルから入力されると,Ctrl/Y はデバッガ制御を受けずに実行されているイメージに割り込みをかけ,ユーザが DCL コマンドの DEBUG でデバッガを起動できるようにします。
注意
デバッグ・セッション中は Ctrl/Y は使用できません。代わりに Ctrl/C を使用するか,SET ABORT_KEY コマンドで設定した同等の強制終了キー・シーケンスを使用してください。Ctrl/Y--DEBUG シーケンスでデバッガを起動したときは,デバッガの RUN コマンドも RERUN コマンドも使用できません。
[Ctrl/Y]
DCL レベルで Ctrl/Y を押すと,デバッガによる制御を受けずに実行しているイメージに割り込みをかけ,DCL コマンドの DEBUG でデバッガを起動できるようになります。イメージをデバッガの制御下に置くことができるのは,最低でも,イメージが /TRACEBACK 修飾子 (/TRACEBACK は LINK コマンドの省略時の設定 ) でリンクされている場合だけです。
イメージの実行に割り込みをかけるために Ctrl/Y を押すと,制御が DCL に渡されます。そのあと DCL コマンドの DEBUG を入力すると,割り込みをかけられたイメージがデバッガの制御下に置かれます。デバッガはその言語固有のパラメータを,割り込みをかけられたモジュールのソース言語に設定し,プロンプトを表示します。プロンプトが表示されたら,ユーザは SHOW CALLS コマンドを入力することにより,どこで実行が中断されたのかを判断できます。
Ctrl/Y--DEBUG シーケンスは,保持デバッガ (Kept Debugger) の構成では使用できません。
Ctrl/Y--DEBUG シーケンスは,デバッガへの HP DECwindows Motif for OpenVMS ユーザ・インタフェースでは使用できません。代わりに,STOP ボタンを使用してください。
デバッグ・セッション中は,CONNECT コマンドを使用して, ( 同じジョブの ) 他のプロセスでデバッガ制御を受けずに実行されているイメージをそのデバッグ・セッションに接続できます。
関連コマンド
CONNECT
Ctrl/C
DEBUG (DCL コマンド)
RUN (DCL コマンド)
| #1 |
|---|
$ RUN/NODEBUG TEST_B
...
[Ctrl/Y]
Interrupt
$ DEBUG
Debugger Banner and Version Number
Language: ADA, Module: SWAP
DBG>
|
この例では,RUN/NODEBUG コマンドはデバッガによる制御を受けずに TEST_B イメージを実行します。Ctrl/Y で割り込みをかけます。すると,DEBUG コマンドによってデバッガが起動されます。デバッガはバナーを表示し,割り込みをかけられたモジュール (SWAP) の言語 (この場合には Ada) に言語固有のパラメータを設定します。
| #2 |
|---|
$ RUN/NODEBUG PROG2
...
[Ctrl/Y]
Interrupt
$ DEBUG
Debugger Banner and Version Number
Language: FORTRAN, Module: SUB4
predefined trace on activation at SUB4\%LINE 12 in %PROCESS_NUMBER 1
DBG>
|
この例では,DEFINE/JOB コマンドによってマルチプロセス・デバッグ構成が設定されます。RUN/NODEBUG コマンドはデバッガの制御を受けずに PROG2 イメージを実行します。Ctrl/Y--DEBUG シーケンスは実行に割り込みをかけ,デバッガを起動します。バナーは新しいデバッグ・セッションが開始されたことを示します。起動時トレースポイントはデバッガがプロセスを制御下に置いたときに実行が割り込みをかけられた場所を表します。
| 前へ | 次へ | 目次 | 索引 |