日本-日本語

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

OpenVMS マニュアル


 

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

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

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


目次 索引




ソース・ファイルのディレクトリの検索リストと検索方法のどちらか一方,あるいは両方を指定します。

形式

SET SOURCE directory-spec[,...]


パラメータ



directory-spec

ソース・ファイルを検索する場合に,省略時の設定としてデバッガが使用する OpenVMS ファイル指定部分 ( 通常は装置/ディレクトリ ) を指定します。ユーザが指定しない全ファイル指定の任意の部分については,モジュールのシンボル・レコードに格納されているファイル指定 ( すなわち,ソース・ファイルがコンパイル時に持っていたファイル指定 ) が使用されます。

1 つの SET SOURCE コマンドでディレクトリを 2 つ以上指定すると,ソース・ディレクトリ検索リストが作成されます ( プロセス・レベルで定義した検索リスト論理名を指定することもできます )。この場合,デバッガは指定された最初のディレクトリから順に検索し,ソース・ファイルを検索するかディレクトリ・リストが終わるまで検索を続けます。


修飾子



/DISPLAY

デバッガがソース・コードを使用するときに表示するディレクトリ検索リストを指定します。省略時の表示検索ディレクトリはコンパイル・ディレクトリです。

/EDIT

デバッガが EDIT コマンドの実行中に使用するディレクトリ検索リストを指定します。省略時の編集検索ディレクトリはコンパイル・ディレクトリです。

/EXACT (省略時の設定)

使用するディレクトリ検索方法を指定します。この修飾子を使用した場合,デバッガはデバッガ・シンボル・テーブルにあるバージョンと 正確に一致する バージョンのソース・ファイルを検索します。

/LATEST

使用するディレクトリ検索方法を指定します。この修飾子を使用した場合,デバッガはソース・ファイルの 最新 バージョン,つまりディレクトリ内の一番大きい番号のバージョンを検索します。

/MODULE=module-name

指定されたモジュール だけ に使用するディレクトリ検索リストを指定します。SET SOURCE/MODULE コマンドには,上に挙げた修飾子を追加することができます。

/ORIGINAL

STDL プログラムにだけ適用される。別売レイヤード・プロダクトのコリレーション・ファシリティ (Correlation Facility) をインストールする必要があり,保持デバッガ (Kept Debugger) を起動する必要があります。デバッガが,STDLのコンパイル時に生成される中間ファイルではなく,元の STDL ソース・ファイルを表示するように指定します。

説明

省略時の設定では,デバッガはソース・ファイルがコンパイル時に入っていたディレクトリ内にあると予想します。ソース・ファイルがコンパイルのあとに別のディレクトリに移動していた場合は,SET SOURCE コマンドを使用して,ファイルを見つけるためのディレクトリ検索リストとディレクトリ検索方法を指定します。

ディレクトリ検索リストの指定

ODS-2 OpenVMS ファイルの完全指定は,次の形式です。

node::device:[directory]file-name.file-type;version-number 

この形式は,OpenVMS オペレーティング・システムに同梱の DECnet Phase IV で使用される DECnet ノード名機能を反映しています。詳細は,『DECnet for OpenVMS Networking Manual』を参照してください。

OpenVMS バージョン 6.1 と DECnet-Plus for OpenVMS を稼動している OpenVMS システムでは,ファイルの完全指定に完全名という拡張ノード指定を含めることができます。完全名は,DECdns 命名サービスに格納することができる階層構造の DECnet-Plus for OpenVMS ノード名です。完全名は次の形式で最高 255 バイトまで可能です。

namespace:.directory ... .directory.node-name 

この構文では,namespace にグローバル命名サービスを, directory ... .directory に命名サービス内の階層ディレクトリパスを,そして node-name に DECnet ノードを定義する特定のオブジェクトを指定します。

名前の体系を設定するための完全名と提案事項については,『OpenVMS システム管理者マニュアル』を参照してください。 DECnet-Plus for OpenVMS については,『DECnet-Plus for OpenVMS Introduction and User's Guide』を参照してください。

ソース・ファイルのファイル完全指定が 255 文字を超えると,デバッガはファイルを検索できません。この問題を解決するには,まず論理名 "X" (DCL レベルで ) を長いファイル指定に合わせて拡大するよう定義してから SET SOURCE X コマンドを使用します。

/DISPLAY 修飾子または /EDIT 修飾子のどちらもない SET SOURCE コマンドはディスプレイおよび編集検索ディレクトリの両方を変更します。

/DEBUG 修飾子を使用してプログラムをコンパイルする場合,ルート・ディレクトリ論理名を使用してソース・ファイルの記憶位置を指定するときは,それが 隠し ルート・ディレクトリ論理名でなければなりません。隠しルート・ディレクトリ論理名でない場合ソース・ファイルを他のディレクトリに移動すると,デバッガの SET SOURCE コマンドを使用してソース・ファイルの新しい記憶位置を指定することができません。

