Rational Developer for System z、バージョン 7.6.1

付録G. DTST での CICS ストレージの表示および変更

DTST トランザクションによって、CICS® ストレージの表示、スキャン、および変更ができるようになります。 これは BMS トランザクションであり、3270 端末上で稼働します。

DTST の開始

このトピックでは、DTST の開始方法を説明するとともに、例を挙げます。

開始する前に、ストレージを変更する必要がある場合には、CICS キー・ストレージまたは USER キー・ストレージ、またはその両方を変更する権限があることを、システム・プログラマーに確認してください。 「Debug Tool カスタマイズ・ガイド」の『ストレージを変更するために DTST トランザクションを許可する』に、CICS キー・ストレージか USER キー・ストレージ、またはその両方を変更する権限を受けるためにシステム・プログラマーに実行してもらう必要があるステップが説明されています。

DTST トランザクションは、基底アドレスを指定して開始するか、指定せずに開始することができます。 基底アドレスは、次のいずれかの項目にすることができます。

DTST の開始時に、特定のアクションを実行するように指定することもできます。アクションを指定するには、以下のいずれかの文字を使用します。

DTST トランザクションの構文 で、すべてのパラメーターを説明します。

DTST の開始の例

以下の例では、DTST コマンドとパラメーターの入力方法を示します。

例: DTST の開始とリテラル 16 進数の指定

アドレス 45CB00 のストレージを表示するには、コマンド DTST 45CB00 を入力します。

基底アドレスは 45CB00 です。

例: DTST の開始とプログラム名の指定

プログラム MYPROG のプログラム・ストレージを表示するには、コマンド DTST P=MYPROG を指定します。

基底アドレスは、ストレージ内のプログラムのアドレスです。

例: DTST の開始とオフセットの指定
アドレス 45CB00 から D0 バイトの負のオフセットにあるストレージを表示するには、コマンド DTST 45CB00 - D0 を入力します。

計算 (45CB00-D0) の結果が基底アドレスになります。この例では、基底アドレスは 45CA30 です。

プログラム MYPROG の開始アドレスから 28 バイトの正のオフセットにあるプログラム・ストレージを表示するには、コマンド DTST P=MYPROG+28 を入力します。

プログラム MYPROG の開始アドレスが 8492A000 である場合、計算 (8492A000+28) の結果が基底アドレス (8492A028) になります。

フルワードが (例えばフェッチ保護ストレージ内で) 保護例外を生成する場合、DTST は「Storage Key」フィールドに疑問符を表示します。

例: 間接アドレッシングでの DTST の開始

間接参照によってストレージを表示するには、31 ビット・アドレッシングを示すためにアスタリスク (*) を使用するか、24 ビット・アドレッシングを示すためにアットマーク (@) を使用します。DTST は、そのアドレスに基底アドレスとしてフルワードを使用します。

アドレス 45CB00 に基底アドレスとしてフルワードを使用したい場合は、コマンド DTST 45CB00* を入力します。

複数のオフセットまたは間接参照レベルを組み合わせることができます。例えば、コマンド DTST 45CB00 + b* + 14** + 14* を入力すると、DTST は以下の順序で基底アドレスを計算します。

  1. 45CB00 から始めて、B0 を加算します。結果は 45CBB0 です。
  2. ロケーション 45CBB0 にアクセスし、そのロケーションにあるアドレスを取得します。この例では、アドレスが 29AD00 であるとします。
  3. 29AD00 に 14 を加算します。結果は 29AD14 です。
  4. ロケーション 29AD14 にアクセスし、そのロケーションにあるアドレスを取得します。この例では、アドレスが 1838AD であるとします。
  5. ロケーション 1838AD にアクセスし、そのロケーションにあるアドレスを取得します。この例では、アドレスが 251936 であるとします。
  6. 251936 に 14 を加算して、結果 25194A を得ます。
  7. ロケーション 25194A にアクセスし、そのロケーションにあるアドレスを取得します。この例では、アドレスが 3920AD であるとします。DTST はメモリー・ウィンドウを開き、3920AD から始まるストレージの内容を表示します。
