Allgemeines
Anwendungsgebiet: | Abfragen und Zugriff zu Listen und Tabellen; siehe "Abfragen und Zugriff zu Listen und Tabellen" |
Makrotyp: | S-Typ, MF-Format 3: D-/C-/E-/L-Form; siehe "S-Typ-Makroaufrufe" |
Das virtuelle Maschinensystem VM2000 ermöglicht den gleichzeitigen Betrieb unterschiedlicher, voneinander völlig abgeschotteter Systemumgebungen auf einem Server, mit einer dem „Native-Betrieb“ vergleichbaren Performance. VM2000 erhöht somit die Einsatzvielfalt und die Auslastung eines Servers. Für weitere Informationen siehe Handbuch „VM2000“ [17].
Makrobeschreibung
Der Makro VMGINF gibt dem Aufrufer Auskunft darüber, ob BS2000 unter VM2000 läuft (Feld <PREFIX><MACID>VIND
des Datenbereichs). Ist das der Fall, erhält der Aufrufer folgende Informationen über das VM2000-System, auf dem BS2000 aktuell läuft bzw. auf dem der IPL für BS2000 ausgeführt wurde:
Den VM-Index und den VM-Namen der virtuellen Maschine.
Die Auskunft, ob das System ein Monitorsystem ist.
Die SYSID (VM-CONFIGURATION-ID) des Monitorsystems.
Bestimmte VM-Privilegien und Zustände des Gastsystems
Die Version von VM2000
Den BCAM-Namen des Monitorsystems
Die Version des Monitorsystems
Xen-Domänenkennung (x86-Server)
Makroaufrufformat und Operandenbeschreibung
VMGINF |
SRVUNIT = *STD / *INITIAL / *CURRENT ,MF=D / C / E / L [,PARAM=adr / (r)] ,PREFIX=V / p ,MACID=MGI / macid |
SRVUNIT=
Spezifiziert die Server Unit, deren Daten ausgegeben werden sollen.
*STD
derzeit gültige Standard-Einstellung der Server Unit.
*INITIAL
Server-Unit, auf der der IPL für BS2000 ausgeführt wurde.
*CURRENT
Server Unit, auf der BS2000 aktuell läuft.
MF=
Zur allgemeinen Beschreibung des Operanden MF, der dazugehörenden Operandenwerte und der evtl. nachfolgenden Operanden (z.B. PREFIX, MACID und PARAM) siehe Abschnitt „S-Typ-Makroaufrufe“ . Die gültigen MF-Werte sind zu Beginn der Makrobeschreibung bei „Makrotyp“ angegeben und aus dem Aufrufformat ersichtlich.
Bei der C-Form oder D-Form des Makroaufrufs kann ein Präfix (PREFIX) und bei der C-Form zusätzlich eine MACID angegeben werden (siehe Abschnitt „S-Typ-Makroaufrufe“).
Layout des Datenbereichs
VMGINF MF=D 1 MFTST MF=D,PREFIX=V,MACID=MGI,ALIGN=F, C 1 DMACID=MGI,SUPPORT=(E,D,C,M,L) 2 VMGI DSECT , 2 *,##### PREFIX=V, MACID=MGI ##### 1 VMGIUNIT EQU 137 unit number 1 * 1 VMGIFC04 EQU 4 function number 1 * 1 VMGIVR02 EQU 2 version number 1 * 1 * parameterarea description 1 VMGIPA DS 0F begin of parameterarea _INOUT 1 VMGIHDR FHDR MF=(C,VMGI),EQUATES=NO Standardheader 2 VMGIHDR DS 0A 2 VMGIFHE DS 0XL8 0 GENERAL PARAMETER AREA HEADER 2 * 2 VMGIIFID DS 0A 0 INTERFACE IDENTIFIER 2 VMGIFCTU DS AL2 0 FUNCTION UNIT NUMBER 2 * BIT 15 HEADER FLAG BIT, 2 * MUST BE RESET UNTIL FURTHER NOTICE 2 * BIT 14-12 UNUSED, MUST BE RESET 2 * BIT 11-0 REAL FUNCTION UNIT NUMBER 2 VMGIFCT DS AL1 2 FUNCTION NUMBER 2 VMGIFCTV DS AL1 3 FUNCTION INTERFACE VERSION NUMBER 2 * 2 VMGIRET DS 0A 4 GENERAL RETURN CODE 2 VMGISRET DS 0AL2 4 SUB RETURN CODE 2 VMGISR2 DS AL1 4 SUB RETURN CODE 2 2 VMGISR1 DS AL1 5 SUB RETURN CODE 1 2 VMGIMRET DS 0AL2 6 MAIN RETURN CODE 2 VMGIMR2 DS AL1 6 MAIN RETURN CODE 2 2 VMGIMR1 DS AL1 7 MAIN RETURN CODE 1 2 VMGIFHL EQU 8 8 GENERAL OPERAND LIST HEADER LENGTH 2 * 1 * main return codes 1 VMGIMSCC EQU 0 function executed 1 VMGIMPAR EQU 1 parameter error 1 VMGIMINT EQU 2 internal error 1 VMGIMTIM EQU 7 timeout error 1 VMGIMANA EQU 64 VM2000 agent not available 1 VMGIMXNA EQU 65 xend not available 1 *
1 VMGIVIND DS FL1 VM2000 indicator 1 * VM2000 indicator set 1 VMGIVM2R EQU 232 VM2000 running 1 VMGIVM2N EQU 213 VM2000 not running 1 * 1 VMGISIND DS AL1 status indicator 1 VMGIV2MO EQU X'80' monitor system 1 VMGILTSY EQU X'40' local time syn via adjust 1 * time 1 VMGIMPAD EQU X'20' MP grade adjustment possible 1 VMGIPIOM EQU X'10' VM-PRIV: DYNAMIC-IOREC 1 VMGIPGIO EQU X'08' VM-PRIV: VMGLOB-IOREC 1 VMGIUNU0 EQU X'04' unused 1 VMGIGS2N EQU X'02' GS-UNIT2 not in use 1 VMGIGS1N EQU X'01' GS-UNIT1 not in use 1 VMGIVCID DS X VM configuration ID 1 * 1 VMGIVM_IDENT DS 0XL9 VM identification 1 VMGIVMIX DS X VM index 1 VMGIVMNM DS CL8 VM name 1 * 1 VMGIV1IN DS AL1 valid indicator 1 1 VMGIV1O1 EQU X'80' :S: _OUT_11 valid 1 VMGIV1O2 EQU X'40' :S: _OUT_12 valid 1 VMGIV1O3 EQU X'20' :S: _OUT_13 valid 1 VMGIV1O4 EQU X'10' :S: _OUT_14 valid 1 VMGIV1O5 EQU X'08' :S: _OUT_15 valid 1 VMGIUNU1 EQU X'07' unused 1 VMGIV2IN DS AL1 valid indicator 2 1 VMGIUNU3 EQU X'FF' unused 1 VMGIVVRS DS CL6 VM2000 version (Vxx.xx) 1 * _OUT_11 1 VMGISIN2 DS AL1 status indicator 2 1 VMGIPIDA EQU X'80' VM-PRIV: IMPL-DEV-ASSIGN 1 * _OUT_12 1 VMGIPIOP EQU X'40' VM-PRIV: IO-PRIORITY _OUT_12 1 VMGIPIOR EQU X'20' VM-PRIV: IO-RESET _OUT_12 1 VMGICHMF EQU X'10' CHN-MON-FCL ACTIVE FOR VM 1 * _OUT_12 1 VMGIMBCA EQU X'08' BCAM ACTIVE IN MONITOR 1 * _OUT_12 1 VMGIPASA EQU X'04' VM-PRIV: AUTO-SNAP-ASSIGN 1 * _OUT_12 1 VMGIRSCS EQU X'02' RSC SUPPORTED _OUT_14 1 VMGISRDF EQU X'01' state RUNNING(DIFF) _OUT_15 1 VMGIMBCN DS CL8 monitor BCAM name _OUT_12 1 VMGIMOVS DS CL10 monitor OSD version _OUT_12 1 VMGIDOID DS XL8 Xen domid _OUT_13 1 VMGIRES1 DS XL43 reserved
1 VMGISUI DS FL1 server unit indicator 1 * Server unit indicator set 1 VMGISUIS EQU 0 standard 1 VMGISUII EQU 1 initial 1 VMGISUIC EQU 2 current 1 * 1 VMGICID DS FL1 caller identifier (internal 1 * use) 1 * Caller identifier set 1 VMGICIDS EQU 0 system 1 VMGICIDU EQU 1 user 1 * 1 VMGI# EQU *-VMGIHDR
Rückinformation und Fehleranzeigen
Standardheader:
+---------------+ | | | | | |c|c|b|b|a|a|a|a| +---------------+
Über die Ausführung des Makros VMGINF wird im Standardheader folgender Returncode übergeben (cc=Subcode2, bb=Subcode1, aaaa=Maincode):
X'cc' | X'bb' | X'aaaa' | Erläuterung |
---|---|---|---|
X'00' | X'01' | X'0001' | Parameterfehler |
X'00' | X'20' | X'0002' | Interner Fehler |
X'00' | X'40' | X'0007' | Zeitüberschreitung |
X'00' | X'82' | X'0040' | VM2000-Agent nicht verfügbar |
X'00' | X'82' | X'0041' | Administrationskomponente des VM-Systems nicht verfügbar |
Weitere Returncodes, deren Bedeutung durch Konvention makroübergreifend festgelegt ist, können der Tabelle „Standard-Returncodes“ (Standardheader) entnommen werden.
Die Namen der Ausgabefelder sind dem Datenbereich zu entnehmen.