このドキュメントでは、z/VSE オペレーティングシステム環境での Natural グローバルバッファプール(GBP)の目的と使用方法について説明します。
以下のトピックについて説明します。
Natural グローバルバッファプールの特定の部分は、z/VSE および z/OS 環境で共通しています。 これらの部分については、以下のトピックを含む別のセクションで説明しています(「z/OS および z/VSE 環境下の共通 Natural GBP オペレーティング機能」を参照)。
以下の項目も参照してください。
Natural の『メッセージおよびコード』ドキュメントの「Natural グローバルバッファプールマネージャのメッセージ」
Natural グローバルバッファプールは、16 MB より上の z/VSE システム GETVIS ストレージ(または、要求に応じて 16 MB より下のストレージ)から割り当てられるストレージのセグメントであり、Natural が Natural プログラムをロードおよび実行する際に使用されます。 Natural グローバルバッファプールはストレージキー 9 に割り当てられるので、参加するすべてのパーティションはそこに書き込みアクセスできます。
グローバルバッファプールを使用すると、異なる TP モニタ(CICS や Com-plete などの複数のコピー)環境や複数のバッチセッションの複数の Natural セッションで同じエリアを共有するため、環境ごとにローカルバッファプールを必要とする場合よりも必要なストレージが少なくて済みます。
z/VSE 環境の Natural グローバルバッファプールには、ESA/390 または互換プロセッサのサブシステムストレージ保護機能が必要です。 このため、このハードウェア機能をサポートするには、最小オペレーティングシステムレベルの z/VSE バージョン 2 リリース 4 も必要となります。
インストール手順は必要ありません。 グローバルバッファプールは、NATGBPvr プログラムによって操作されます。このプログラムは、Natural ロードライブラリに含まれ、そこから実行されます。
NATGBPvr
から使用できる機能は、以下の場合にアクティブになります。
パラメータカード(PARM
=)によって提供
ファイルから読み取り(下記参照)
NATGBPvr
実行中にオペレータ(AR コマンド MSGxx
。xx は z/VSE パーティション ID)によって提供
NATGBPvr は、EXEC
ジョブ制御文のパラメータフィールド(PARM
=)に最初のコマンドがあると想定します。
以下を入力できます。
いずれかの機能(「z/OS および z/VSE 環境下の共通 Natural GBP オペレーティング機能」を参照)
CF=<dlbl-name>
を指定した入力ファイルへの参照。<dlbl-name>
は JCL で定義されている DLBL 名または z/VSE(パーティション)標準ラベルです。 サポートされているのは "カードイメージ" ファイル、つまり RECFM=F,LRECL=80
のみで、入力レコードの最初の 72 バイトのみが優先されます。 入力ファイルから取得される各レコードはコマンドを表します。 空白のレコードと接頭辞がアスタリスク("*")のレコードは無視されます。 <dlbl-name>
のアスタリスク(*)は、入力を SYSIPT から読み取る必要があることを NATGBPvr
に示します。 ファイルは、ファイルの終わり(EOF)に達するまで処理されます。
例:PARM='CF=SYSIN1'
パラメータフィールドが提供されていないか空白の場合は、コマンドはデフォルトで SYSIPT
から読み取られます。
機能の入力はコンソールで一度に 1 つずつまたはコマンドファイルを使用して 1 行に 1 つのみ可能で、それ以外の場合はエラーメッセージが返されます。
パラメータカード、ファイル入力、またはオペレータコンソール入力から取得された各コマンドは、オペレータコンソールに表示され、SYSLST
に記録されます。
NATGBPvr
プログラムを起動するには、NATGBPvr
を実行するジョブをサブミットします。
重要:
システム障害後にグローバルバッファプールを確実に維持するには、マシンの IPL 時にグローバルバッファプールが自動的に起動される必要があります。
すべてのコマンドが処理された後、以下の場合を除いて、NATGBPvr
は終了します。
RESIDENT=Y
が指定されている
キャッシュ付きのバッファプールが作成されている
NATGBPvr
は、以下のいずれかのコンディションコードを返します。
0 | すべての機能が正常に実行されました。 |
20 | エラーが発生しました。詳細については、メッセージログを参照してください。 |
以下に、グローバルバッファプールを作成および終了するバッチジョブの例を示します。
以下の例で、vrs または vr は関連するバージョン(version)、リリース(release)、システムメンテナンスレベル番号(system maintenance level number)を表します。 製品バージョンの詳細については、『用語集』の「バージョン」を参照してください。
// JOB GBPSTART /* /* Starts a global buffer pool with the name NATvrGBP, a size of 1 MB and /* a text block size of 4 KB. The global buffer pool is allocated above 16 MB. /* The subsystem used is NATv. /* After the allocation, the job GBPSTART terminates. /* // LIBDEF PHASE,SEARCH=SAGLIB.NATLIB // EXEC NATGBPvr,SIZE=NATGBPvr,PARM='BPN=NATvrGBP,N=(1000)' /* // EXEC LISTLOG /&
// JOB GBPRES /* /* Starts a global buffer pool with the name GBP, a default size of /* 100 KB and a text block size of 1 KB. The global buffer pool is allocated /* below 16 MB. The subsystem used is SAGS. /* After the allocation, the job GBPRES will wait for further commands. /* Further commands may be entered using AR command MSG partition-id: /* the job GBPRES will then prompt for console input. /* // LIBDEF PHASE,SEARCH=SAGLIB.NATLIB // EXEC NATGBPvr,SIZE=NATGBPvr,PARM='BPN=GBP,N=(,BL,1),S=SAGS,R=Y' /* // EXEC LISTLOG /&
// JOB GBPSTOP /* /* Stops the global buffer pool GPB if it contains no active objects. If it /* does contain active objects, the operator console will prompt for a reply. /* Depending on the reply, the shutdown will be forced (Y) or aborted (N). /* The subsystem used is NATv. /* // LIBDEF PHASE,SEARCH=SAGLIB.NATLIB // EXEC NATGBPvr,SIZE=NATGBPvr,PARM='FSHUT,BPN=GBP' /* // EXEC LISTLOG /&
// JOB GBPSTRT2 /* Read commands from SYSIPT: /* /* Start 3 global buffer pools (subsystem id Nvrs) with name /* NATGBP1 - size=1024KB and a cache with size 2048KB /* NATGBP2 - size=2048KB without cache /* Display all buffer pools of subsystem id "Nvrs". /* /* Note: The job does not terminate by itself, but stays resident and waits /* for operator commands, because it owns the data space allocated for /* buffer pool NATGBP1. /* /* If the buffer pools should shut down, wake up sleeping job by MSG partition-id /* and enter parameter "CF=*" to execute the corresponding FSHUTs. /* // LIBDEF PHASE,SEARCH=SAGLIB.NATLIB // EXEC NATGBPvr,SIZE=NATGBPvr CREATE,BPN=NATGBP1,S=Nvrs,N=(1M),BPC=2M CREATE,BPN=NATGBP2,S=Nvrs,N=(2M) SHOWBP S=Nvrs /* FSHUT,BPN=NATGBP1,S=Nvrs FSHUT,BPN=NATGBP2,S=Nvrs SHOWBP S=Nvrs /*
モジュール NATGBPTX
はソース形式で提供されます。 このモジュールには、すべてのエラーメッセージが英語(大文字と小文字が混在)で含まれています。 メッセージは、必要に応じて他の言語に翻訳できます。 この場合は、"新しい" NATGBPTX
ソースモジュールをアセンブルし、NATGBPvr
をリンクし直す必要があります。
大文字の変数部分を含むグローバルバッファプールメッセージを発行するには、UCTRAN
パラメータを YES
に設定してグローバルバッファプールパラメータモジュール NATGBPRM
をアセンブルし、NATGBPvr
をリンクし直す必要があります。
NATGBPvr
をリンクし直すには、以下の JCL を使用します。
// OPTION CATAL,LIST ACTION NOAUTO,SMAP PHASE NATGBPvr,* INCLUDE NATGBPMG INCLUDE NATGBPRM INCLUDE NATGBPTX INCLUDE NATBPMGR ENTRY CMSTART /*