Eine UTM-Produktivanwendung benötigt die im Folgenden aufgeführten systemglobalen Betriebsmittel.
Shared Memory-Bereiche
Eine UTM-Anwendung benötigt drei Shared Memory-Bereiche für die Konfigurations- und Anwendungs-globalen Verwaltungsdaten (KAA), den Cache und die UTM-interne Prozesskommunikation (siehe auch Abschnitt „Performance-Verbesserung: Größe derDatenbereiche im IPC-Shared Memory anpassen").
Für die Kommunikation über OSI TP werden zusätzlich ein OSS- und ein XAPTP Shared Memory benötigt.
Semaphore
Eine UTM-Anwendung benötigt Semaphore zur Steuerung und Synchronisation von Prozessen der UTM-Anwendung.
In openUTM sind die Semaphore als Semaphor-Arrays organisiert, wobei jedes Semaphor-Array genau 20 Semaphor-Einträge enthält. Eine UTM-Anwendung benötigt mindestens ein Semaphor-Array. Die maximale Anzahl der Semaphore im System ist beschränkt.
In der UTM-Umgebung werden die Semaphor-Einträge folgendermaßen belegt:
neun Einträge für IPC-Shared Memory
ein Eintrag für KAA-Shared Memory
ein Eintrag für CACHE-Shared Memory
ein Eintrag für CACHE-Zugriffssperre
ein Eintrag für PCMM-Zugriffssperre
je ein Eintrag für OSS und XAPTP Shared Memory
je ein Eintrag für jeden Workprozess als Taskbörse
je ein Eintrag für jeden angeschlossenen externen Prozess (utmtimer, utmdtp, utmprint und lokales UPIC-Client-Programm) zur Kommunikation zwischen Workprozess und externem Prozess.
je zwei Einträge für jeden angeschlossenen Netzprozess vom Typ utmnet, utmnets oder utmnetssl, zur Kommunikation zwischen Workprozess und Netzprozess.
Wie viele Netzprozesse gestartet werden, ist abhängig von der Art der Netz-Anbindung einer UTM-Anwendung:
Anbindung über PCMX
Für jede Listener-ID, die mit KDCDEF generiert wird (BCAMAPPL- oder ACCESS-POINT-Anweisung), wird je ein Netzprozess (utmnet) gestartet.
Anbindung über die Socket-Schnittstelle (native TCP/IP)
Für jede Socket-Listener-ID, die mit KDCDEF generiert wird (BCAMAPPL-Anweisung mit T-PROT=SOCKET und SECURE=NO), wird je ein Socket-Netzprozess (utmnets) gestartet.
Für jede Socket-Listener-ID, die mit KDCDEF generiert wird (BCAMAPPL-Anweisung mit T-PROT=SOCKET und SECURE=YES), wird je ein TLS Socket-Netzprozess (utmnetssl) gestartet.
Das bedeutet:
Für eine minimale Produktivanwendung („Ein-Prozess-Anwendung“) und bei Generierung von einem Schlüssel für die Semaphore kann mindestens ein Dialog-Terminalprozess (utmdtp) angeschlossen werden.Mit MAX...,SEMARRAY= kann ein Bereich von bis zu 1000 aufeinanderfolgenden Schlüsseln definiert werden. Mit der KDCDEF-Generierung mit MAX...,SEMKEY= können bis zu 10 einzelne Schlüssel für Semaphore definiert werden.
Filedeskriptoren
Ein Workprozess einer UTM-Anwendung belegt immer folgende Filedeskriptoren für:
stdin
stdout
stderr
die KDCFILE-Datei
die SYSLOG-Datei
das Shared Memory IPC
das Shared Memory KAA
das Shared Memory CACHE
eine Named Pipe zum Mainprozess (utmmain)
eine Named Pipe zum Loggingprozess (utmlog)
Zusätzliche Filedeskriptoren für die Kommunikation über OSI TP für:
das Shared Memory OSS
das Shared Memory XAPTP
Weitere Filedeskriptoren werden benötigt, wenn die KDCFILE doppelt geführt wird, wenn Pagepool-Dateien verwendet werden (MAX ...,PGPOOLFS=) oder wenn der Wiederanlaufbereich in mehrere Dateien aufgeteilt wird (MAX...,RECBUFFS=).
In UTM-Cluster-Anwendungen werden zusätzliche Filedeskriptoren für die Cluster-globalen Dateien benötigt:
Cluster-Konfigurationsdatei
Cluster-User-Datei
Cluster-Pagepool Verwaltungsdatei
Cluster-Pagepool Datei(en)
Cluster-GSSB-Datei
Cluster-ULS-Datei
Cluster-Administrations-Journal
Cluster-Lock-Datei
Cluster-Startserialisierungs-Datei
Ein Workprozess der Anwendung belegt kurzzeitig weitere Filedeskriptoren für:
die aktuelle Benutzer-Protokolldatei (USLOG)
Dump-Dateien bei Fehlern
den Start einer Knoten-Anwendung in einer UTM-Cluster-Anwendung
Die Datei applifile
Die Datei wird bei der openUTM-Installation im Installationsverzeichnis eingerichtet und enthält die Namen aller Anwendungen, die im System seither gestartet wurden, inklusive Statusinformationen der Anwendungen. Außerdem enthält die Datei die Schlüssel (Keys) des Semaphors und Shared Memory Segments, die zur Kommunikation zwischen den externen Prozessen (Dialogterminal-, Drucker-, Timerprozess, lokale UPIC-Client-Programme) und den Workprozessen dienen. Die Schlüssel sind systemweit eindeutig zu vergeben.
ACHTUNG!
Die applifile ist eine UTM-interne Verwaltungsdatei. Sie dürfen sie nicht mit einem Editor öffnen. Die applifile könnte dadurch zerstört werden.