library home hp.com home products and services support and drivers solutions
cd-rom home
End of Jump to page title
HP OpenVMS Systems
Documentation

Jump to content


HP OpenVMS

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


前へ 次へ 目次 索引



SHOW STEP

STEP コマンドに対して現在有効になっている省略時の修飾子 (/INTO,/INSTRUCTION,/NOSILENT など ) を示します。

形式

SHOW STEP


説明

STEP コマンドの省略時の修飾子は前回 SET STEP コマンドで設定された省略時の修飾子です。 SET STEP コマンドを入力していなかった場合,省略時の修飾子として /LINE,/OVER,/NOSILENT,/SOURCE が使用されます。

PF1-PF3 を押すことにより画面モードを有効にすると, ( 出力表示と DO 表示の冗長ソース表示を削除するために ) SET MODE SCREEN コマンドだけでなく SET STEP NOSOURCE コマンドも入力されます。この場合,省略時の修飾子として /LINE,/OVER, /NOSILENT,/NOSOURCE が使用されます。

関連コマンド

STEP
SET STEP


DBG> SET STEP INTO,NOSYSTEM,NOSHARE,INSTRUCTION,NOSOURCE
DBG> SHOW STEP
step type: nosystem, noshare, nosource, nosilent, into routine calls, 
           by instruction
DBG>

この例では,SHOW STEP コマンドはデバッガが次の処置を取ることを示します。


SHOW SYMBOL

現在のイメージに対してデバッガの実行時シンボル・テーブル (RST) に関する情報を表示します。

注意

現在のイメージはメイン・イメージ ( 省略時の設定 ) または前回 SET IMAGE コマンドで現在のイメージとして設定されたイメージのどちらかになります。


形式

SHOW SYMBOL symbol-name[,...] [IN scope[,...]]


パラメータ

symbol-name

表示するシンボルを指定します。有効なシンボル名は単一の識別子または %LABELn という形式のラベル名です。ただし,n は整数です。RECORD.FIELD や ARRAY[1,2] などの複合名は有効ではありません。ワイルドカード文字のアスタリスク (*) をそれだけで指定すると,すべてのシンボルがリストされます。シンボル名の中にはワイルドカードを使用できます。

scope

モジュール,ルーチンまたはレキシカル・ブロックの名前,あるいは数値有効範囲を指定します。このパラメータは SET SCOPE コマンドの有効範囲指定と同じ構文を持ち,パス名修飾子を含むことができます。指定する有効範囲はすべて現在のイメージ内の設定されたモジュールになければなりません。

SHOW SYMBOL コマンドは指定された名前に一致し,しかも scope パラメータで指定されたレキシカル要素の中で宣言されている現在のイメージの RST にあるシンボルだけを表示します。このパラメータを省略すると,symbol-name パラメータで指定された名前に一致するシンボルを検索するために,現在のイメージに対して設定されているすべてのモジュールとグローバル・シンボル・テーブル (GST) が検索されます。


修飾子

/ADDRESS

選択されたそれぞれのシンボルに対するアドレス指定を表示します。アドレス指定はシンボルのアドレスを求める方法です。アドレス指定は単にシンボルのメモリ・アドレスにすることもできますが,間接参照やレジスタ値からのオフセットをいれることもできます。シンボルの中には,複雑すぎて,わかりやすく表示できないアドレス指定を持つものもあります。このようなアドレス指定には "complex address specifications" というラベルが付きます。

Alpha プロセッサでは,SHOW SYMBOL/ADDRESS procedure-name コマンドは指定されたルーチン,エントリ・ポイントまたは Ada パッケージのコード・アドレスとプロシージャ・ディスクリプタ・アドレスの両方を表示します。

/DEFINED

DEFINE コマンドで定義したシンボル (DEFINE シンボル・テーブルにあるシンボル定義 ) を表示します。

/DIRECT

scopeパラメータで直接宣言されるシンボルだけを表示します。 scope パラメータで指定された有効範囲内でネストされたレキシカル要素で宣言されたシンボルは示されません。

/FULL

/ADDRESS,/TYPE,/USE_CLAUSE 修飾子に関連するすべての情報を表示します。

C++ モジュールの場合,symbol-name がクラスの場合は, SHOW SYMBOL/FULL はそのクラスに関する情報も表示します。

/LOCAL

scope パラメータで直接宣言されるシンボルだけを表示します。scope パラメータで指定された有効範囲内でネストされたレキシカル要素で宣言されたシンボルは示されません。

/TYPE

選択された各シンボルについてデータ型情報を表示します。

/USE_CLAUSE

(Ada プログラムに適用される。) 指定のブロック,サブプログラムまたはパッケージが USE 句で名前を付ける Ada パッケージを示します。指定されたシンボルがパッケージである場合には,指定したシンボルに USE 句で名前を付けるブロック,サブプログラム,パッケージなども示します。

説明

