このドキュメントでは、z/OS および z/VSE 環境での Natural 共有ニュークリアスについて説明します。
Natural は、環境非依存ニュークリアスと環境依存ニュークリアスの 2 つの機能部分に分割できます。
共有ニュークリアスの環境非依存部分は、オペレーティングシステムの以下の共有エリアに配置されます。
z/OS 環境の場合:リンクパック記憶域(LPA)または拡張リンクパック記憶域(ELPA)
z/VSE 環境の場合:共用仮想領域(SVA)
オペレーティングシステムのこれらの特殊エリアから実行することで、非依存ニュークリアスには、CICS、Com-plete、TSO、バッチモードなどの同じオペレーティングシステム内の複数のアドレススペース(つまり、リージョンやパーティション)から一般にアクセス(共有)できます。
以下の基本モジュールをまとめてリンクして、非依存の Natural(共有)ニュークリアスを構築できます。
モジュール | 機能 |
---|---|
NATSTUB |
Natural スタブモジュール。 |
NATURAL |
Natural コンパイラおよびランタイム。 |
NATCONFG |
Natural コンフィグレーションモジュール。 |
NATCMOD |
C ルーチンのバンドルモジュール(サーバー呼び出し)。 |
NATBPMGR |
Natural バッファプールマネージャ |
NAT2SORT |
すべてのシステム用の Natural ソート(Natural の内部または外部いずれかのソートプログラムを使用する場合)。 NAT2SORT をロードライブラリに含めることもできます。これにより、ランタイムにダイナミックにロードできるようになります。このためには、NAT2SORT をプロファイルパラメータ RCA で指定する必要があります。
|
NATRPCvr または NTRPC |
Natural RPC ランタイム。
注意: |
NATEDIT |
Natural プログラムエディタおよびマップエディタ。 |
NATTEXT |
Natural 構文。 |
NATTXT2 |
Natural キーワード。 |
NATTXT3 |
Natural エラーメッセージの置換部分。 |
NATPM |
Natural 出力モード。 |
INPL |
INPL モジュール。
|
NATEDT |
Software AG Editor モジュール。 |
NATLAST |
最後の INCLUDE。 |
以下のモジュールはオプションです。
モジュール | 機能 |
---|---|
NATTTY |
Natural テレタイプサポート |
NAT3270 |
3270 端末サポート |
NAT3279 |
3279 端末サポート |
NATWEB |
Web I/O 端末コンバータ(『Unicode およびコードページのサポート』ドキュメントの「Natural アプリケーションの入力/出力処理」の「Web I/O インターフェイス」参照) |
NATBTCH |
Natural バッチモジュール |
Unicode およびコードページのサポートにリンクするメインフレーム固有モジュールのリストについては、『Unicode およびコードページのサポート』ドキュメントの「Unicode/コードページ環境の設定と管理」の「ICU ライブラリ」を参照してください。
モジュール | 機能 |
---|---|
NATXML |
ニュークリアスルーチンモジュール |
詳細については、Natural の『インストール』ドキュメントの「REQUEST DOCUMENT および PARSE XML ステートメントサポートのインストール」を参照してください。
追加モジュールのリンクが必要になる場合があります。例えば、すべての Natural リージョンで使用される共通のユーザー出口やユーザー定義プログラムなどです。 リンクされたモジュールのエントリ名は、CMSTUB
である必要があります。
共有ニュークリアスには、以下の利点があります。
仮想ストレージの負荷が軽減される。
システム内にニュークリアスのコピーは 1 つしか存在しないため、ページングアクティビティが減少する。
Zap は 1 回しか適用されないため、メンテナンスの手間が少なくなる。
Natural の環境非依存部分を取り除いて共有ニュークリアスに置くことにより、環境依存ニュークリアスのサイズを大幅に縮小できます。これは、環境依存部分のみがバッチまたは TP モニタアドレススペースにロードされ、共有ニュークリアスはオペレーティングシステムのリンクパック記憶域からアクセスされるためです。
Natural バッチジョブで必要とされるストレージが削減されるため、ページングが減少し、オペレーティングシステムの全体的なパフォーマンスが向上します。 共有ニュークリアスに同時アクセスするバッチジョブが増えると、削減量も大きくなります。
バッチ環境の場合と同様、オンライン環境で実行される Natural は同じ共有ニュークリアスにもアクセスできます。 複数の CICS リージョンで Natural を実行するような実稼働環境では、仮想ストレージを大幅に節約できます。
また、Natural ニュークリアスに修正を適用するときにも利点があります。これらの Zap を共有ニュークリアスに適用する必要があるのは 1 回だけで、その後は複数の環境(CICS、Com-plete、TSO、バッチなど)からアクセスされるためです。
Natural for VSAM、Natural for DB2、Natural for DL/I、Natural Advanced Facilities などの製品を使用している場合は、これらの製品はすべて共有ニュークリアスから実行できるため、追加の利点もあります。
これらの製品をインストールするときは、これらの製品に固有の INCLUDE
ステートメントを共有ニュークリアスのリンクエディットに配置するだけで済みます。
LPA/ELPA または SVA にインストールされたモジュールでは、Zap をオンラインで適用できません。LPA/ELPA または SVA は書き込み保護されているためです。 z/OS 環境では、オペレータコマンド SETPROG
を使用して、共有ニュークリアスの新しいコピーを LPA/ELPA にロードできます。 ただし、特定の環境で修正をテストするには、サイトのニーズに応じて調整できる以下のメソッドのいずれかを使用することをお勧めします。
環境 | 要件 |
---|---|
バッチモード | STEPLIB 連結に追加するロードライブラリに、共有ニュークリアスをリンクエディットします。 オペレーティングシステムは、共有エリアのコピーの代わりに共有ニュークリアスのこのコピーにアクセスします。
|
CICS | CICS 起動手順で DFHRPL 連結に追加するロードライブラリに、共有ニュークリアスをリンクエディットします。 これにより、CICS は、共有エリアからではなく DFHRPL ライブラリから共有ニュークリアスをロードできるようになります。
共有ニュークリアスが CICS バージョン 3.3.0 以降を使用している場合は、 このプログラム定義に、z/OS では |
Com-plete/TPF | 共有ニュークリアスを、Com-plete ユーザープログラムライブラリにリンクし、Com-plete SYSPARM の RESIDENTPAGE プログラムのリストに追加するか、RESIDENTPAGE としてダイナミックにロードします。
|
TSO | TSO 環境の Natural 用の TP 依存ニュークリアスを含む同じロードライブラリに、共有ニュークリアスをリンクエディットします。 CLIST が実行されると、オペレーティングシステムは、共有エリアのコピーの代わりに共有ニュークリアスのこのコピーにアクセスします。
|
IMS/TM | IMS/TM アプリケーションリージョンの実行手順で STEPLIB 連結に追加するロードライブラリに、共有ニュークリアスをリンクエディットします。 Natural が開始されると、オペレーティングシステムは、共有エリアからではなく STEPLIB から共有ニュークリアスにアクセスします。
|
共有ニュークリアスは、SMA ジョブ NATI060 でリンケージエディタにより基本 Natural インストールのオプション部分として作成されます。
リンケージエディタ INCLUDE
ステートメントを共有ニュークリアス用に設定する場合は、必ず Natural の『インストール』ドキュメントのインストール手順に従ってください。
よくある間違いは、共有ニュークリアスまたは非共有ニュークリアスへのリンクエディット INCLUDE
ステートメントを省略または追加することです。これにより、Natural セッションを開始しようとすると、予期しない結果になることがあります。 この問題が発生する場合は、インストール手順を見直し、必要であれば Software AG サポートにお問い合わせください。
共有ニュークリアスのインストールについては、Natural の『インストール』ドキュメントを参照してください。さまざまな Natural TP モニタインターフェイスのインストールに関するセクションがあります。TP モニタインターフェイスについては、『TP モニタインターフェイス』ドキュメントを参照してください。 一般に注意する必要がある点は以下のとおりです。
共有ニュークリアスは、追加のリンクステップによって作成されます。 このリンクのターゲットライブラリは、オペレーティングシステムローダーが実行可能モジュールを検索する任意のライブラリでかまいません。 テスト目的では、最初に共有ニュークリアスを STEPLIB
(または SEARCH
チェーン)内の 1 つのライブラリにリンクしてから、実稼働用の LPA
(または SVA
)ライブラリにリンクするほうが簡単な場合があります。 混乱を避けるために、STEPLIB
ライブラリ内のモジュールは、LPA
ライブラリにリンクするときに削除する必要があります。
使用する共有ニュークリアスの名前は、環境依存部分をインストールするときに Natural パラメータモジュールのプロファイルパラメータ NUCNAME
で指定します。 NUCNAME
は、プライマリパラメータ入力ではダイナミックパラメータとして指定できますが、PROFILE
または SYS
パラメータ文字列ではできません。
ほとんどの Software AG サブ製品は、環境非依存 Natural ニュークリアスか環境依存部分にリンクできます。 サブ製品のインストール手順を参照してください。
ただし、以下の Natural サブ製品は、環境依存部分にリンクする必要があり、共有ニュークリアスにリンクすることはできません。
Adabas リンクルーチン(ADALNK
または ADAUSER
)
他にいくつかの製品で、個別の部分を共有ニュークリアスおよび環境依存部分にリンクする必要があります。 これについては、それぞれのサブ製品で詳細に記載されています。
Natural の一部のサブ製品では、Natural ニュークリアスに TP 固有のモジュールが含まれている必要があります。 この場合は、各オペレーティング環境に 1 つの単一環境の共有ニュークリアスを作成する必要があります(例えば、バッチモードに 1 つ、TSO に 1 つ、CICS に 1 つ)。これには、すべてのバッチリージョンやすべての TSO ユーザーが独自の Natural ニュークリアスを共有するという利点があります。
以下の図に、この状況の例を示します。
このコンセプトの単一環境の共有ニュークリアスは必ずインストールされるため、パラメータ SHARED-NUC
が Y
に設定されていれば、Software AG の System Maintenance Aid(SMA)でこのタイプの共有ニュークリアスが生成されます。
単一環境の共有ニュークリアスがすべて同じであり、TP モニタ固有のモジュールが含まれていない場合は、単一環境の共有ニュークリアスから複数環境の共有ニュークリアスに移行できます。
Natural 共有ニュークリアスの環境非依存部分の他に、単一の Natural リージョンはそれぞれ 1 つまたは複数の環境依存モジュールを実行します。環境依存モジュールは、実際の環境(Com-plete、CICS、IMS/TM、TSO、またはバッチモード)に応じて異なります。 環境依存部分は、セッションの開始時に制御を受け取り、Natural ニュークリアスがリンクされているかどうかをチェックします。 チェックされていない場合は、共有ニュークリアスがロードまたは検出され、通信が確立されます。
以下のモジュールは、各環境に固有の Natural の依存部分を構築するために、まとめてリンクする必要があります。
Natural 環境固有インターフェイス(つまり、NCFNUC
、NATCICS
、NATIMS
、NATTSO
、または NATOS/NATVSE
)と他のインターフェイス関連のモジュール
環境固有の Natural パラメータモジュール NATPARM
マクロ NTINV
により内部 CSTATIC
リストに定義されたエントリを持つ、または Natural パラメータモジュールで CSTATIC
として指定された、Natural サブ製品モジュール
Natural パラメータモジュールで CSTATIC
として定義された、Natural 以外のプログラム
Com-plete、TSO、またはバッチモード用のワークファイルおよび出力ファイルモジュール
Natural パラメータモジュール NATPARM
には、スタティックにリンクする Natural 以外のプログラムのリストが含まれています。 このリストは、マクロ NTINV
で定義された内部部分と CSTATIC
パラメータで定義された外部部分で構成されます。 リストの各エントリは、プログラム名と、対応するモジュールを Natural パラメータモジュールにリンクして解決する必要がある V 定数で構成されます。
内部リストは、非依存ニュークリアスの NATCONFG
モジュールに常に存在し、パラメータモジュールが非依存ニュークリアスにリンクされていない場合に使用されます。 非依存ニュークリアスにスタティックにリンクされた Natural 以外のプログラムがある場合は、これらすべてのプログラムが定義されたパラメータモジュールもリンクされている必要があります。
オプションで、代替パラメータモジュールを PARM
パラメータで指定できます。 代替パラメータモジュールは、リンクされたパラメータモジュールよりも優先されます。 セッション初期化時に、スタティックにリンクされたプログラムのリストが最大 3 つマージされます。 このマージの基本リストは、実際のパラメータモジュールのリストです。これは、そのエントリのみが使用されることを意味します。
このリストで解決されない V 定数は、代替パラメータモジュールが使用される場合は、環境パラメータモジュールによって解決が試されます。 環境パラメータモジュールで解決されない V 定数は、環境非依存ニュークリアスによって解決が試されます。
Natural 以外のプログラムが非依存ニュークリアスにスタティックにリンクされている場合は、これは、非依存ニュークリアスにリンクされたパラメータモジュールおよびセッションに実際に使用されるパラメータモジュールで指定される必要があります。
また、スタティックにリンクするように定義された Natural 以外のプログラムを、Natural セッションの初期化中に "ダイナミック" にリンクすることも可能です。 詳細については、RCA
プロファイルパラメータの説明を参照してください。
Natural 以外のプログラムを、スタティックにリンクする代わりに、Natural CALL
ステートメントを使用して実行時にダイナミックに呼び出すこともできます。 ただしこの場合は、プログラムを、スタティックにリンクされたと定義することはできません。
CALL ステートメントが実行されると、Natural は、ダイナミックなロードを試み、環境(サブ)システム(例えば、CICS 環境の EXEC CICS LINK
)を利用して、オペレーションを呼び出します。