Natural zIIP-Verarbeitung: TCBs, SRBs und Enklaven

In diesem Kapitel wird beschrieben, wie die Unterstützung von zIIP in Natural erfolgt.

Im Allgemeinen werden alle z/OS-Anwendungen (einschließlich Natural-Anwendungen) als TCB-Prozess (Task Control Block) ausgeführt (TCB-Modus). Die Ausführung von Anwendungen auf einem zIIP erfordert jedoch einen SRB-Prozess (Service Request Block), der einer IBM WLM-Enklave (z/OS Workload Manager) zugewiesen werden muss. Diese Enklave ist eine spezielle WLM-Transaktionseinheit, die mehrere TCB- und/oder SRB-Prozesse organisiert, die in der gleichen oder in verschiedenen Regionen laufen. Die WLM-Enklave, die von Natural für die zIIP-Verarbeitung erstellt und verwendet wird, ist an eine Region gebunden, d. h. die WLM-Enklave wird beendet, wenn der entsprechende Job-Step beendet wird.


TCB/SRB-Umschaltungen

Bei der Initialisierung einer Natural-Sitzung werden die Voraussetzungen für die zIIP-Aktivierung (beschrieben in Installing Natural for zIIP) geprüft. Bei positivem Ergebnis wird ein SRB-Prozess für die Natural-Sitzung parallel zum aktuellen TCB-Prozess gestartet, der in einen Wartezustand versetzt wird, während der SRB die Natural-Sitzung weiter verarbeitet. Der TCB-Wartezustand wird aufgehoben, wenn ein Dienstaufruf - Supervisor Call (SVC) oder Program Call (PC) - ausgegeben werden soll, da diese Aufrufe nicht im SRB-Modus verarbeitet werden können. Der TCB setzt dann die Verarbeitung fort, während der SRB in einen Wartezustand versetzt wird. In der Natural-Dokumentation wird dieser Vorgang als "SRB/TCB-Umschaltung" bezeichnet. Nach Beendigung des Dienstaufrufs wird der Wartezustand des SRB aufgehoben und der TCB wieder in einen Wartezustand versetzt usw. Dies wird daher als "TCB/SRB-Umschaltung" bezeichnet. Die zIIP-Verarbeitungsberichte, die mit dem Natural-Systemkommando ZIIP erstellt werden (siehe Verfügbare zIIP-Verarbeitungsberichte), liefern nur Informationen über die Umschaltungen zwischen TCB und SRB. Dies liegt daran, dass die Anzahl der SRB/TCB-Umschaltungen in der Regel genau der Anzahl der TCB/SRB-Umschaltungen entspricht. Eine Ausnahme: Wenn im SRB-Modus ein abnormaler Abbruch auftritt, beendet z/OS automatisch den SRB und der TCB-Wartezustand wird aufgehoben, um den abnormalen Abbruch zu verarbeiten. Wenn die Sitzung fortgesetzt wird, startet Natural beim nächsten TCB/SRB-Wechsel einen neuen SRB-Prozess.

Einschränkungen und Grenzen im SRB-Modus

Für die SRB-Verarbeitung gibt es eine Reihe von Einschränkungen und Grenzen. So kann der SRB beispielsweise keine normalen Systemdienstaufrufe wie SVCs oder PCs ausführen. Diese Aufrufe können nur im TCB-Modus verwendet werden. Außerdem kann im SRB-Modus die TCB-Adresse nicht aus dem niedrigen Kernspeicher (im Feld PSATOLD) geladen werden, wie es manche Anwendungen versuchen, um auf den TCB-Speicher und andere wichtige Kontrollblöcke zuzugreifen. Im SRB-Modus führen solche Ladetechniken höchstwahrscheinlich zu einer S0C4-Schutzausnahme, da PSATOLD Null ist.