Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Peripherie

Kanäle

Auf /390-Servern stehen die Kanäle allen VMs zur Verfügung. Deren Sharing erfolgt über die Firmware. Die Auslastung der Kanäle kann VM-übergreifend mit SM2 beobachtet werden.

Auf x86-Servern stehen keine Kanäle im ursprünglichen Sinne zur Verfügung. X2000 emuliert Geräte mit einem virtuellen Ein-/Ausgabepfad, der an allen VMs verfügbar ist.

Geräte

Die vorhandenen Geräte werden beim Startup des Monitorsystems und der Gastsysteme dynamisch ermittelt. Damit kennen und verwalten VM2000, das Monitorsystem und alle Gastsysteme die gleichen Geräte.

Periphere Geräte müssen den einzelnen Gastsystemen vor der dortigen Nutzung zugeordnet werden. Dies erfolgt:

  • explizit durch den VM2000-Administrator mit /ADD-VM-DEVICES bzw. /SWITCH-VM-DEVICES oder

  • implizit durch ein Gastsystem mit dem Privileg ASSIGN-BY-GUEST=*YES(...) mit /ATTACH-DEVICE.
    Der VM2000-Administrator muss dazu für die betreffenden VMs und Geräte diese Art der Zuordnung erlauben.

    Bei der impliziten Zuordnung von Platten wird standardmäßig die Benutzungsart "Shared" eingetragen.

Periphere Geräte können exklusiv einem einzelnen Gastsystem zugeordnet werden oder als "Shared"-Geräte mehreren Gastsystemen zur Verfügung stehen:

  • Exklusive Zuweisung = das Gerät ist einem Gastsystem fest zugeordnet

    Die Ein-/Ausgaben werden direkt eingeleitet, also wie im Native-Betrieb.

    Für Gastsysteme im Wartezustand ("Idle") überprüft der VM2000-Hypervisor (/390-Server) das Eintreffen von Ein-/Ausgabe-Termination-Interrupts und initialisiert das entsprechende Gastsystem gemäß seiner Scheduling-Priorität. Dieser Hypervisor-Aufwand ist minimal.

  • "Shared" Zuweisung

    = das Gerät steht mehreren Gastsystemen zur Verfügung

    Die Art der Abwicklung der Ein-/Ausgabe auf /390-Servern ist von folgender Bedingung abhängig:

    1. Ist das Gerät nur einem Gastsystem zugeordnet, so werden die Ein-/Ausgaben wie bei der exklusiven Zuweisung direkt, d.h. ohne Zwischenschaltung des VM2000-Hypervisors, durchgeführt ("Direct-I/O").
      In den Informationskommandos von VM2000 wird das Gerät durch die Anzeige SH(D) gekennzeichnet.

    2. Ist das Gerät mehreren Gastsystemen zugewiesen, so unterbricht der VM2000-Hypervisor auf /390-Servern alle Ein-/Ausgaben der Gastsysteme und serialisiert sie ("Indirect-I/O").
      In den Informationskommandos von VM2000 wird das Gerät durch die Anzeige SH(I) gekennzeichnet.

      Der CPU-Bedarf des VM2000-Hypervisors steigt für gemeinsam benutzte Geräte linear mit der Ein-/Ausgaberate. Der VM2000-Overhead steigt um ungefähr 0,4% pro 100 Ein-/Ausgaben pro Sekunde.

      Auf x86-Servern werden Platten-Ein-/Ausgaben als logische Aufträge über die RSC-Schnittstelle ausgeführt. Der Hypervisor-Overhead entfällt.

Bedienzeiten von Geräten (Messprogramm SERVICETIME von SM2) können zu einem Zeitpunkt nur von einer VM ermittelt werden.

Privileg IO-PRIORITY (/390-Server)

Anwendungen führen meist synchrone Ein-/Ausgaben aus. Nach deren Start wartet die Task auf das Ende der Ein-/Ausgabe. Wenn kein weiterer Task ablaufbereit ist, erfolgt der Übergang in den Wartezustand ("Idle") und die reale CPU wird durch den Hypervisor neu verteilt. Nach Ende der Ein-/Ausgabe muss das Gastsystem auf die erneute Zuordnung einer realen CPU warten, bevor es das Ende der Ein-/Ausgabe bearbeiten kann. Die Verzögerung zwischen dem tatsächlichen Ende der Ein-/Ausgabe und ihrer Bearbeitung im Gastsystem wird als Dehnung der Hardware-Bedienzeit oder als IO-Dehnung bezeichnet.