例: BASE キーワードでの DTST の開始
BASE キーワードを使用すると、長いコマンド行を簡単に書くことができます。 BASE キーワードには、前の DTST コマンドの基底アドレスの値が代入されます。例えば、コマンド DTST 45CB00+10* を入力した場合、BASE には 45CB00+10* の結果の値が代入されます。45CB00+10* の値を後続のコマンドで使用したい場合は、BASE キーワードを使用します。例えば、DTST BASE+20* とします。
例: スキャン要求での DTST の開始
DTST コマンドにスキャン要求を追加することにより、探しているデータを指定できます。例えば、基底アドレス 45CB00 を起点として「WORKAREA」というデータを検出したい場合は、コマンド DTST 45CB00,S='WORKAREA' を入力します。基底アドレスから 4 K バイトのスキャンが開始されます。基底アドレス 45CB00 から始めて、各ダブルワードの先頭にある「WORKAREA」というデータを検出したい場合は、コマンド DTST 45CB00,S8='WORKAREA' を入力します。スキャンを負の方向に実行するように指定することもできます。これはアドレスの値が減少していくことを意味します。
例: ページ番号要求での DTST の開始
DTST コマンドにページ要求を追加することにより、表示したいページを指定できます。例えば、基底アドレス 45CB00 から 5 ページ目のストレージを表示したい場合は、コマンド DTST 45CB00,P=5 を入力します。これはコマンド DTST 45CB00 を入力してから Page Down キーを 5 回押すのと同じことになります。コマンド DTST 45CB00,P=-5 を入力した場合は、コマンド DTST 45CB00 を入力した後に Page Up (前ページ) キーを 5 回押すのと同じことになります。

DTST ストレージ・ウィンドウでのストレージの変更

DTST トランザクションの開始後、ストレージ・ウィンドウが表示されます。 ストレージ・ウィンドウに表示されているストレージの内容は、変更することができます。

開始する前に、CICS キー・ストレージまたは USER キー・ストレージ、またはその両方を変更する権限があることを、システム・プログラマーに確認してください。 「Debug Tool カスタマイズ・ガイド」の『ストレージを変更するために DTST トランザクションを許可する』に、CICS キー・ストレージか USER キー・ストレージ、またはその両方を変更する権限を受けるためにシステム・プログラマーに実行してもらう必要があるステップが説明されています。

前の DTST コマンドが正常に実行されたことを確認した後、以下のステップを実行して、ストレージを変更できます。

  1. PF9 を押して、変更モードに入ります。 コマンド行は保護され、列 4 から列 7 が無保護になります。
  2. 変更したいデータにカーソルを移動し、新しいデータを入力します。 一度に複数のロケーションを変更できます。
  3. Enter を押します。 DTST は入力されたデータの有効性を検査します。 DTST は有効なデータが入ったすべての変更を行います。 無効なデータを含んでいるワードがある場合は、そのワードを含んでいる行が強調表示されます。無効なデータを訂正した後、Enter を押して変更を検査できます。
  4. 任意のファンクション・キーを押して、変更モードを終了します。 ただし、以下のキーを押すことはできません。

DTST ストレージ・ウィンドウをナビゲートする方法はいくつかあります。

DTST コマンドの入力後に、次の手順を行います。

  1. 以下のいずれかの方法を選択して、ウィンドウ内をナビゲートします。
  2. DTST ストレージ・ウィンドウを閉じるには、PF3 キーを押します。

DTST ストレージ・ウィンドウ

DTST ストレージ・ウィンドウは、ストレージの表示と変更に使用するインターフェースです。

