このドキュメントでは、BS2000/OSD オペレーティングシステム環境での Natural グローバルバッファプール(GBP)の目的と使用方法について説明します。
以下の例で、vrs または vr は、対応するバージョン、リリース、およびシステムメンテナンスレベル番号を表します。 製品バージョンの詳細については、『用語集』の「バージョン」を参照してください。
以下のトピックについて説明します。
Natural グローバルバッファプールは、BS2000 バージョン 10.0 以降で使用できる共通メモリプールです。
これは、XS31 コンピュータでは、16 MB より下に、または 16 MB より上の拡張アドレススペースに配置できます。 XS31 以外のコンピュータでは、クラス 4 のストレージ(サイズはオペレーティングシステムの生成方法によって異なる)より下のユーザーアドレススペースに配置できます。
グローバルバッファプールは、TIAM 環境の複数の Natural、UTM 環境の Natural、およびバッチアプリケーションで同時に使用できます。 オペレーティングシステムごとに複数のグローバルバッファプールを持つことができます。
グローバルバッファプールは、最初の Natural アプリケーションの起動前にアクティブにする必要があります。 最後の Natural セッションが終了した後でも、オペレーティングシステムがアクティブである限り、グローバルバッファプールをアクティブのままにしておくことができます。 これにより、新しいセッションを開始したときにグローバルバッファプールの内容はまだ使用可能なので、再度バッファプールにロードする必要がありません。
グローバルバッファプールは、CMPSTART プログラムを起動するバッチジョブを実行することによって設定されます。 グローバルバッファプールの名前、サイズ、仮想アドレスなどは、このジョブに指定したパラメータで決まります。
CMPSTART ジョブの例:
/SYSFILE SYSOUT.LST.BPvrsGA /SYSFILE SYSDTA=(SYSCMD) /EXEC (CMPSTART,$NATvrs.NATvrs.BS2.MOD) NAME=BPvrsGA,TYPE=NAT,POSI=ABOVE,SIZE=2MB,ADDR=260,PFIX=NO,SCOP=GLOBAL /SYSFILE SYSDTA=(PRIMARY)
パラメータ値が無効であるか BS2000/OSD 環境に適合していない場合は、バッファプールタスクはエラーメッセージを表示して終了します。 エラーメッセージには、終了の原因と SVC リターンコード(該当する場合)が含まれます。 すべてのエラーメッセージは SYSOUT に出力されます。 重大なエラーの場合は、オペレータコンソールにも表示されます。
いったんグローバルバッファプールをアクティブにした後は、オペレータコンソールを使用して管理できます。
以下の BS2000/OSD コンソールコマンドを使用できます。tsn はバッファプールタスクの TSN です。
コマンド | 機能 |
---|---|
/INTR tsn,DPRM |
グローバルバッファプールの現在のパラメータ設定と開始時間を表示します。 |
/INTR tsn,SHUT /INTR tsn,STOP |
バッファプールタスクを正常に終了します。 |
/INTR tsn,DUMP |
バッファプールタスクを異常終了し、ダンプを生成します。 |
最後の Natural アプリケーションが終了するまで共通メモリプールはアクティブのままなので、バッファプールタスクの終了は必ずしもグローバルバッファプールの終了を意味しません。
このため、グローバルバッファプールをプログラムでも終了できるように、CMPEND
プログラムが用意されています。
例:
/PROC C /SYSFILE SYSDTA=(SYSCMD) /EXEC (CMPEND,NATvrs.MOD) name /* name of the global buffer pool /SYSFILE SYSDTA=(PRIMARY) /ENDP