Animator の起動 | ![]() |
Animator は、メニューで操作することのできる COBOL プログラム用の強力なデバッグツールです。このツールは Server Express 開発環境の一部として提供されています。Animator では、画面上のウィンドウにソースコードとアプリケーションが表示され、プログラムの実行に伴ってソースの各行が次々と強調表示されます。この過程はアニメート処理と呼びます。
Animator を使用すると、開発サイクルのさまざまな段階でアプリケーションをデバッグできます。具体的には、次に挙げる対象のデバッグが可能です。
プログラムの構文チェックを実行すると、Animator に必要な情報を含む Animator 情報ファイルがデフォルトで生成されます。このファイルは拡張子 .idy を持ち、通常は .idy ファイルと呼ばれます。
Animator では、次の方法でプログラムやアプリケーションをデバッグできます。
通常の開発サイクルの一部として COBOL プログラムをデバッグします。
実行時エラー (RTS173 File Not Found など) の発生時にアプリケーションをデバッグモードに落とします。通常は実行時エラーが発生するとエラーメッセージが表示され、その時点でアプリケーションが停止しますが、JIT デバッグを使用すればプログラムのデバッグをインラインで開始できます。
エラーが発生したときに、対象プログラムのソースファイルと .idy ファイルが利用できる場合は、ソースコード内のエラー発生行がアニメートされます。必要なファイルが存在しない場合は、エラーが発生したソースファイルやプログラムの名前が示されます。
Animator をプロセスに動的にアタッチ (追加) する方法。この方法により、すでに実行しているアプリケーションをデバッグできます。この方法は、特に規模の大きなアプリケーションに効果的です。大型のアプリケーションのデバッグを最初から実行するのは困難であり、かなりの時間を要するためです。動的アタッチメントデバッグを使用してデバッグするには、対象となるプログラムのソースファイルと .idy ファイルが必要です。
異常終了したアプリケーションのコアダンプをデバッグする方法です。Animator を使用して、アプリケーション終了時の状態のスナップショットを表示できます。コアダンプファイルは実行できないため、アプリケーションのステップ実行など一部の操作を行えませんが、データ項目や CALL/PERFORM スタックの内容を調べることは可能です。
コアダンプは Server Express をインストールしていない環境でも生成できます。したがって、この方法は、Server Express の開発環境を利用できないような現場や客先で完成版のアプリケーションをデバッグする手段として効果的です。コアダンプファイルを表示するには、JIT デバッグの場合と同じように対象プログラムのソースファイルと .idy ファイルが必要です。これらのファイルが存在しない場合には、エラーが発生したソースファイルやプログラムの名前が示されます。
複数の言語で開発したアプリケーションを Animator でデバッグする方法。プログラムのフローが COBOL プログラムから C の副プログラムに移行するときに、システムのデバッガを起動します。
プログラムの実行が特定のポイントに達したときに Animator を起動する方法。開発したアプリケーションは、必ずしも意図したとおりに動作するとは限りません。動作が意図とは異なる場合、その原因はコードの奥深い部分や、プログラムの開始後かなり経過した位置に存在する可能性があります。CBL_DEBUGBREAK ルーチンを使用すれば、プログラム実行の任意のポイントでデバッグを開始できます。
Net Express を使用して、リモートでプログラムをデバッグすることができます。この機能を使用すれば、Server Express で UNIX 向けに開発したプログラムや、Net Express の UNIX オプションを使用して UNIX システムに配布したプログラムをデバッグできます。リモートデバッグ機能は Net Express バージョン 3 で提供されています。リモートデバッグの詳細については、Net Express のマニュアルを参照してください。
リモートデバッグを実行するには、使用している UNIX システムでデバッグサーバを動作させる必要があります。詳細については、『Animator の起動』 の章の『リモートデバッグ』 の項を参照してください。
Animator は実行中のプログラムの情報を、ソースコードの対応する部分と共にウィンドウに表示します。Animator ではプログラムの実行速度を制御したり、実行に割り込みをかけてデータ項目のチェックや変更を行ったり、実行順序を変更することができるほか、特定の COBOL 文に入って、そこからプログラム実行を再開することも可能です。これらの機能を活用すればデバッグ作業をすばやく容易に行うことができます。
Animator では、一連の実行機能を柔軟に使いわけることによって、対処すべき問題に適した速度でコードを実行できます。すなわち、特に問題のない部分ではズーム機能を使用してコードの実行速度を最大限に上げ、問題のある箇所では文ごとにステップ実行したり、適度な実行速度に自動設定することができます。
ソースコードには任意の位置に区切り点を設定できます。区切り点を設定するには、必要な文ごとに個別設定するか、区切り点が発生する条件を定義します。区切り点を設定すれば、プログラムを自動実行する場合でも、任意のポイントで制御を手動に切り替えることができます。
プログラムのデバッグでは、予期しない結果が生じた原因を探るため、さまざまなデータ項目の監視が必要になることが少なくありません。プログラムの実行中には、監視対象のデータ項目の値が変更されるに伴って、Animator が該当項目を強調表示します。
プログラムに含まれるデータ項目を照会し、その内容を ASCII テキストや 16 進数形式で表示することもできます。照会したデータ項目の内容には、変更を加えることが可能です。変更した内容は、プログラム実行を再開するとただちに反映されます。
一連の Do 関数を使用すれば、プログラムのロジックテストを中断することなく、実行するコードを追加できます。Do 関数は直接入力して実行できるほか、他の COBOL 文と関連付けて、その文と共に実行することも可能です。後者の方法では追加コードがファイルに保存されるため、その部分がロジックとして効果的であれば、そのままソースコードに盛り込むことができます。
一部のコードのテストが不要な場合は、Reset 関数群を使用して該当するコードの実行をバイパスできます。
Copyright(C) 2001 Micro Focus. All rights reserved.
本書、ならびに使用されている固有の商標と商品名は国際法で保護されています。
Animator の起動 | ![]() |