隠しルート・ディレクトリ論理名を作成するには,DCL の DEFINE コマンドに /TRANSLATION_ATTR=CONCEALED 修飾子を指定します。

ディレクトリ検索方法の指定

SET SOURCE コマンドを実行する場合,2 つの修飾子 /LATEST と /EXACT のいずれかが必ず有効でなければなりません。これらの修飾子は,デバッガの検索方法に影響を与えます。/LATEST 修飾子は,最後に作成されたバージョン (ディレクトリ内の一番大きい番号のバージョン) を検索するようデバッガに指示します。/EXACT 修飾子は,最後にコンパイルされたバージョン (コンパイル時に作成されたデバッガ・シンボル・テーブルに記録されているバージョン) を検索するようデバッガに指示します。たとえば,SET SOURCE/LATEST コマンドはSORT.FOR;3 を検索し,SET SOURCE/EXACT コマンドは SORT.FOR;1 を検索するという具合です。

デバッガはディレクトリ検索リストを使用してバージョンを見つけると,作成日時,更新日時,ファイル・サイズ,レコード形式,およびファイル構成がコンパイル時の元のソース・ファイルと同じかどうかを調べます。これらがすべて一致した場合,デバッガは元のソース・ファイルが新しいディレクトリにそのままのバージョンで存在していると結論づけます。

デバッガはディレクトリ検索リストを使用してバージョンを見つけられないと,ソース・コードを初めて表示するときに,更新日時が最も近いファイル (そのようなファイルがディレクトリ内に存在している場合) を識別し,NOTORIGSRC メッセージ ("original version of source file not found") を発行します。

/EDIT 修飾子の指定

ソース・コードの表示に使用するファイルが EDIT コマンドを使用して編集しようとしているファイルと異なる場合は,/EDIT 修飾子を指定しなければなりません。これは,Ada プログラムの場合に当てはまります。Ada プログラムの場合,(SET, SHOW, CANCEL) SOURCE コマンドは,ソース・ディスプレイに使用するファイル (Ada プログラム・ライブラリ内の"コピーされた"ソース・ファイル) の検索に影響を与えます。(SET, SHOW, CANCEL) SOURCE/EDIT コマンドは,EDIT コマンドを使用して編集するソース・ファイルの検索に影響を与えます。/EDIT とともに /MODULE を使用すると, /EDIT の効果を/MODULE で修飾することができます。

Ada プログラムについての詳しい説明は,ヘルプ・トピック Language_Support Ada を参照してください。

/ORIGINAL 修飾子の指定

システムに別売レイヤード・プロダクトのコリレーション・ファシリティ (Cor relation Facility) をインストールしなければ,SET SOURCE コマンドに /ORIGINAL を修飾子を使用することはできません。デバッグ前にコリレーション・ライブラリを作成する方法については,コリレーション・ファシリティのドキュメントを参照してください。

次に,保持デバッガ (Kept Debugger) を起動して SET SOURCE/ORIGINAL コマンドを次のように実行します。

$   DEBUG/KEEP
DBG> SET SOURCE/ORIGINAL
DBG> RUN filename.EXE

以上のコマンドを実行すると,他のサポート言語のプログラムと同じように STDL ソース・コードをデバッグすることができるようになります。

関連コマンド

(SHOW,CANCEL) SOURCE


#1
DBG> SHOW SOURCE
  no directory search list in effect
DBG> SET SOURCE [PROJA],[PROJB],[PETER.PROJC]
DBG> SHOW SOURCE 
    source directory list for all modules, 
    match the latest source file version: 
        [PROJA] 
        [PROJB] 
        [PETER.PROJC]

この例では SET SOURCE コマンドによって,デバッガがディレクトリ [PROJA],[PROJB],[PETER.PROJC] をこの順に検索してソース・ファイルの最新バージョンを検索するようにしています。

#2
DBG> SET SOURCE/MODULE=CTEST/EXACT [],SYSTEM::DEVICE:[PROJD]
DBG> SHOW SOURCE
   source directory search list for CTEST, 
    match the exact source file version: 
        [] 
        SYSTEM::DEVICE:[PROJD] 
    source directory list for all other modules, 
    match the latest source file version: 
        [PROJA] 
        [PROJB] 
        [PETER.PROJC]

前の例の続きのこの例では,SET SOURCE/MODULE=CTEST コマンドによって,デバッガが現在の省略時のディレクトリ ([]),SYSTEM::DEVICE:[PROJD] の順にソース・ファイルを検索し,CTECT モジュールで使用できるようにしています。 /EXACT 修飾子は,デバッグ・シンボル・テーブルにあるバージョンと正確に一致するバージョンの CTEST ソース・ファイルを検索するように指定しています。

