GLOPデータに関連付けられた特定の属性が、変更のプロパティおよびGLOPセットがGLOPデータにマップする仕方を決定します。
GLOP変更属性
GLOP変更属性は、GLOPが読み取り専用、読み取り/書き込み、グローバルに変更可能、または無効のどれかを決定します。
属性 | 説明 |
---|---|
読み取り専用 | 絶対に変更しないGLOPデータに使用されます。実際に、メモリ アクセスは読み取り専用に設定されます。GLOPデータを変更しようとすると、システムが無保護モードで実行中にはリセットされ、保護またはセキュア モードで実行中にはセグメンテーション違反エラーになります。 |
読み取り/書き込み | 実行時に変更するGLOPデータに使用されます。いつでもメモリの読み取りおよび書き込みを行なうことができます。しかし、同じGLOPデータがマップされているかもしれない異なる外部ルーチンについて、同時更新による相互の競合が生じないようにするため、書き込み側によるGLOPデータへのWRITEロックと読み取り側によるREADロックを適用することが最良事例です。 |
グローバルに変更可能 | 実行時にグローバルに変更される可能性があるGLOPデータに使用されます。これはすべてのノード上のすべてのvprocsですぐに変更できる読み取り/書き込みGLOPデータです。このモードが設定されていない場合、GLOPデータはグローバルな仕方で更新できません。 |
無効 | マップされないGLOPデータに使用されます。1つ以上のセットにこのデータの定義がありますが、データへのアクセスはオフにされています。 |
GLOPデータの変更属性を設定するのは、DBCExtension.GLOP_Addストアド プロシージャを呼び出してGLOPデータおよびGLOPマッピングをGLOPセットに追加するときです。詳細は、DBCExtension.GLOP_Addストアド プロシージャを参照してください。
GLOPマッピング属性
GLOPマッピング属性は、GLOPセットがGLOPデータをマップする仕方を決定します。
属性 | 説明 |
---|---|
通常 | 通常マッピング モードは、GLOPデータがGLOP型の指定で指示されたとおりにマップされることを意味します。 |
共有 | 共有マッピング モードは通常のGLOP データ マッピングを上書きし、型に関係なく、vprocごとにGLOPデータの共有コピーを1つマップします。マッピング モード属性はGLOPセットに関連付けられます。複数のGLOPセットで同じGLOPデータに共有フラグが設定されている場合、それらのGLOPセットはGLOPデータへの同じ論理アドレスを取得します。同じGLOPデータの追加セットに通常モードが設定されている場合、そのセットは他の共有コピーとは無関係のGLOPデータの別のコピーを取得します。 ノードごとに1つのコピーしかマップされないため、読み取り専用GLOPデータの場合はこの設定は関係ありません。
|
GLOPデータのマッピング属性を設定するのは、DBCExtension.GLOP_Addストアド プロシージャを呼び出してGLOPデータおよびGLOPマッピングをGLOPセットに追加するときです。詳細は、DBCExtension.GLOP_Addストアド プロシージャを参照してください。
GLOPデータ エージング
読み取り専用GLOPデータはメモリ不足でエージングが行なわれる可能性があります。エージング タイムアウトは、アクティブでない分数で指定できます。これにより、未使用のGLOPマッピングに費やすメモリおよびディスク リソースの使用を減らすことができます。
読み取り/書き込みまたはグローバルに変更可能なGLOPデータはエージングしません。
セッション ベースのGLOPデータは、セッションがログアウトすると削除されます。トランザクション ベースのGLOPデータは、トランザクションが終了すると削除されます。また、リクエスト ベースのGLOPデータは、リクエストが終了すると削除されます。