+----------------------------------------------------------------------------+
| Command  : DTST 00100000                                                   |
| Response : Normal                                                          |
| Page     : HOME     Storage Key : USER                                     |
+----------------------------------------------------------------------------+
| 00100000  0000 00 | C4A3D983 826E6E6E A7E10888 A0050004 | DtRcb>>>x..h.... |
| 001 1 10  0 2   3 | 001 4 12 000 5 00 000 6 00 000 7 00 | ....... 8 ...... |
| 00100020  0020 02 | A7E09170 8009D150 A7E152D8 00000000 | x.j...J.x..Q.... |
| 00100030  0030 03 | 00000001 000C5258 00000000 00000000 | ................ |
| 00100040  0040 04 | A6BF6098 800A4968 800B01DB 00000000 | w.-q.......Q.... |
| 00100050  0050 05 | 00000000 00000000 800B30CB 80140C10 | ...........H.... |
| 00100060  0060 06 | 8074B6A0 80155CA8 80160818 801683C0 | ......*y......c{ |
| 00100070  0070 07 | A6BFD338 00000000 A6BFD190 00000000 | w.L.....w.J..... |
| 00100080  0080 08 | 00000000 00000000 00000000 00000000 | ................ |
| 00100090  0090 09 | 00000000 00000000 00000000 00000000 | ................ |
| 001000A0  00A0 10 | 00000000 00000000 00000000 00000000 | ................ |
| 001000B0  00B0 11 | 00000000 00000000 00000000 00000000 | ................ |
| 001000C0  00C0 12 | 00000000 00000000 00000000 00000000 | ................ |
| 001000D0  00D0 13 | 00000000 00000000 00000000 00000000 | ................ |
| 001000E0  00E0 14 | 00000000 00000000 00000000 00000000 | ................ |
| 001000F0  00F0 15 | 00000000 00000000 00000000 00000000 | ................ |
+----------------------------------------------------------------------------+
|  1=Hlp  2=Retrv  3=End  5=RepeatScan  7=Up  8=Down  9=Modfy  ENTER=ReCalc  |
+----------------------------------------------------------------------------+

次のリストは、インターフェースのすべての部分を説明するものです。

コマンド
最近入力したコマンド。
応答
最近入力したコマンドの結果。 コマンドが正常に完了した場合、このフィールドに Normal と表示されます。コマンドが失敗した場合、前のコマンドで発生したエラーのタイプを示すメッセージが表示されます。
ストレージ・キー
次のいずれかの値を表示します。
CICS
CICS[ハイフン]キー・ストレージが表示されることを示します。
USER
USER[ハイフン]キー・ストレージが表示されることを示します。
キー n
キー n ストレージが表示されることを示します。
????
キーが認識されないことを示します。
!!!!
キーが取得できなかったことを示します。
 1 
ストレージのアドレスを表示します。アドレスはワード境界上で編成されます。ワード境界上にないアドレスを入力した場合、アドレスより前にある、ワードの先頭までのバイトには、ブランクが埋め込まれます。
 2 
列 1 のアドレスの、基底アドレスからのオフセットを表示します。 オフセットは、16 進数で表示されます。
 3 
ウィンドウに行番号 (0 から 15) を表示します。 この行番号は 10 進数で表示されます。
 4  から  7 
ストレージの内容を 16 進数で表示します。 1 つの列が 4 バイトを表しています。
 8 
EBCDIC のストレージ・コンテンツの内容を表示します。

以下の PF キーのいくつかは、前の操作が成功した場合にのみ機能します。 前の操作が成功した場合は、「Response」フィールドに Normal というワードが表示されます。

PF1 (ヘルプ)
ヘルプ画面を表示します。ヘルプ画面にはコマンド構文が例とともに表示され、すべてのキーワードがリストされます。
PF2 (取得)
コマンド履歴から前のコマンドを取得します。DTST は最大 10 個のコマンドをコマンド・ヒストリーに保管し、それより古いコマンドは破棄して、新しいコマンドが保存されるようにします。
PF3 (終了)
画面を消去して、トランザクションを終了します。
PF5 (RepeatScan)
スキャン操作を繰り返します。
PF7 (Up)
ストレージで、1 ページ (256 バイト) 戻る方向に移動します。基底アドレスは再計算されません。
PF8 (Down)
ストレージで、1 ページ (256 バイト) 進む方向に移動します。基底アドレスは再計算されません。
PF9 (変更)
変更モードを開始します。
Enter
DTST は次のいずれかのタスクを行います。

ヘルプ画面のナビゲーション・キー

DTST は、多くのオンライン・ヘルプ画面を提供します。それらの画面には、メインスクリーンで (変更モードでないときに) PF1 を押すことによってアクセスできます。その場合、メイン・ヘルプ索引が表示されます。ここで述べる PF キーを使用することにより、ヘルプ画面をナビゲートすることができます。

PF3
ヘルプ画面を閉じて、DTST ストレージ・ウィンドウに戻ります。
PF7
前の画面を表示します。
PF8
次の画面を表示します。
PF10
メイン・ヘルプ索引を表示します。
PF11
最後のヘルプ画面を表示します。

DTST トランザクションの構文

DTST トランザクションは、メモリー・ウィンドウにストレージを表示します。ストレージ域をナビゲートし、ストレージを変更できます。

DTST トランザクションの構文図

次のリストは、パラメーターを説明したものです。

address
1 から 8 文字の 16 進値。
BASE
前に入力し、正常に完了した DTST コマンドの基底アドレスの値。
displacement
1 から 8 文字の 16 進値。
modifier
アクションを行う方向を示します。デフォルトは順方向で、これは値が増加することを意味します。逆方向を指定するには、負符号 (-) を使用します。
P
プログラムの名前を指定しようとしており、そのプログラムの開始アドレスを基底アドレスとして使用したいことを示します。
program_name
プログラム名。
request_letter
DTST に行わせるアクションを示します。request_letter は、以下の文字のいずれかです。
P
DTST をページアップまたはページダウンすることを示します。
S
DTST にストレージを検索させ、ターゲットを検出した時点で検索を停止させたいことを示します。S 要求の構文は次のとおりです。
DTST トランザクションの構文図
value
16 進値か 10 進値、またはストリングを引用符 (") またはアポストロフィ (') で囲んだもの。DTST にスクロールさせたいページ数、または検索のターゲットを示すために使用します。

アドレス x'01000000' の後にあるメモリーの 5 番目のページ (画面) を表示したい場合は、コマンド DTST 01000000,P=5 を入力します。これは、 DTST 01000000 を入力してから PF8 を 5 回押すのと同じことです。

アドレス x'01000000' から検索を開始して x'00404040' を検出したいことを示すには、コマンド DTST 01000000,S=00404040 を入力します。


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)