異常終了の診断
- プログラムが COBOL によって呼び出された途端に 0C5 アドレス・エラーで中断するのはなぜですか。
- Enterprise Developer では、デフォルトの COBOL コンパイル・オプションは NOAMODE です。これは、アセンブラ・モジュールに渡されるどのパラメータもネイティブの PC アドレス形式になり、CALL 時に直ちに OC5 アドレス・エラーが生成されることを意味します。COBOL プログラムで 370 メインフレーム形式アドレスを有効にするには、AMODE(24) または AMODE(31) コンパイラ指令を使用する必要があります。
- プログラムが COBOL によって呼び出された途端に異常終了するのはなぜですか。
- 異常終了の発生は、24 ビット・アセンブラ・プログラムに渡される無効な 31 ビット・アドレスが原因の可能性があります。この場合、DATA(24) 指令を設定することで、すべての COBOL 作業記憶域データ・アドレスを強制的に 24 ビットにする必要があります。
- 規模が大きく複雑なアプリケーションで異常終了を最も迅速にデバッグする方法は何ですか。
- GTF 命令トレースを生成するのが、問題を最も迅速に検出する方法と考えられます。GTF トレース・ファイルにより、問題のあるプログラムを判定し、異常終了までの正確な命令パスをたどることができます。なお、トレース・ファイルによって、エミュレートされている実際の 370 マシンコードを得ることができます。これと同じマシンコードがアセンブラ・リスティング (.PRN) ファイルに含まれており、テキスト・エディタを使用して検索できます。