SHOW SYMBOL コマンドはデバッガが現在のイメージ内の指定のシンボルに関して持っている情報を表示します。この情報はコンパイラが持っていた情報や,ソース・コードで確認できる情報と同じことがあります。それでも,このコマンドは,シンボルを処理するときにデバッガが取る動作の理由を理解するために役立ちます。

修飾子を指定しないと,SHOW SYMBOL コマンドは現在のイメージに対する RST に存在する ( つまり,現在のイメージに対して設定されているすべてのモジュールと GST にある ),指定されたシンボルの宣言または定義のすべてをリストします。シンボルはそのパス名といっしょに表示されます。パス名はデバッガがシンボルの特定の宣言に達するためにたどらなければならない検索有効範囲 ( モジュール,ネストされたルーチン,ブロックなど ) を識別します。デバッガ・コマンドでシンボリック・アドレス式を指定するときは,シンボルが 2 回以上定義されていて,デバッガがあいまいさを解消できない場合にだけパス名を使用します。

/DEFINED 修飾子と /LOCAL 修飾子は ( プログラムから派生するシンボルではなく ) DEFINE コマンドで定義されたシンボルに関する情報を表示します。他の修飾子はプログラム内で宣言されたシンボルに関する情報を表示します。

Ada プログラムに特有の情報については,「Ada」ヘルプ・トピックを参照してください。

関連コマンド

DEFINE
DELETE
SET MODE [NO]LINE
SET MODE [NO]SYMBOLIC
SHOW DEFINE
SYMBOLIZE

#1

DBG> SHOW SYMBOL I
data FORARRAY\I
DBG>

このコマンドはシンボル I が FORARRAY モジュールに定義されていて,ルーチンではなく変数 (データ) であることを示します。

#2

DBG> SHOW SYMBOL/ADDRESS INTARRAY1
data FORARRAY\INTARRAY1 
     descriptor address: 0009DE8B
DBG>

このコマンドはシンボル INTARRAY1 が FORARRAY モジュールに定義されていて,メモリ・アドレスが 0009DE8B であることを示します。

#3

DBG> SHOW SYMBOL *PL*

このコマンドは名前に "PL" という文字列が含まれているシンボルをすべてリストします。

#4

DBG> SHOW SYMBOL/TYPE COLOR
data SCALARS\MAIN\COLOR 
    enumeration type (primary, 3 elements), size: 4 bytes

このコマンドは変数 COLOR が列挙型であることを示します。

#5

DBG> SHOW SYMBOL/TYPE/ADDRESS *

このコマンドはすべてのシンボルに関するすべての情報を表示します。

#6

DBG> SHOW SYMBOL * IN MOD3\COUNTER
    routine MOD3\COUNTER 
    data MOD3\COUNTER\X 
    data MOD3\COUNTER\Y
DBG>

このコマンドはパス名 MOD3\COUNTER で示される有効範囲で定義されているすべてのシンボルをリストします。

#7

DBG> DEFINE/COMMAND SB=SET BREAK
DBG> SHOW SYMBOL/DEFINED SB
defined SB
    bound to: SET BREAK
    was defined /command
DBG>

この例では,DEFINE/COMMAND コマンドは SET BREAK コマンドのシンボルとして SB を定義します。SHOW SYMBOL/DEFINED コマンドはその定義を表示します。


SHOW TASK|THREAD

マルチスレッド・プログラム (タスキング・プログラムとも呼ばれる) のタスクに関する情報を表示します。

形式

SHOW THREAD [task-spec[,...]]


パラメータ

task-spec

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

ワイルドカード文字のアスタリスク (*) は使用できません。代わりに /ALL 修飾子を使用してください。/ALL,/STATISTICS または /TIME_SLICE を指定する場合,タスクは指定できません。


修飾子

/ALL

既存のすべてのタスク,つまり,すでに作成されているタスクで, (Ada タスクの場合には) マスタがまだ終了していないタスクを表示の対象として選択します。

/CALLS[=n]

表示の対象として選択されたタスクごとに SHOW CALLS コマンドを実行します。これはタスクの現在アクティブなルーチン呼び出し (呼び出しスタック) を示します。

/FULL

イベント機能が THREADS の場合は,コマンドを使用します。

表示の対象として選択された各タスクについて補足的な情報を表示します。他の修飾子を指定しないで /FULL を指定した場合,あるいは /CALLS または /STATISTICS を指定した場合には,補足的な情報が表示されます。

/HOLD

/NOHOLD (省略時の設定)

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

表示の対象として凍結状態になっているタスクか凍結状態になっていないタスクのいずれかを選択します。

タスクを指定しない場合,/HOLD は凍結状態のすべてのタスクを選択します。タスク・リストを指定すると,/HOLD はタスク・リストに載っている凍結状態のタスクを選択します。