#3
DBG> SET SOURCE /EXACT
DBG> SHOW SOURCE
    no directory search list in effect, 
     match the exact source file
DBG> SET SOURCE [JONES]
DBG> SHOW SOURCE
    source directory list for all modules, 
     match the exact source file version: 
         [JONES]
DBG> CANCEL SOURCE /EXACT
DBG> SHOW SOURCE 
     source directory list for all modules, 
     match the latest source file version: 
         [JONES]

この例では,最初の SET SOURCE/EXACT コマンドで設定した検索方法 (一致バージョンの検索) は,SET SOURCE [JONES] コマンドでもそのまま有効です。 CANCEL SOURCE/EXACT コマンドは,SET SOURCE/EXACT コマンドを取り消し,さらに SET SOURCE [JONES] に影響を与えています。




STEP コマンドの省略時の修飾子 (/LINE,/INTO など) を設定します。

形式

SET STEP step-default[,...]


パラメータ



step-default

STEP コマンドの省略時の設定を指定します。次のキーワード (STEP コマンドの修飾子と同じ) を指定できます。

BRANCH それ以降の STEP コマンドが STEP/BRANCH (次の分岐命令までステップ実行する) として扱われます。
CALL それ以降の STEP コマンドが STEP/CALL (次の呼び出し命令までステップ実行する) として扱われます。
EXCEPTION それ以降の STEP コマンドが STEP/EXCEPTION (次の例外までステップ実行する) として扱われます。
INSTRUCTION それ以降の STEP コマンドが STEP/INSTRUCTION (次の命令までステップ実行する)として扱われます。
INTO それ以降の STEP コマンドが STEP/OVER(呼び出されたルーチンを 1 ステップ実行する) ではなく STEP/INTO (呼び出されたルーチン内の命令をステップ実行する) として扱われます。INTO を指定した場合,パラメータ [NO]JSB,[NO]SHARE, [NO]SYSTEM を使用するか,または STEP/[NO]JSB,STEP/[NO]SHARE, STEP/[NO]SYSTEM のコマンドと修飾子の組み合わせ (当 STEP コマンドにだけ影響を与えます) を使用して,ステップ実行したいルーチンの型を修飾できます。
LINE 省略時の設定。それ以降の STEP コマンドは, STEP/LINE (次の行までステップ実行する) として扱われます。
OVER 省略時の設定。それ以降の STEP コマンドは, STEP/INTO (呼び出されたルーチン内の命令をステップ実行する) ではなく STEP/OVER (呼び出されたルーチンを 1 ステップとして実行する) として扱われます。
RETURN それ以降の STEP コマンドは, STEP/RETURN (現在実行中のルーチンの戻り命令をステップ実行する。すなわち,制御が呼び出し元のルーチンに戻る前の地点までステップ実行する) として扱われます。
LINE 省略時の設定。それ以降の STEP コマンドは, STEP/LINE (次の行までステップ実行する) として扱われます。
SEMANTIC_EVENT (Alpha のみ) それ以降の STEP コマンドは,STEP/SEMANTIC_EVENT (次のセマンディック・イベントまでステップ実行する)として扱われます。これによって,最適化されたプログラムのデバッガが簡単になります。 (詳細は,『デバッガ説明書』を参照してください。)
SHARE 省略時の設定。INTO が指定されている場合,それ以降の STEP コマンドは STEP/INTO/SHARE (共用可能イメージ内の呼び出されたルーチンとそれ以外の呼び出されたルーチン内の命令をステップ実行する) として扱われます。
NOSHARE INTO が指定されている場合,それ以降の STEP コマンドが,STEP/INTO/NOSHARE (共用可能イメージ内の呼び出されたルーチンを 1 ステップとして実行するが,それ以外のルーチンでは,その中の命令をステップ実行する) として扱われます。
SILENT それ以降の STEP コマンドが STEP/SILENT (1 ステップあとに, "stepped to..."メッセージまたは現在の記憶位置のソース行を表示しない) として扱われます。
NOSILENT 省略時の設定。それ以降の STEP コマンドが STEP/NOSILENT (1 ステップあとに, "stepped to..."メッセージを表示する) として扱われます。
SOURCE 省略時の設定。それ以降の STEP コマンドが STEP/SOURCE(1 ステップあとに,現在の記憶位置のソース行を表示する) として扱われます。またそれ以降のコマンド SET BREAK,SET TRACE, SET WATCH は,それぞれコマンド SET BREAK/SOURCE,SET TRACE/SOURCE, SET WATCH/SOURCE(ブレークポイント,トレースポイント,ウォッチポイントで現在の記憶位置のソース行を表示する) として扱われます。
NOSOURCE それ以降の STEP コマンドが STEP/NOSOURCE(1 ストップあとに,現在の記憶位置のソース行を表示しない) として扱われます。また,それ以降のコマンド SET BREAK,SET TRACE, SET WATCH は,それぞれ SET BREAK/NOSOURCE,SET TRACE/NOSOURCE, SET WATCH/NOSOURCE(ブレークポイント,トレースポイント,ウォッチポイントで現在の記憶位置を表示しない) として扱われます。
SYSTEM 省略時の設定。INTO が指定されていると,それ以降の STEP コマンドが STEP/INTO/SYSTEM (システム空間 (P1 空間) 内の呼び出されたルーチンとそれ以外の呼び出されたルーチン内の命令をステップ実行する) として扱われます。
NOSYSTEM INTO が指定されている場合,それ以降の STEP コマンドが STEP/INTO/NOSYSTEM(システム空間内の呼び出されたルーチンを1 ステップとして実行するが,他のルーチンの場合はそのルーチン内の命令をステップ実行する) として扱われます。