CPU-intensive Gastsysteme können dadurch den Betrieb Ein-/Ausgabe-intensiver Gastsysteme stören. Hinweise darauf gibt /SHOW-VM-STATUS INF=*SCHEDULE, Ausgabespalten %RUNOUT und %WAIT.

Die IO-Dehnung ist um so geringer, je rascher dem Gastsystem wieder die CPU zugeteilt wird. Dazu kann auf /390-Servern einer VM das Privileg IO-PRIORITY=*YES zugeordnet werden. Befindet sich eine virtuelle CPU einer solchen VM im Wartezustand, so wird diese beim Eintreffen eines Ein-/Ausgabe-Termination-Interrupts vom Hypervisor sofort auf einer realen CPU zum Ablauf gebracht, um das Ergebnis der Ein-/Ausgabe zu bearbeiten. Die Laufzeiten von Ein-/Ausgabe-kritischen Jobs verbessern sich deutlich.

Dem positiven Effekt, dass gleich gute Hardware-Bedienzeiten wie im Native-Betrieb erreicht werden, steht eine erhöhte Scheduling-Rate gegenüber. Dadurch steigt auch der VM2000-Overhead.

Es wird daher empfohlen, die Gastsysteme zunächst ohne Privileg einzurichten (also mit IO-PRIORITY=*NO) und erst im Bedarfsfall das Privileg IO-PRIORITY=*YES zu vergeben.

Das Privileg IO-PRIORITY=*YES bringt bei dedizierten CPUs keine Vorteile.

Unterstützung des Dienstprogramms IORM (I/O Ressource Manager)

Das Dienstprogramm IORM (siehe Handbuch "Dienstprogramme" [6]) wird durch VM2000 unterstützt. Im VM2000-Betrieb sollte IORM auf dem Monitorsystem und allen Gastsystemen im Einsatz sein.

Folgende IORM-Funktionen werden im Zusammenspiel mit VM2000 ausgeführt:

  • Dynamische I/O-Lastverteilung für Platten am FC-Kanal mit DPAV im VM2000-Betrieb (nur /390-Server)

    Dynamisches PAV (DPAV) weist autonom denjenigen Volumes Alias-Geräte zu, die am meisten davon profitieren. Im VM2000-Betrieb wird das eigentliche Umschalten von Alias-Geräten von DPAV im Monitorsystem koordiniert und durchgeführt.

  • Optimierte Geräteauswahl im ETERNUS CS Betrieb unter VM2000 mit DDAL (Dynamic Device Allocation)

    Alternativ zur Nutzung der Geräte gemäß ihrer Generierung (wie in den Vorversionen) kann das Betriebssystem eine gleichmäßige Auslastung aller verfügbaren ICPs (Integrated Channel Processor) sicherstellen.

    Unter VM2000 weitet die IORM-Funktion DDAL die optimierte (lokale) Geräteauswahl auf alle BS2000-Gastsysteme eines Servers aus.

  • Begrenzung der I/O-Leistungsaufnahme einzelner VM2000-Gastsysteme mit IOLVM (I/O Limit for Virtual Machines, /390-Server)

    Im VM2000-Betrieb können weniger wichtige, jedoch Ein-/Ausgabe-intensive Gastsysteme andere, wichtigere Gastsysteme im Ein-/Ausgabe-Betrieb behindern.

    Die Funktion IOLVM des Dienstprogramms IORM kann solche Konfliktsituationen erkennen und bremst gezielt den Ein-/Ausgabebetrieb des eigenen Gastsystems, wenn sein spezifisches I/O-Limit für eine der gemeinsam benutzen I/O-Ressourcen (Kanal, Port, Pfad, gemeinsam genutzte Platte) überschritten wird.

    Das I/O-Limit für IOLVM wird als maximale I/O-Leistungsaufnahme der VM im Operanden MAX-IO-UTILIZATION in den VM2000-Kommandos /CREATE-VM bzw. /MODIFY-VM-ATTRIBUTES festgelegt.