タスクを指定しない場合,/NOHOLD は凍結状態になっていないすべてのタスクを選択します。タスク・リストを指定すると,/NOHOLD はタスク・リストに載っている凍結状態になっていないタスクを選択します。

/IMAGE

呼び出しスタック上の個々のアクティブな呼び出しのイメージ名を表示します。 /CALLS 修飾子と組み合わせたときにのみ有効です。

/PRIORITY=(n[,...])

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

タスクを指定しない場合には,指定した優先順位 n のどれかを持つすべてのタスクを選択します。ただし,n は 0 〜 15 の 10 進整数です。タスク・リストを指定すると,指定された優先順位のどれかを持つ,タスク・リストに載っているタスクを選択します。

/STATE=(state[,...])

タスクを指定しない場合,指定された状態,つまり,RUNNING,READY, SUSPENDED または TERMINATED のいずれかになっているタスクすべてを選択します。タスク・リストを指定すると,指定された状態のいずれかになっている,タスク・リスト内のタスクを選択します。

/STATISTICS

(Compaq Ada on VAX のみ) タスキング・システム全体のタスク統計情報を表示します。この情報を使用すると,タスキング・プログラムの性能を測定できます。全体のスケジューリング (コンテキスト・スイッチとも言う) の数が多ければ多いほど,タスキングのオーバヘッドが増えます。

/TIME_SLICE

(VAX のみ ) 前回の SET TASK/TIME_SLICE コマンドによる指定に従って,現在のタイム・スライス値を秒単位で表示します。 SET TASK/TIME_SLICE コマンドがそれまでに入力されていなかった場合には,プログラムで指定されているタイム・スライス値があればそれを表示します。それまでにタイム・スライス値が設定されていない場合には,値は 0.0,つまりタイム・スライスは無効ということになります。

/TIME_SLICE はイベント機能が ADA のときのみに有効になります。


説明

タスクは作成されるとすぐに,まず SHOW THREAD コマンドで表示することができます。タスクは終了するか,または (Ada タスキング・プログラムの場合) そのマスタが終了すると, SHOW THREAD コマンドを実行しても表示されなくなります。省略時の設定では,SHOW THREAD コマンドは選択されたタスク 1 つにつき 1 行の情報を表示します。

/IMAGE 修飾子を指定すると,デバッガはまずデバッグ情報を持っている各イメージ (/DEBUG または /TRACEBACK 修飾子を使ってリンクされたもの) に対して SET IMAGE コマンドを実行します。その後,デバッガは呼び出しスタック上の個々のアクティブな呼び出しについて,イメージ名を表示します。出力ディスプレイが拡大され,イメージ名が最初の欄に表示されるようになっています。

share$image_name モジュール名は /IMAGE 修飾子によって提供されるので,デバッガはこの情報は表示しません。

SET IMAGE コマンドの実行結果は,SHOW THREAD/CALLS/IMAGE コマンドを実行している間のみ有効です。デバッガは SHOW THREAD/CALLS/IMAGE コマンドが完了したときに,セット・イメージ状態を復元します。

関連コマンド

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

#1

DBG> SHOW EVENT_FACILITY
event facility is ADA
    ...
DBG> SHOW TASK/ALL
  task id   pri hold state   substate        task object 
* %TASK 1    7       RUN                   122624 
  %TASK 2    7  HOLD SUSP  Accept          H4.MONITOR 
  %TASK 3    6       READY Entry call      H4.CHECK_IN
DBG>

この例では,SHOW EVENT_FACILITY コマンドは現在のイベント機能として ADA を表示しています。SHOW TASK/ALL コマンドは,Ada サービスを使用して作成され,現在も存在しているすべてのタスクに関する基本的な情報を表示します。タスクごとに 1 行が使用されます。アクティブなタスクにはアスタリスク (*) が付けられます。この例では, %TASK 1 がアクティブなタスク (RUN 状態にあるタスク ) です。

#2

DBG> SHOW TASK %ACTIVE_TASK,3,MONITOR

このコマンドはアクティブなタスク,%TASK 3 タスク,および MONITOR というタスクを表示の対象として選択します。

#3

DBG> SHOW TASK/PRIORITY=6

このコマンドは優先順位が 6 になっているすべてのタスクを表示の対象として選択します。

#4

DBG> SHOW TASK/STATE=(RUN,SUSP)

このコマンドは実行中であるか,中断されているすべてのタスクを表示の対象として選択します。

#5

DBG> SHOW TASK/STATE=SUSP/NOHOLD

このコマンドは,中断されていて,しかも凍結状態でないすべてのタスクを表示の対象として選択します。

#6

DBG> SHOW TASK/STATE=(RUN,SUSP)/PRIO=7 %VISIBLE_TASK, 3

このコマンドは,可視タスクと %TASK 3 タスクの中から, RUNNING または SUSPENDED 状態になっていて,優先順位が 7 になっているタスクを表示の対象として選択します。


前へ 次へ 目次 索引