バージョン 4.2.5
 —  オペレーション  —

共通メモリプール

このドキュメントでは、BS2000/OSD 環境の Natural でグローバル共通メモリプールを起動および停止するプログラム、および BS2000/OSD 環境の Natural でローカルまたはグローバル共通メモリプールを定義するマクロについて説明します。

以下のトピックについて説明します。


グローバル共通メモリプール

BS2000/OSD 環境の Natural でグローバル共通メモリプールを起動および停止するために、以下のプログラムが用意されています。

注意:
以下の説明で、vrs は製品のバージョン、リリース、およびシステムメンテナンスレベルを表します。

CMPSTART プログラム

CMPSTART プログラムの機能は以下のとおりです。

キーワードパラメータ TXTSIZE および BPLIST(下記参照)は、Natural グローバルバッファプールを起動するときおよび CMPSTART プログラムにのみ有効です。

キーワードパラメータ JV および JVSUFX(下記参照)は、グローバル共通メモリプールを起動するときの CMPSTART プログラムにのみ有効です。

その他のすべてのキーワードパラメータは、BS2STUB モジュールの生成に使用される ADDON マクロのキーワードパラメータと同じです。

以下のキーワードパラメータを使用できます。

TXTSIZE | BPLIST | JV | JVSUFX

TXTSIZE - バッファプールのテキストレコードのサイズ

このキーワードパラメータは、Natural バッファプールのテキストレコードのサイズを KB 単位で定義します。

TXTSIZE=xx xx に指定できる値は 1、2、4、8、12、16 です。
TXTSIZE=4 デフォルトで Natural バッファプールのテキストレコードのサイズは 4 KB になります。

BPLIST - グローバルバッファプールのプリロードリスト

このキーワードパラメータは、Natural グローバルバッファプールのプリロードリストの名前を定義します。 プリロードリストの定義済み Natural プログラムは、最初のユーザーのログオン時に Natural グローバルバッファプールにロードされます。

BPLIST=name Natural プロファイルパラメータ BPLIST を参照してください。

JV - ジョブ変数の作成

このキーワードパラメータは、ジョブ変数を作成するかどうかを定義します。 このジョブ変数により、共通メモリプールのステータスをジョブ制御言語で制御できるようになります。

0 共通メモリプールの用意ができていません(作成モード)。
1 共通メモリプールの用意ができています(正常に有効化され初期化されました)。

ジョブ変数名は 2 つの部分から成ります。

ジョブ変数ナビゲーションのロジック:

CMPSTART プログラムが起動すると、ジョブ変数が使用可能かどうかが確認されます。 使用可能な場合は、ジョブ変数の値が "0" に設定されます。 使用できない場合は、ジョブ変数はカタログ化され、値が "0" に設定されます。 共通メモリプールが正常に有効化され初期化されると、ジョブ変数の値が "1" に設定されます。 グローバル共通メモリプールが終了すると、ジョブ変数は削除されます。

JV=YES ジョブ変数が作成されます。
JV=NO デフォルトでジョブ変数は使用されません。

JVSUFX - ジョブ変数名の接尾辞

このキーワードパラメータは、ジョブ変数名の 2 番目の部分を定義します。

JVSUFX=xxxxxxxx ジョブ変数名の 2 番目の部分を最大 8 文字で指定します。
JVSUFX=.SAG.JV これはデフォルト値です。

例:

NAME=EDTvrsGA,TYPE=EDT,JV=YES,JVSUFX=.SAG##JV . . . . . 

ジョブ変数名は EDTvrsGA.SAG##JV です。

オペレータコマンド

以下のオペレータコマンドは、グローバル共通メモリプールを終了します。

/INTRtsn,STOP 

または

/INTRtsn,END 

以下のオペレータコマンドは、グローバル共通メモリプールの名前、場所、アドレス、サイズ、およびアクティブ時間をコンソールに表示します。

/INTRtsn,DPRM 

以下のオペレータコマンドは、グローバル共通メモリプールの開始タスクをダンプ付きで終了します。

/INTRtsn,DUMP 

例:

CMPEND プログラム

CMPEND プログラムは、すべてのグローバル共通メモリプールの開始タスクを終了します。 CMPEND で入力するのは、グローバル共通メモリプールの名前です。

例:

/SYSFILE SYSDTA=(SYSCMD)
/EXEC (CMPEND,NATvrs.MOD)
NATSHARE,BPvrsGA
/* THE DELIMITER FOR THE DEFINED NAMES IS ' ' OR ','.

Top of page

ローカル共通メモリプール

このセクションでは、BS2000/OSD 環境の Natural でローカル(またはグローバル)共通メモリプールを定義できるマクロについて説明します。

BS2STUB マクロ

BS2STUB マクロの機能は以下のとおりです。

BS2STUB マクロには以下のパラメータがあります。

name BS2STUB PARMOD=nn,PROGMOD=xxx

name - CSECT の名前

name CSECT の名前を指定します。 最初の 3 文字に NAT を使用することはできません。
name BS2STUB これはデフォルトの名前です。

PARMOD - 24/31 ビットアドレッシングモード

このパラメータは、24 または 31 ビットアドレッシングモードを使用するかどうかを指定します。

PARMOD=nn nn に指定できる値は 24 または 31(ビット)です。
PARMOD=31 デフォルトでアドレッシングモードは 31 ビットに設定されます。

PROGMOD - 16 MB 境界より上または下にロード

このパラメータは、ダイナミックロードされるプログラムを 16 MB 境界より上または下のどちらにロードするかを指定します。

PROGMOD=ANY ANY は、モジュールが 16 MB 境界より上または下にロードされることを示します。 これはデフォルト設定です。
PROGMOD=24 24 は、モジュールが 16 MB 境界より下にロードされることを示します。

ADDON マクロ

ADDON マクロは、BS2STUB プログラムの ADDON テーブルで共通メモリプールを定義します。 このマクロには、以下のキーワードパラメータがあります。これは、CMPSTART プログラムにも適用されます。

ACCS | ADDR | ALNK | DATA | DESA | LIBR | LOAD | NAME | PFIX | POSI | SCOP | SIZE | STAT | TYPE | WAIT

ACCS - 共通メモリプールへのアクセス

このパラメータは、共通メモリプールへのアクセス方法を指定します。

ACCS=READ

読み取り専用アクセスであることを示します(書き込み禁止)。

ACCS=READ を設定するには、ユーザー ID がユーザーカタログの BS2000/OSD CSTMP マクロに対して認証されている必要があります(JOIN コマンドで C-M=YES を使用)。

ACCS=WRITE デフォルトで共通メモリプールは書き込み可能になります。

ADDR - 共通メモリプールアドレスのサイズ

このパラメータは、共通メモリプールの定義済みアドレスのメガバイト数を指定します。 サイズの指定は必須です。 デフォルト値はありません。

ADDR=number number は 0 以上である必要があります。

ALNK - AUTOLNK 機能のアクティブ化

このパラメータは、ダイナミックバインダローダー(DBL)の AUTOLNK 機能をアクティブにするかどうかを指定します。

ALNK=NO AUTOLNK 機能は非アクティブになります。
ALNK=YES デフォルトで AUTOLNK 機能はアクティブになります。

DATA - データスペースエリアのサイズ

このパラメータは、DESA パラメータと組み合わせて指定でき、起動するバッファプールまたはスワッププールのデータスペースエリアのサイズを定義します。 以下の設定が可能です。

DATA=nnnMB データスペースエリアのサイズを MB 単位で指定します。
DATA=nnnKB データスペースエリアのサイズを KB 単位で指定します。

ADDON マクロでの DATA パラメータの使用

CMPSTART プログラムでの DATA パラメータの使用

グローバルバッファプールを起動するには、DESA=YES を指定し、DATA パラメータを使用してデータスペースエリアのサイズを MB または KB 単位で指定します。 デフォルト値がないため、サイズの指定は必須です。

DESA - ESA データスペースエリア

このパラメータは、Natural バッファプールまたは Natural スワッププールに ESA データスペースエリアを作成するかどうかを決めるために指定する必要があります。

DESA=YES ESA データスペースエリアが作成されます。
DESA=NO デフォルトで ESA データスペースエリアは作成されません。
注意:
ESA データスペースは、独自の開始タスクを持つ 1 つのグローバル共通メモリプールにのみ作成してください。 ESA データスペースを作成したタスクが正常終了または異常終了すると、ESA データスペースは使用できなくなります。

LIBR - ロードライブラリ

このパラメータは、定義済みモジュールのロード元を指定します。 デフォルト値はありません。 パラメータ LIBR のオペランドを指定しない場合は、共通メモリプールのみが有効になります(ENAMP+REQMP)。

LIBR=library library はロードライブラリの名前です。
LIBR=BLSLIB リンク名が BLSLIB および BLSLIB01BLSLIB99 のライブラリが使用されます。
LIBR=CLASS-4 モジュールはサブシステムとしてクラス 4 メモリにロードされます。

LOAD - モジュールを共通メモリプールにロードするメソッド

このパラメータは、モジュールを共通メモリプールにロードする際に使用するマクロを指定します。

LOAD=ASHARE

ASHARE マクロが使用されます。

ASHARE を定義している場合は、パラメータ PFIX のオペランドを YES にする必要があります。

LOAD=BIND デフォルトで BIND マクロが使用されます。

NAME - 共通メモリプール/モジュールの名前

このパラメータは、モジュールの名前と共通メモリプールの名前のいずれかまたは両方を指定します。 名前の指定は必須です。 デフォルト値はありません。

NAME=name name は、共通メモリプールまたはモジュールの有効な名前です。

名前の最大文字数は以下のとおりです。

8 文字 モジュール名(共通メモリプールの名前)。Natural バッファプール。
16 文字 他のすべての共通メモリプール。

PFIX - 固定アドレス

このパラメータは、共通メモリプールのアドレスを固定するかどうかを指定します。

PFIX=YES 共通メモリプールのアドレスを固定する必要があります。
PFIX=NO デフォルトで共通メモリプールのアドレスを固定する必要がありません。

グローバル Natural ロードプールの場合は、このパラメータを YES に設定する必要があります。

POSI - 16 MB 境界からの相対位置

このパラメータは、共通メモリプールの位置を指定します。位置は 16 MB 境界より上または下を指定できます。

POSI=ABOVE 共通メモリプールは 16 MB 境界より上に配置されます。
POSI=BELOW デフォルトで共通メモリプールは 16 MB 境界より下に配置されます。

SCOP - 共通メモリプールの範囲

このパラメータは、共通メモリプールの範囲を指定します。

SCOP=LOCAL
SCOP=GROUP
SCOP=GLOBAL

共通メモリプールの範囲については、BS2000/OSD ドキュメントの ENAMP マクロの説明を参照してください。
SCOP=GLOBAL これはデフォルト設定です。

SIZE - 共通メモリプールのサイズ

このパラメータは、共通メモリプールのサイズを MB または KB 単位で指定します。

SIZE=nKB
SIZE=nMB

共通メモリプールのサイズを n KB または n MB に指定します。
SIZE=1MB デフォルトで共通メモリプールのサイズは 1 MB になります。

STAT - 共通メモリプールのステータス

このパラメータは、共通メモリプールのステータスを指定します。

STAT=GLOBAL 共通メモリプールのステータスは GLOBAL です(CMPSTART によって起動)。
STAT=LOCAL

共通メモリプールのステータスは LOCAL です(BS2STUB によって起動)。

デフォルトで共通メモリプールのステータスは LOCAL になります。

注意:
CMPSTART プログラムが実行されている場合は、STAT パラメータは無視されます。

TYPE - 共通メモリプールのタイプ

このパラメータは、共通メモリプールのタイプを指定します。 タイプの指定は必須です。 デフォルト値はありません。

TYPE=COM Natural DCOM プール
TYPE=EDT エディタバッファプール
TYPE=MON Natural Monitor プール(SYSMON
TYPE=NAT Natural バッファプール
TYPE=SRT ソートバッファプール
TYPE=SWP Natural スワッププール
TYPE=USR ユーザーバッファプール

WAIT - アプリケーション起動時の共通メモリプールの有効化または待機

このパラメータは、共通メモリプールを、アプリケーションの起動時にすぐに有効にするか、Natural から要求があるまで待機してから有効にするかを指定します。

WAIT=YES 共通メモリプールは Natural からの要求を待機し、要求があった時点で有効になります。
WAIT=NO デフォルトで共通メモリプールはアプリケーションの起動と同時に有効になります。

注意:
CMPSTART プログラムが実行されている場合は、WAIT パラメータは無視されます。

ADDEND マクロ

ADDEND マクロは、ADDON マクロの定義の終了を定義します。 ADDEND にはパラメータはありません。

BS2STUB マクロのアセンブルの例

BS2STUBA BS2STUB PARMOD=31,PROGMOD=24            31-BIT ADDRESSING MODE,
*                                                LOAD 3GL PROGRAMS BELOW
* +--------------------------------------------------------------------+ 
* I Define the Natural global load pool with Name NATSHARE 
* +--------------------------------------------------------------------+
         ADDON NAME=NATSHARE,STAT=GLOBAL 
* +--------------------------------------------------------------------+
* I Define the Natural local swap pool 
* +--------------------------------------------------------------------+
         ADDON NAME=SWAPvrsLA,TYPE=SWP,SIZE=16MB,STAT=LOCAL,POSI=ABOVE
* +--------------------------------------------------------------------+
* I Connecting a Natural global buffer pool with ESA data space 
* +--------------------------------------------------------------------+
           ADDON NAME=BPvrsGA,TYPE=NAT,STAT=GLOBAL
* +--------------------------------------------------------------------+
* I Creating/Connecting a Natural local buffer pool with ESA data space
* +--------------------------------------------------------------------+
         ADDON NAME=BPvrsLA,TYPE=NAT,POSI=ABOVE,SIZE=10MB,
               STAT=LOCAL,SCOP=LOCAL,DESA=YES,DATA=32MB
         ADDEND
         END

Top of page