バージョン 4.2.5
 —  デバッガ  —

デバッガの開始

このセクションでは、基本動作要件を説明し、デバッガの適用計画の作成方法についての大まかなガイドラインを示します。


Natural Security 環境でのデバッガ

デバッガの使用は、Natural Security によって制御されます。

Top of page

動作要件

デバッガは、現在の Natural システムファイルの現在のライブラリに格納されている、カタログ化オブジェクトの実行時にのみ呼び出されます。 RUN コマンドを使用して、ワークエリアに含まれるソースコードを実行したときには、デバッガは呼び出されません

効率的かつ正確にデバッグを行うには、ソースオブジェクトのソースコードが、カタログ化オブジェクトのコンパイル済みソースコードに対応している必要があります。これは、システムコマンド STOW を使用すると保証できます。 ソースオブジェクトを、カタログした後に変更した場合は、参照先のステートメントまたは変数が変更または削除されたために、デバッグエントリ(ブレイクポイントまたはウォッチポイント)が正しく機能しない可能性があります。 ソースオブジェクトのタイムスタンプが、対応するカタログ化オブジェクトのタイムスタンプより古いことをデバッガが検出すると、次の警告が表示されます。「Time stamps of source and cataloged object do not match.

デバッガは、現在のライブラリまたはその steplib の 1 つに含まれる Natural オブジェクトをすべて調査します。 Natural システムライブラリ SYSLIB または SYSLIBS に格納された Natural オブジェクトは、デバッガにより調査されません。

デバッガは Natural バージョン 2.3 以上のオブジェクトにのみ適用できます。それより前のバージョンでカタログされた他の Natural オブジェクトには適用できません。

バッチ処理

デバッガは、主にオンラインモードでの対話式動作を目的として設計されていますが、デバッガコマンドは、ブレイクポイントまたはウォッチポイントの設定などのバッチ実行に使用することもできます。

注意:
バッチ処理には制限があり、そのためにデバッガコマンドが拒否される場合があります。 例えば、デバッガは ++ コマンドおよび +4 コマンドをサポートしていません。

バッチでの統計の生成と出力の例

次に示すのは、デバッガのダイレクトコマンドをバッチモードで使用して、コール統計に関するレポートの生成と出力を行う例です。

//NATBATCH EXEC PGM=NATBAT42,                        
//   PARM=('INTENS=1,IM=D,CF=$,PRINT=((1-2),AM=STD)')
//STEPLIB  DD DISP=SHR,DSN=NATURAL.V2.TEST.NUCLEUS   
//CMPRINT  DD SYSOUT=X                               
//SYSOUT   DD SYSOUT=X                               
//CMPRT01  DD SYSOUT=X                               
//CMSYNIN  DD *                                      
LOGON DEBUGLIB                                       
TEST PROFILE                                         
,,,,CMPRT01                                          
,,,,,,$K3                                            
,,$K3                                                
TEST ON                                              
TEST SET XSTAT COUNT                                 
DEBUG2P                                              
TEST PRINT XSTAT                                     
FIN                                                  
/*

Top of page

デバッガの起動

Start of instruction setデバッガを起動するには

  1. Natural オブジェクトまたはアプリケーションのデバッグ環境を設定します。

  2. デバッガを有効にします。

  3. Natural オブジェクトまたはアプリケーションを実行します。

    デバッガは、指定したデバッグエントリでプログラム実行を中断し、[Debug Break]ウィンドウを呼び出します。

Start of instruction set エラー処理のためにデバッガを起動するには

エラー処理」セクションも参照してください。

Top of page

デフォルトオブジェクト

該当する各セクションで説明したように、デバッガのメンテナンス機能は、対応するメニューの名前フィールドまたはダイレクトコマンドで指定したオブジェクトを参照します。 オブジェクト名を指定しない場合、デバッガはデフォルトで、現在のオブジェクトの名前を使用します。これは、デバッグメインメニューの右上隅にある[Object]フィールドに表示されています。 デフォルトのオブジェクトを指定すると、ダイレクトコマンドおよびメニューオプションを使用してブレイクポイントまたはウォッチポイントを指定するときに、オブジェクト名を指定する必要がなくなります。 デフォルトオブジェクトを変更するには、「コマンドの概要と構文」セクションにあるコマンド SET の構文を参照してください。

Top of page