Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 コンパイラーおよびランタイム 移行ガイド


CICS の場合の仮想記憶域情報

言語環境プログラムは、VS COBOL II ランタイムに比べて、より多くの CICS 動的ストレージ域を使用しま す。使用される CICS 動的ストレージ域の量およびストレージが CICS UDSA (16MB 境界より下の 動的ストレージ域) と CICS EUSDA (16MB 境界より上の動的ストレージ域) のどちらから割り 振られるかは、多くの要因に左右されます。

最も重要な要因は次のとおりです。
言語環境プログラムVS COBOL II ランタイムに比べてより多くの CICS 動的ストレージ域を使用する理 由は、次のとおりです。
  1. 言語環境プログラムの場合、実行単位ごとにストレージ管理が行われます。そのため、STACK、LIBSTACK、および別々のヒープが実行単位ごとに割り振られます。VS COBOL II では、STACK (SRA) およびヒープはトランザクション・レベルで管理されていました。
  2. 追加の制御ブロックが、言語環境プログラムの共通コンポーネントによって割り振られます。

次の表は、CICS TS バージョン 2 リリース 2 での VS COBOL II ラ ンタイムと言語環境プログラム・ランタイムに関するストレージ使用量のデータを示しています。このデー タは、補助トレースをオンにしておいて、1 つの VS COBOL II プログラムが別の VS COBOL II プロ グラムに対して EXEC CICS LINK を行う、単純なトランザクションを実行することにより収集 されたものです。使用されたストレージの量は、補助トレース出力の GETMAIN トレース記入項目を調べることによ り決定されました。

表 1. CICS アプリケーションの場合のストレージ割り振り

ストレージ割り振り

VS COBOL II ランタイム

言語環境プログラム
ランタイム

トランザクションごとに 2040 バイト

トランザクションが TASKDATALOC(BELOW) を定義されている場合、ストレージは 16 MB 境界より下です。トランザクションが TASKDATALOC(ANY) を定義されている場合、ストレージは 16 MB 境界より上です。

制御ブロックには固定サイズが使用されます。

14312 バイト

TASKDATALOC 指定に関わらず、ストレージは常に 16 MB 境界より上です。

制御ブロックには固定サイズが使用されます。

実行単位ごとに 16MB 境界より下で 740 バイト (GETMAIN 用の 400 バイトと制御ブロック用の 340 バイト)

最初の実行単位では、16MB 境界より上のヒープ・ストレージおよび境界より下のヒープ・ストレージが割り振られます。このストレージは、トランザクション時に作成されるすべての新しい実行単位によって使用 されます。必要に応じて追加ストレージが割り振られます。IBM 提供のデフォルトを使用しているときは、最初の実行単位の開始時に、境界より下 の 8168 バイトのストレージおよび境界より上の 16352 バイトのストレージが割り振られます。

 
ALL31(ON) で実行単位ごとに   16MB 境界より上の 33336 バイト。これには、制御ブロック用のストレージと、STACK、LIBSTACK、HEAP、およ び ANYHEAP 用のストレージが含まれます。16MB 境界より下のヒープが必要な場合は、要求時に割り振られます。
ALL31(OFF) および STACK(4K,4K,BELOW, KEEP) で実行単位ごとに   16MB 境界より上の 18000 バイト。これには、制御ブロック用のストレージと、HEAP および ANYHEAP 用のストレージが 含まれます。

16MB 境界より下の 19672 バイト。これには、制御ブロック用のストレージと、LIBSTACK、STACK、および BELOWHEAP 用 のストレージが含まれます。

注: このシナリオは、IBM 提供のランタイム・オプション (STACK、LIBSTACK、HEAP、ANYHEAP、および BELOWHEAP) 用の値を使って、z/OS V1.7 の言語環境プログラム上で実行されました。

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

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