Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

MPOOL - Common Memory Pool beschreiben (BS2000-Systeme)

Mit dieser Anweisung werden die Eigenschaften eines Common Memory Pools festgelegt.

Die Anweisung darf mehrmals angegeben werden. Die Obergrenze hängt davon ab, wie viele dieser Pools von einem Prozess angelegt werden können. Es werden jeweils maximal 8 Common Memory Pools mit SCOPE=GROUP bzw. SCOPE=GLOBAL unter einer Benutzerkennung unterstützt.

Die Common Memory Pools werden immer FIXED angelegt. Jedem Task, der sich an einem bereits existierenden Common Memory Pool anschließt, wird die gleiche Adresse zugewiesen wie dem Task, der den Common Memory Pool eingerichtet hat.

Die Reihenfolge der MPOOL-Anweisungen innerhalb des Generierungslaufs beeinflusst die Reihenfolge, in der die Common Memory Pools eingerichtet werden. Zuerst werden alle Common Memory Pools eingerichtet, die mit SCOPE=GLOBAL generiert sind, in der Reihenfolge der MPOOL-Anweisungen innerhalb des Generierungslaufs. Danach werden alle Common Memory Pools eingerichtet, die mit SCOPE=GROUP generiert sind, in der Reihenfolge der MPOOL-Anweisungen innerhalb des Generierungslaufs.

MPOOL

 poolname 
 [ ,ACCESS={ READ | WRITE } ]
 [ ,PAGE=X'xxxxxxxx' ]
 [ ,SCOPE={ GROUP | GLOBAL } ]
   ,SIZE=poolsize

poolname

Name des Common Memory Pools. poolname muss innerhalb der UTM-Anwendung eindeutig sein und kann max. 50 Zeichen lang sein.

Es wird eine Ziffer an den Namen angefügt.

ACCESS=

definiert die Zugriffsberechtigung.

    READ

Auf den Common Memory Pool kann nur lesend zugegriffen werden.

Standard: READ

    WRITE

Auf den Common Memory Pool kann sowohl lesend als auch schreibend zugegriffen werden.

PAGE= 

X’xxxxxxxx’

Hexadezimale Adresse in der Form X’xxxxxxxx’.

  • 24-Bit-Adressierungsmodus:
    Ist die Adresse nicht ein Vielfaches von 64 KB (die niederwertigen vier Halb-Bytes sind 0), dann wird die angegebene Adresse auf ein Vielfaches von 64 K aufgerundet.
  • 31-Bit-Adressierungsmodus:
    Die Adresse ist ein Vielfaches von 1 MB. Ist dies nicht der Fall, so wird die Adresse auf ein Vielfaches von 1 MB aufgerundet.

Standard:

  • 24-Bit-Adressierungsmodus: Der Pool wird ab der niedrigst möglichen Adresse angelegt.
  • 31-Bit-Adressierungsmodus: Der Pool wird ab der niedrigst möglichen Adresse über X‘01000000‘ angelegt.

    Werden auf einem BS2000-System globale Common Memory Pools gleichen Inhalts/Namens in mehreren UTM-Anwendungen verwendet, muss der Parameter PAGE=X’xxxxxxxx’ mit gleicher Adresse in allen Anwendungen angegeben werden. Die mit PAGE= angegebene Adresse ist so zu wählen, dass der damit reservierte Adressbereich in all diesen Anwendungen verfügbar ist.

    Die Common Memory Pools werden immer FIXED angelegt, d.h. alle Tasks der UTM-Anwendung finden den Pool auf der gleichen Adresse ihres virtuellen Adressraumes.

    Eine Alternative für die Verwendung von PAGE= ist, die gemeinsamen Pools in allen Anwendungen in der gleichen Reihenfolge zu generieren. Die MPOOL-Anweisungen für die gemeinsamen Pools müssen dabei am Anfang der MPOOL-Anweisungen stehen.

 SCOPE=

definiert den Geltungsbereich des Common Memory Pools.

    GLOBAL

definiert einen Geltungsbereich für alle Prozesse im System.

    GROUP

definiert einen Geltungsbereich für alle Prozesse, die unter derselben Benutzerkennung laufen.

Standard: GROUP

SIZE= 

poolsize

Anzahl der 64 KB großen Speicherabschnitte des Pools (1 Einheit entspricht 64 KB)

Im 31-Bit-Adressierungsmodus sind die Speicherabschnitte 1MB groß. Die Größe des Common Memory Pools wird dann auf die nächste 1MB-Grenze aufgerundet, die sich durch poolsize mit 64KB multipliziert ergibt.

Pflichtoperand