本書について
Debug Tool は、充実した z/OS® 環境と言語環境プログラムの性能を組み合わせることにより、プログラマーが、プログラムのバグを特定して修正したり、アプリケーションのテストを行ったりするためのデバッガーを提供します。
Debug Tool を
使用すると、バッチでプログラムのテストを行ったり、非プログラマブル端末をフルスクリーン・モードで使用するか、ワークステーション・インターフェースを使用して、リモート側でプログラムをデバッグすることができます。
本書の対象読者
本書は、言語環境プログラムを使用する高水準言語 (HLL)、および言語環境プログラムを使用する、または使用しないアセンブラー・プログラムをデバッグするために、Debug Tool を使用しているプログラマーを対象としています。本書で HLL とは、C、C++、COBOL、および PL/I を指します。
Debug Tool は、z/OS オペレーティング・システムで実行され、以下のサブシステムをサポートしています。
- CICS®
- DB2®
- IMS™
- JES バッチ
- TSO
- UNIX システム・サービス、ただしリモート・デバッグ・モードあるいは専用端末を使用するフルスクリーン・モード の場合のみ
本書を用いて、サポートされているいずれかの言語で作成したプログラムをデバッグするためには、その言語のプログラムの作成、コンパイル、および実行の方法を理解している必要があります。
インターネット上の z/OS ライセンス資料へのアクセス
z/OS ライセンス資料は、インターネット上の以下の IBM® Resource Link® Web サイトから PDF 形式で入手できます。
http://www.ibm.com/servers/resourcelink
ライセンス資料は、z/OS のライセンスをお持ちのお客様だけが入手できます。これらの資料へアクセスするには、IBM Resource Link の
ユーザー ID、パスワード、およびキー・コードが必要です。z/OS のお客様にお渡ししている「Memo to Licensees」(GI10-0671) には、このキー・コードが記載されています。
IBM Resource Link のユーザー ID とパスワードを取得するには、以下の URL にログオンしてください。
http://www.ibm.com/servers/resourcelink
z/OS ライセンス資料へのアクセスのために登録するには、次のようにしてください。
- Resource Link のユーザー ID とパスワードを使用して、Resource Link にログオンします。
- 左端のナビゲーション・バーにある「User Profiles」を選択します。
注:
z/OS ライセンス資料は、利用登録をして、処理完了をお知らせする電子メールを受け取ると利用できるようになります。
ハードコピーのライセンス文書は IBM では取り扱っていません。
z/OS Licensed Product Library CD-ROM
または IBM Resource Link の
PDF 形式のファイルからライセンス文書を印刷することができます。
LookAt を使用したメッセージ説明の検索
LookAt は、多くの
IBM メッセージや、いくつかのシステム異常終了およびコードに関する説明を検索できるオンライン機能です。LookAt では、通常、該当メッセージの説明がただちに表示されるため、従来の
方法よりも短時間で、必要な情報を検索することができます。
以下の場所から LookAt を使用して、z/OS のエレメントとフィーチャー、z/VM®、VSE/ESA、および AIX® と
Linux
のクラスターに対する IBM メッセージの説明を検索することができます。
- インターネット。http://www.ibm.com/eserver/zseries/zos/bkserv/lookat/ の LookAt Web サイトから、IBM メッセージ説明を直接アクセスすることができます。
- ご使用の z/OS TSO/E ホスト・システム。
ご使用の z/OS
または z/OS.e
システムにコードをインストールして、TSO/E コマンド行 (例えば、TSO/E プロンプト、ISPF、または OMVS が稼働している
z/OS UNIX
システム・サービス) から LookAt
を使用して、IBM メッセージ説明にアクセスすることができます。
- ご使用の
Microsoft Windows ワークステーション。
コードをインストールして、Microsoft Windows コマンド・プロンプト (DOS コマンド行とも呼ばれる)
から LookAt を使用して、「z/OS Collection」(SK3T-4269)
の IBM メッセージ説明にアクセスすることができます。
- ワイヤレス・ハンドヘルド・デバイス。
ワイヤレス・アクセスとインターネット・ブラウザー (例えば、
Pocket PC 用 Internet Explorer、Palm OS 用 Blazer または Eudora、あるいは
Linux ハンドヘルド・デバイス用 Opera) を装備したハンドヘルド・デバイス
で、LookAt Mobile Edition を使用することができます。
LookAt Web サイトから LookAt Mobile Edition にリンクしてください。
「z/OS Collection」(SK3T-4269) のディスクから、または LookAt
Web サイトから、(「Download」をクリックし、ニーズに合った
プラットフォーム、リリース、コレクション、およびロケーションを選択して、)ホスト・システムまたは
Microsoft Windows ワークステーションに LookAt
をインストールするためのコードを入手することができます。ダウンロード・プロセス中に使用可能になる LOOKAT.ME
ファイルに詳細な情報があります。
本書の構成
本書では、適切な情報が容易に検索できるように、分野別に類似の情報をまとめてあります。次のリストは、情報がどのようにまとめられているかを示したものです。
- 第 1 部には、Debug Tool に関する概要の情報が収録されています。次のリストは、各章の内容を示したものです。
- 第 1 章では、Debug Tool を紹介し、その機能の一部について説明します。
- 第 2 章では、フルスクリーン・モードでの Debug Tool の使用法の単純なシナリオについて説明し、頻繁に使用する可能性のある基本的なコマンドを紹介します。
- 第 2 部には、プログラムをデバッグするための準備に関する情報が収録されています。次のリストは、各章の内容を示したものです。
- 第 3 章では、デバッグのためにプログラムを準備できるように、コンパイラー・オプション、デバッグ・モード、およびランタイム・オプションの選択方法について説明します。現在サービス休止となっているコンパイラーでコンパイルされた COBOL プログラムをデバッグするためのオプションも説明します。
- 第 4 章では、第 3 章で選択した内容を実装する方法について説明します。
- 第 5 章では、非言語環境プログラムの COBOL プログラムを準備する方法を説明します。
- 第 6 章では、アセンブラー・プログラムを準備する方法について説明します。
- 第 7 章では、DB2 プログラムを準備する方法を説明します。
- 第 8 章では、DB2 ストアード・プロシージャー・プログラムを準備する方法を説明します。
- 第 9 章では、CICS プログラムを準備する方法を説明します。
- 第 10 章では、IMS プログラムを準備する方法を説明します。
- 第 11 章では、TEST ランタイム・オプションの呼び出しをプログラム内に含める方法について説明します。
- 第 3 部には、Debug Tool の各種の始動方法に関する情報が収録されています。以下のリストは、画面の各章の説明です。
- 第 12 章では、TEST ランタイム・オプションを記述して Debug Tool を始動する方法およびタイミングを指示する方法について説明します。
- 第 13 章では、Debug Tool Utilities から Debug Tool を始動する方法について説明します。
- 第 14 章では、プログラムから Debug Tool を始動する方法について説明します。
- 第 15 章では、バッチまたは TSO プログラム用に Debug Tool
を始動する方法を説明します。
- 第 16 章では、CICS プログラムから Debug Tool を始動する方法について説明します。
- 第 17 章では、フルスクリーン・モードで Debug Tool を始動する方法を説明します。
- 第 18 章では、専用端末を使用するフルスクリーン・モード で Debug Tool を始動する方法を説明します。この章では、ストアード・プロシージャーから Debug Tool を始動するためのヒントについても説明します。
- 第 4 部には、フルスクリーン・モードでのプログラムのデバッグに関する情報が収録されており、C、COBOL、および PL/I プログラムをフルスクリーン・モードでデバッグする方法が例示されています。以下のリストは、画面の各章の説明です。
- 第 19 章では、フルスクリーン・モードの概要について説明します。
- 第 20 章では、サンプル COBOL プログラムを提供し、それをフルスクリーン・モード
でデバッグする方法について説明します。
- 第 21 章では、サンプル OS/VS COBOL プログラムを非言語環境プログラムの COBOL プログラムの見本として示し、それをフルスクリーン・モードでデバッグする方法について説明します。
- 第 22 章では、サンプル PL/I プログラムを提供し、それをフルスクリーン・モード
でデバッグする方法について説明します。
- 第 23 章では、サンプル C プログラムを提供し、それをフルスクリーン・モード
でデバッグする方法について説明します。
- 第 24 章では、サンプル C++ プログラムを提供し、それをフルスクリーン・モード
でデバッグする方法について説明します。
- 第 25 章では、サンプル・アセンブラー・プログラムを提供し、それをフルスクリーン・モード
でデバッグする方法について説明します。
- 第 26 章では、フルスクリーン・モードのデバッグ・セッションの外観を変更する方法、および他の設定に加えてこれらの変更をファイルに保管する方法について説明します。
- 第 5 部は、Debug Tool コマンドを入力して使用する方法に関する情報をまとめています。
- 第 27 章では、大/小文字混合コマンドの入力、DBCS
文字の使用、コマンドの短縮、複数行コマンドの入力、およびコメントの入力に関する情報を提供します。
- 第 28 章では、Debug Tool コマンドを使用して COBOL プログラムをデバッグする方法を説明します。
- 第 29 章では、Debug Tool コマンドを使用して非言語環境プログラム COBOL プログラムをデバッグする方法を説明します。
- 第 30 章では、Debug Tool コマンドを使用して PL/I プログラムをデバッグする方法を説明します。
- 第 31 章では、Debug Tool コマンドを使用して C または C++ プログラムをデバッグする方法を説明します。
- 第 32 章では、Debug Tool コマンドを使用してアセンブラー・プログラムをデバッグする方法を説明します。
- 第 33 章では、Debug Tool コマンドを使用して逆アセンブリー・プログラムをデバッグする方法を説明します。
- 第 6 部には、DB2、DB2 ストアード・プロシージャー、IMS、CICS、ISPF、UNIX システム・サービス、および実働レベルのプログラムのデバッグに関する情報が収録されています。
- 第 34 章では、DB2 プログラムをデバッグする方法を説明します。
- 第 35 章では、DB2 ストアード・プロシージャーをデバッグする方法を説明します。
- 第 36 章では、IMS プログラムをデバッグする方法を説明します。
- 第 37 章では、CICS プログラムをデバッグする方法を説明します。
- 第 38 章では、ISPF プログラムをデバッグする方法を説明します。
- 第 39 章では、実動レベルのプログラムをデバッグする方法を説明します。
- 第 40 章では、UNIX システム・サービス・シェルで稼働するプログラムをデバッグする方法を説明します。
- 第 41 章では、言語環境プログラムでは開始または稼働しないプログラムをデバッグする方法を説明します。
- 第 7 部には、複数の言語で記述されたプログラム、または複数のプロセスで動作するプログラムのデバッグに関する情報が収録されています。
- 第 42 章では、複数の言語で書かれたプログラムをデバッグする方法を説明します。
- 第 43 章では、マルチスレッドのプログラムをデバッグする際の制限について説明します。
- 第 44 章では、複数のプロセスおよびエンクレーブに渡って稼働するプログラムをデバッグする方法について説明します。
- 第 45 章では、複数エンクレーブの言語間通信 (ILC) アプリケーションをデバッグする方法について説明します。
- 第 46 章では、Java ネイティブ・メソッドによって呼び出されたプログラムをデバッグする方法について説明します。
- 第 47 章では、プログラム名または大規模サイズのプログラムにより引き起こされた問題を処理するための、Debug Tool への指示方法について説明します。
- 第 8 部は、付録をまとめています。以下のリストは、画面の各付録の説明です。
- 付録 A では、Debug Tool が情報の検索および保管に使用するデータ・セットについて説明します。
- 付録 B では、ソース、リスト、またはサイド・ファイルを見付けるために Debug Tool が使用するプロセスについて説明します。
- 付録 C では、すべての Problem Determination Tools で使用でき、ツールの切り替えが必要になっても再コンパイルを回避できるプログラムを作成するために選択すべきコンパイラー・オプションについて説明します。
- 付録 D では、1 つの例によって、Debug Tool Utilities を使用してサンプル・プログラムを準備し既存のセットアップ・ファイルを変更するプロセスを示します。
- 付録 E では、バッチ・モードでのプログラムのデバッグに関する情報を記述します。
- 付録 F では、DTST トランザクションを使用して、CICS ストレージを表示および変更する方法について説明します。
- 付録 G では、Debug Tool に付属して出荷される独立型プログラムである、ロード・モジュール分析プログラムの使用方法について説明します。
- 付録 H では、Debug Tool が提供する DTNP トランザクションを使用して、プログラムの新しいコピーをアクティブな CICS 領域にロードする方法について説明します。
- 付録 I では、IBM Debug Tool DTCN and DTSP Profile Manager プラグインをインストールする方法について説明します。
- 付録 J では、Debug Tool で生じる可能性がある問題を解決するのに役立つリソースについて説明します。
- 付録 K では、身体障害者が Debug Tool および Debug Tool 資料を使用するときに身体障害者を支援する機能とツールについて説明します。
最後の数トピックは、特記事項、参考文献、および用語集を記載しています。
本書で使用する用語
Debug Tool でサポートされる各種のプログラム言語間、あるいはプラットフォーム間で用語が異なるため、一群の共通用語を設けています。下記の表は、これらの用語とそれに対応する各言語での用語をリストしています。
| Debug Tool の用語 |
対応するC および C++の用語 |
対応する COBOL または非言語環境プログラムの COBOL の用語 |
対応する PL/I の用語 |
アセンブラー |
| コンパイル単位 |
C および C++ ソース・ファイル |
プログラムまたはクラス |
- プログラム
- Enterprise PL/I 用の PL/I ソース・ファイル
- Enterprise PL/I 用のパッケージ・ステートメントまたはメイン・プロシージャーの名前1
|
CSECT |
| ブロック |
関数または複合ステートメント |
プログラム、ネストされたプログラム、メソッドあるいは PERFORM ステートメント群 |
ブロック |
CSECT |
| ラベル |
ラベル |
パラグラフ名またはセクション名 |
ラベル |
ラベル |
注:
- PL/I プログラムは、以下のいずれかの環境でコンパイルおよび実行する必要があります。
- Enterprise PL/I for z/OS バージョン 3.6 以降でコンパイルし、以下のバージョンの言語環境プログラムで実行する。
- 言語環境プログラム バージョン 1.9 以降
- 言語環境プログラム バージョン 1.6、バージョン 1.7、またはバージョン 1.8 (APAR PK33738 用の PTF を適用済み)
- Enterprise PL/I for z/OS バージョン 3.5 (APAR PK35230 および PK35489 用の PTF を適用済み) でコンパイルし、以下のバージョンの言語環境プログラムで実行する。
- 言語環境プログラム バージョン 1.9 以降
- 言語環境プログラム バージョン 1.6、バージョン 1.7、またはバージョン 1.8 (APAR PK33738 用の PTF を適用済み)
Debug Tool は、特定レベルのコンパイラーを使用してコンパイルされたプログラムにのみ適用される機能を提供します。このため、「Debug Tool ユーザーズ・ガイド」では、次の用語を使用します。
- アセンブラー
- 高水準アセンブラー (HLASM) を使用してアセンブルされた、デバッグ情報を保持しているアセンブラー・プログラムを指します。
- COBOL
-
非言語環境プログラムの COBOL という用語で説明されている COBOL コンパイラーを除き、Debug Tool によってサポートされるすべての COBOL コンパイラーを指します。
- 逆アセンブリー、または逆アセンブル・プログラム
- デバッグ情報なしでコンパイルされた高水準言語プログラム、または、デバッグ情報を保持していないアセンブラー・プログラムを指します。Debug Tool は、これらのプログラムに対し、逆アセンブリー表示によってデバッグ・サポートを提供します。
- Enterprise PL/I
- Enterprise PL/I for z/OS and OS/390® および VisualAge® PL/I for OS/390 コンパイラーを指します。
- 非言語環境プログラム COBOL
- 以下のいずれかの COBOL プログラムを参照してください。
- IBM OS/VS COBOL コンパイラーでコンパイルされたプログラム。
- NOTEST コンパイラー・オプションを指定して VS COBOL II コンパイラーでコンパイルされ、非言語環境プログラムのライブラリーでリンクされたプログラム。
本書の内容を読み進む際にご注意いただきたいことは、言語環境プログラムのライブラリーを使用してプログラムをリンクおよび実行したとしても、OS/VS COBOL プログラムは非言語環境プログラムのプログラムである点です。
VS COBOL II プログラムは、NOTEST コンパイラー・オプションを使用してコンパイルし、かつ非言語環境プログラム・ライブラリーでリンクした場合は、非言語環境プログラムのプログラムです。
TEST コンパイラー・オプションを使用してコンパイルし、言語環境プログラムのライブラリーとリンクした VS COBOL II プログラムは、言語環境プログラムのプログラムです。
非言語環境プログラム COBOL に固有の情報が提供されていない限り、Debug Tool を始動し、非言語環境プログラムの COBOL プログラムをデバッグする方法についての説明については、
非言語環境プログラムのプログラムに関する情報を参照してください。
- PL/I
- 全レベルの PL/I コンパイラーを指します。例外については、参照される個々の PL/I コンパイラーについて記述されているテキストに注意書きがあります。
構文図の読み方
このセクションでは、構文図の読み方を説明します。構文図の記号と
図に含められる項目 (キーワード、変数、区切り文字、演算子、フラグメント参照、
オペランド) を定義し、こうした項目を含む構文例を示します。
構文図は、コマンド・ステートメントを構成する要素 (オプションと引数) と順序を図で示すものです。左から右、上から下に向かって、メインパスの横線をたどりながら読みます。
記号
構文図で示される記号は、以下のものです。
- 記号
- 定義
- >>---
- 構文図の開始を示します。
- --->
- 構文図が次の行に続くことを示します。
- >---
- 前の行から構文が続いていることを示します。
- ---><
- 構文図の終了を示します。
構文項目
構文図には、さまざまな項目が含まれます。含まれる構文項目には、以下のものがあります。
- キーワード: コマンド名またはその他のリテラル情報。
- 変数: 変数はイタリック体で小文字で示され、指定できる値の名前を表します。
- 区切り文字: キーワード、変数、または演算子の開始または終了を示します。例えば、左括弧が区切り文字です。
- 演算子: 演算子には、加算 (+)、減算 (-)、乗算 (*)、除算 (/)、等号 (=) や、実行の必要があるその他の数学的演算が含まれます。
- フラグメント参照 - さらに詳細に示すために、図から分離した構文図の一部です。
- 分離文字: 分離文字は、キーワード、変数、または演算子を区切ります。例えば、
コンマ (,) が分離文字です。
キーワード、変数、および演算子は、必須、オプション、またはデフォルトとして表示されます。フラグメント、分離文字、および区切り文字は、必須、またはオプションとして表記されます。
- 項目タイプ
- 定義
- 必須
- 必須項目は、メインパスの横線上に示されます。
- オプション
- オプション項目は、メインパスの横線の下に示されます。
- デフォルト
- デフォルト項目は、メインパスの横線より上に示されます。
構文例
以下の表に、構文例を示します。