Voreinstellungen für DBL-Aufrufe setzen
Komponente: | BLSSERV |
Funktionsbereich: | Programm-Steuerung |
Anwendungsbereich: | PROGRAM |
Privilegierung: | STD-PROCESSING |
Funktionsbeschreibung
Das Kommando MODIFY-DBL-DEFAULTS setzt tasklokal Voreinstellungen für nachfolgende Aufrufe des DBL mit den Kommandos START- und LOAD-EXECUTABLE-PROGRAM (bzw. auch START-/LOAD-PROGRAM) sowie dem Makroaufruf BIND. Es sind nicht nur bestimmte Werte, sondern auch deren Geltungsbereich und Priorität einstellbar.
Das Kommando SHOW-DBL-DEFAULTS informiert über die aktuellen Einstellungen. Mit dem Kommando RESET-DBL-DEFAULTS können alle Einstellungen wieder zurückgesetzt werden.
Format
MODIFY-DBL-DEFAULTS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Operandenbeschreibung
Der Operandenwert *UNCHANGED bedeutet, dass eine vorangegangene Einstellung des DBL-Parameters nicht geändert wird. Wurde für den betreffenden Operanden mit dem Kommando MODIFY-DBL-DEFAULTS noch nichts festgelegt, so gilt der Wert, der in der Syntaxbeschreibung auf *UNCHANGED folgt.
Im Folgenden sind nur die Operanden beschrieben, die nicht bei LOAD-/START-EXECUTABLE-PROGRAM (bzw. LOAD-/START-PROGRAM) vorkommen. Die Operanden der DBL-Makroaufrufe sind in der Tabelle „Zuordnung zu entsprechenden Operanden von DBL-Makroaufrufen" aufgelistet.
PRIORITY =
Legt die Priorität der Einstellungen der DBL-Parameter fest.
PRIORITY = *STD
Die DBL-Parameter, die bei den Kommandos LOAD-/START-EXECUTABLE-PROGRAM (bzw. LOAD-/START-PROGRAM) oder beim BIND-Makro angegeben werden, haben höchste Priorität. Daraus ergibt sich die folgende Rangordnung:
Werte, die beim Aufruf der Kommandos LOAD-/START-EXECUTABLE-PROGRAM (bzw. LOAD-/START-PROGRAM) oder beim BIND-Makro angegeben wurden
Werte, die mit dem Kommando MODIFY-DBL-DEFAULTS angegeben wurden
Default-Werte, die bei der Initialisierung einer internen DBL-Parametertabelle eingestellt wurden. In der Syntaxbeschreibung sind dies die Werte, die auf *UNCHANGED folgen, sofern nicht ein anderer Wert unterstrichen ist.
PRIORITY = *FORCED
Die DBL-Parameter, die mit dem Kommando MODIFY-DBL-DEFAULTS festgelegt wurden, haben die höchste Priorität. Die DBL-Parameter, die bei den Kommandos LOAD-/START-EXECUTABLE-PROGRAM (bzw. LOAD-/START-PROGRAM) oder beim BIND-Makro angegeben werden, ignoriert der DBL.
SCOPE =
Legt den Geltungsbereich der Voreinstellungen fest.
SCOPE = *ALL(...)
Die Voreinstellungen gelten sowohl für DBL-Kommandos (START-/LOAD-EXECUTABLE-PROGRAM bzw. START-/LOAD-PROGRAM) als auch für DBL-Makroaufrufe (BIND, ASHARE; siehe Tabelle „Zuordnung zu entsprechenden Operanden von DBL-Makroaufrufen").
SCOPE = *CMD-CALLS(...)
Die Voreinstellungen gelten nur für die DBL-Kommandos START-/LOAD-EXECUTABLE-PROGRAM bzw. START-/LOAD-PROGRAM.
LOADING = *PARAMETERS(...)
PROGRAM-MODE = *UNCHANGED / *STD / 24 / *ANY
Bestimmt, in welchen Teil des Adressraums (oberhalb oder unterhalb 16 MByte) die Module der Ladeeinheit geladen werden.
Bei Task-Beginn ist *STD voreingestellt.
PROGRAM-MODE = *STD
Der DBL-Default ist abhängig vom Kommandoaufruf:
Bei LOAD-/START-EXECUTABLE-PROGRAM mit FROM-FILE=*LIBRARY-ELEMENT(...) wird als DBL-Default PROGRAM-MODE=*ANY angenommen.
Bei LOAD-/START-PROGRAM mit FROM-FILE=*MODULE(...) wird als DBL-Default PROGRAM-MODE=24 angenommen.
CISC-COMPILATION = *UNCHANGED / *YES(...) / *NO
Gibt an, ob CISCFW-Kompilierung erlaubt ist. CISCFW ist eine Firmware-Komponente auf SU x86 zur Abbildung von nichtprivilegiertem /390-Code auf X86-64-Code. Sie ergänzt den X86-64-Modus und ermöglicht es, existierenden /390-Code objektkompatibel auf SU x86 ablaufen zu lassen. Die CISCFW enthält einen Just-InTime-Übersetzer, der /390-Code zur Ablaufzeit in X86-64-Code umsetzt.
Ein Code-Block wird erst bei seiner Ausführung übersetzt und in einem Task-lokalen CISCFW-Speicher abgelegt. Kommt der Code-Block erneut zur Ausführung, so wird der bereits übersetzte und optimierte Code aus dem CISCFW-Speicher direkt ausgeführt. Zur weiteren Optimierung wird der CISCFW-Speicher resident angelegt. Standardmäßig ist CISCFW-Kompilierung eingeschaltet.
Auf Systemen mit kleinem Speicherausbau sollten die Programme, die eine hohe Performance benötigen, mit CISCFW-Kompilierung ablaufen. Bei sehr großen Programmen sollte der Arbeitsspeicher (Operand WORKSPACE) entsprechend größer gewählt werden.
CISC-COMPILATION = *YES(...)
CISCFW-Kompilierung ist erlaubt.
WORKSPACE = *STD / <integer 1..2048 Mbyte >
Bestimmt die Größe des Arbeitsspeichers in MByte, der für den CISCFW-Speicher zur Verfügung steht.
Voreingestellt ist *STD, d.h.die Größe des Arbeitsspeichers für CISCFW-Kompilierung ist der aktuelle Wert des Systemparameters JTSTDMEM.
SHOW-MEMORY-USAGE = *UNCHANGED / *NO / *YES
Gibt an, ob der Arbeitsspeicher, der für den CISCFW-Speicher genutzt wird, angezeigt werden soll.
CISC-COMPILATION = *NO
CISCFW-Kompilierung soll nicht verwendet werden. /390-Code wird von der /390-Firmware emuliert.
SCOPE = *PROGRAM-CALLS(...)
Die Voreinstellungen gelten nur für DBL-Makroaufrufe (BIND, ASHARE; siehe Tabelle „Zuordnung zu entsprechenden Operanden von DBL-Makroaufrufen").
LOADING = *PARAMETERS(...)
CLOSE-LIBRARIES = *UNCHANGED / *ALL / *NONE / *ALTERNATE-LIBRARIES
Gibt an, ob die vom DBL verwendeten Bibliotheken nach der Verarbeitung geschlossen werden.
CLOSE-LIBRARIES = *ALL
Alle vom DBL verwendeten Bibliotheken werden geschlossen.
CLOSE-LIBRARIES = *NONE
Keine vom DBL verwendeten Bibliotheken werden geschlossen.
CLOSE-LIBRARIES = *ALTERNATE-LIBRARIES
Nur die alternativen Bibliotheken werden geschlossen.
REP-SCOPE = *UNCHANGED / *CONTEXT / *UNIT
Legt fest, ob die REP-Verarbeitung für alle Module im Kontext oder nur für die Module der aktuellen Ladeeinheit durchgeführt wird
REP-SCOPE = *CONTEXT
Die REP-Verarbeitung wird für alle Module des Kontext durchgeführt.
REP-SCOPE = *UNIT
Die REP-Verarbeitung wird nur für die Module der aktuellen Ladeeinheit durchgeführt. Alle übrigen Module im Kontext werden übergangen.
CONTEXT-NAME = *UNCHANGED / <filename 1..32>
Gibt den Namen eines Kontextes an, in den Ladeeinheiten zu laden sind. Der Name muss mit einem Buchstaben beginnen. Wenn noch kein Name festgelegt wurde, wird der Kontext LOCAL#DEFAULT verwendet.
CONTEXT-STATE = *UNCHANGED / *ANY / *NEW / *OLD
Gibt an, ob der bei CONTEXT-NAME angegebene Kontext bereits existieren muss oder darf.
CONTEXT-STATE = *ANY
Wenn es einen Benutzerkontext mit dem angegebenen Namen (CONTEXT-NAME) gibt, wird dieser verwendet; ansonsten wird ein neuer Kontext erzeugt.
CONTEXT-STATE = *NEW
Ein Kontext mit dem angegebenen Namen (CONTEXT-NAME) wird erzeugt. Er darf noch nicht vorhanden sein.
CONTEXT-STATE = *OLD
Der Kontext mit dem angegebenen Namen (CONTEXT-NAME) wird verwendet. Er muss bereits vorhanden sein.
RESOLUTION = *PARAMETERS(...)
RESOL-TYPE = *UNCHANGED / *STD / *USER(...)
Legt die Suchstrategie für die Befriedigung von Externverweisen fest.
RESOL-TYPE = *STD
Es gilt die von DBL vordefinierte Suchreihenfolge:
Link-Kontext
Shared Code des Benutzers
Shared Code des Systems
Referenz-Kontext(e)
RESOL-TYPE = *USER(...)
Die Suchreihenfolge wird vom Benutzer festgelegt.
ORDER = *UNCHANGED / list-poss(4): *LINK-CONTEXT / *USER-SHARED-CODE /
*SYSTEM-SHARED-CODE / *REFERENCE-CONTEXTS
Angabe der benutzerdefinierten Suchreihenfolge in Form einer Liste folgender Schlüsselwörter. Die Reihenfolge, in der die Kontexte durchsucht werden sollen, wird durch die Reihenfolge der Schlüsselwörter in der Liste festgelegt:
*LINK-CONTEXT | für Link-Kontext |
*USER-SHARED-CODE | für Shared Code des Benutzers |
*SYSTEM-SHARED-CODE | für Shared Code des Systems |
*REFERENCE-CONTEXTS | für Referenz-Kontext |
Jedes Schlüsselwort darf nur ein einziges Mal in der Liste vorkommen. Nicht angegebene Schlüsselwörter werden intern vom DBL in der vordefinierten Reihenfolge (siehe *STD) an das Ende der Liste angehängt.
Beispiel
Die Angabe ORDER=(*SYSTEM-SHARED-CODE,*USER-SHARED-CODE)
wird ergänzt zu ORDER=(*SYSTEM-SHARED-CODE,*USER-SHARED-
CODE,*LINK-CONTEXT,*REFERENCE-CONTEXT)
. Bei der Befriedigung von Externverweisen wird hier in folgender Reihenfolge gesucht:
im Shared Code des Systems
im Shared Code des Benutzers
im Link-Kontext
und schließlich im Referenz-Kontext
PUBLIC-RESOL-TYPE = *UNCHANGED / *STD / *USER(...)
Legt die Suchstrategie für die Befriedigung von Externverweisen in PUBLIC-Teilen von LLMs fest.
PUBLIC-RESOL-TYPE = *STD
Es gilt die von DBL vordefinierte Suchreihenfolge:
Shared Code des Benutzers
Shared Code des Systems
Link-Kontext
PUBLIC-RESOL-TYPE = *USER(...)
Die Suchreihenfolge wird vom Benutzer festgelegt.
ORDER = *UNCHANGED / list-poss(3): *USER-SHARED-CODE / *SYSTEM-SHARED-CODE / *LINK-CONTEXT
Angabe der benutzerdefinierten Suchreihenfolge in Form einer Liste folgender Schlüsselwörter. Die Reihenfolge, in der die Kontexte durchsucht werden sollen, wird durch die Reihenfolge der Schlüsselwörter in der Liste festgelegt:
*USER-SHARED-CODE | für Shared Code des Benutzers |
*SYSTEM-SHARED-CODE | für Shared Code des Systems |
*LINK-CONTEXT | für Link-Kontext |
Jedes Schlüsselwort darf nur ein einziges Mal in der Liste vorkommen. Nicht angegebene Schlüsselwörter werden intern vom DBL in der vordefinierten Reihenfolge (siehe *STD) an das Ende der Liste angehängt.
Beispiel
Die Angabe ORDER=*SYSTEM-SHARED-CODE
wird ergänzt zuORDER=(*SYSTEM-SHARED-CODE,*USER-SHARED-CODE,*LINK-CONTEXT)
. Bei der Befriedigung von Externverweisen in PUBLIC-Teilen wird hier in folgender Reihenfolge gesucht:
Shared Code des Benutzers
Shared Code des Systems
Link-Kontext
ERROR-PROCESSING = *PARAMETERS(...)
UNRESOLVED-EXTRNS = *UNCHANGED / *STD / *DELAY / *DELAY-WARN / *ABORT
Mit Ausnahme des Operandenwertes *DELAY-WARN kommt der Operand bei LOAD-/START-EXECUTABLE-PROGRAM (bzw. LOAD-/START-PROGRAM) vor.
UNRESOLVED-EXTRNS = *DELAY-WARN
Die Angabe entspricht im Wesentlichen dem Operandenwert *DELAY. Es wird aber beim Auffinden von unbefriedigten externen Symbolen im Kontext ein Returncode zur Warnung zurückgegeben.
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
---|---|---|---|
0 | CMD0001 | Kommando ausgeführt | |
2 | 0 | BLS0150 | Kommando mit Warnung ausgeführt |
1 | 1 | BLS0170 | PRIORITY=*FORCED nicht erlaubt für die angegebenen Operanden |
1 | 1 | BLS0171 | Ungültiger Kontextname |
1 | 32 | BLS0002 | Interner DBL-Fehler |
1 | 32 | BLS0152 | Systemfehler |
64 | CMD0216 | Benutzer besitzt keine Berechtigung für das Kommando |
Hinweise
Für die BIND-Makroparameter NACOL, UNRES, LDINFO, TSTOPT, MSG und AMODCHK gelten die oben genannten Prioritäten aus Kompatibilitätsgründen nicht. Die Voreinstellungen werden immer aus LOAD-/START-EXECUTABLE-PROGRAM bzw. LOAD-/START-PROGRAM übernommen.
Bei Angabe einer Bibliothek (Dateiname oder Dateikettungsname), eines Kontextes oder einer Programmversion wird MODIFY-DBL-DEFAULTS mit der Angabe PRIORITY=*FORCED abgewiesen.
Für den LINK-Makro sind die Voreinstellungen nicht von Bedeutung.
Die bei den Operanden RESOL-TYPE und PUBLIC-RESOL-TYPE angegebene Suchreihenfolge (Unteroperand ORDER) hat keinen Einfluss darauf, welche Kontexte durchsucht werden. Ob Shared Code durchsucht wird, muss mit dem Operanden SHARE-SCOPE festgelegt werden.
Operanden des Kommandos und entsprechende Makro-Operanden
Kommando | Makro | |||
---|---|---|---|---|
ASHARE | BIND | ETABLE / ILEMGT | LDSLICE / UNBIND | |
ALTERNATE-LIBRARIES | ALTLIB | ALTLIB | - | - |
AMODE-CHECK | - | AMODCHK | - | - |
AUTOLINK | - | AUTOLNK | - | - |
CLOSE-LIBRARIES | - | CLOSE | - | - |
CONTEXT-NAME | - | LNKCTX | - | - |
CONTEXT-STATE | - | LNKCTXS | CONTEXT-STATE | - |
ERROR-EXIT | - | ERREXIT | - | - |
IGNORE-ATTRIBUTES | - | IGNATTR | - | - |
LIBRARY | - | LIBNAM | - | - |
LOAD-INFORMATION | - | LDINFO | - | - |
MESSAGE-CONTROL | MSGCTRL | MSG | - | MSG |
NAME-COLLISION | - | NACOL | - | - |
PROGRAM-MAP | MAP | MAP | - | - |
PROGRAM-MODE | - | PROGMOD | - | - |
PROGRAM-VERSION | - | PGMVERS | - | - |
PUBLIC-RESOL-TYPE | - | PURESTY | - | - |
REP-FILE | - | REPFILE | - | - |
REP-SCOPE | - | REPSCOP | - | - |
RESOL-TYPE | - | RESTYP | - | - |
SHARE-SCOPE | - | SHARE | - | - |
TEST-OPTIONS | - | TSTOPT | - | - |
UNRESOLVED-EXTRNS | - | UNRES | - | - |