説明

SET STEP コマンドは,それ以降の STEP コマンドの省略時の修飾子を設定します。SET STEP コマンドで指定するパラメータは, STEP コマンドの修飾子と同じ名前です。次のパラメータは, STEP コマンドが 1 ステップあとでどこで実行を中断するのかを決定します。
BRANCH
CALL
EXCEPTION
INSTRUCTION
LINE
RETURN
SEMANTIC_EVENT (Alpha のみ)

次のパラメータは,STEP コマンドを実行したときにどの出力を表示するかを制御します。

[NO]SILENT
[NO]SOURCE

次のパラメータは,ルーチンを呼び出したときの動作を制御します。

INTO
OVER
[NO]SHARE
[NO]SYSTEM

STEP コマンドで省略時の設定以外の修飾子を指定すると,そのコマンドの実行中だけ,現在の STEP の省略時の修飾子を上書きできます。SHOW STEP コマンドを使用すると現在の STEP の省略時の修飾子を表示できます。

PF1-PF3 を押して画面モードにすると,SET STEP NOSOURCE コマンドと SET MODE SCREEN コマンドが指定されます。したがって,STEP コマンドの実行の結果またはブレークポイント,トレースポイント,ウォッチポイントが検出された結果作成された出力表示と DO 表示内ではソース・コードが表示されず,ソース表示による無駄を省くことができます。

関連コマンド

SHOW STEP
STEP

#1
DBG> SET STEP INSTRUCTION,NOSOURCE

このコマンドを使用すると,デバッガは STEP コマンドを入力したときに次の命令まで実行します。STEP コマンドごとにソース・コード行を表示することはありません。

#2
DBG> SET STEP LINE,INTO,NOSYSTEM,NOSHARE

このコマンドを使用すると,デバッガは STEP コマンドを入力したときにプログラムの次の行まで実行してから,ユーザ空間にある呼び出されたルーチン内の命令だけをステップ実行します。システム空間内のルーチンと共用可能イメージ内のルーチンは1 ステップとして実行されます。

タスキング・プログラム ( マルチスレッド・プログラムとも呼ばれます ) の 1 つまたは複数のタスクの属性を変更します。

形式

SET TASK [task-spec[,...]]


パラメータ



task-spec

タスク値を指定します。次のいずれかの形式を指定します。

  • イベント機能が THREADS の場合

    • プログラムで宣言されているタスク ( スレッド ) ID 番号,または結果がタスク ID 番号となる言語式。

    • 2 などのタスク ID 番号(SHOW TASK コマンドで表示される)

  • イベント機能が ADA の場合

    • プログラムで宣言されているタスク ( スレッド ) 名,または結果がタスク値となる言語式。パス名も使用できます。

    • %TASK 2 などのタスク ID (SHOW TASK コマンドで表示される)

  • 次のタスク組み込みシンボルのいずれか

    %ACTIVE_TASK GO,STEP,CALL,または EXIT コマンドの実行時に実行されるタスク。
    %CALLER_TASK Ada プログラムにのみ適用される。 accept 文の実行時に,その accept 文に対応するエントリを呼び出したタスク。
    %NEXT_TASK デバッガのタスク・リスト中で可視タスクの次のタスク。タスクの順番は自由に決められますが,その順番は 1 回のプログラム実行の中で不変です。
    %PREVIOUS_TASK デバッガのタスク・リスト中で可視タスクの前のタスク。
    %VISIBLE_TASK シンボル,レジスタ値,ルーチン呼び出し,ブレークポイントなどの検索時に現在のコンテキストになっている呼び出しスタックとレジスタ・セットを持つタスク。

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


修飾子



/ABORT

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


目次 索引

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