Signalbehandlung
Auf Unix- und Linux-Systemen ist in den C-Teilprogrammen eine eingeschränkte Nutzung von Signalen möglich. Im Startexit eines Workprozesses können die Signale SIGUSR1 und SIGUSR2 vom C-Teilprogramm gefangen werden. Alle anderen Signale werden vom openUTM Systemcode standardmäßig selbst behandelt.
Alternativ zur standardmäßigen Behandlung von Signalen in openUTM können Sie für bestimmte Signale eine eigene User Signal Routine programmieren und bei openUTM registrieren, siehe Abschnitt „Programmierung einer anwenderspezifischen Fehlerbehandlung (Unix- und Linux-Systeme)".
CMX Schnittstelle in utmwork
Bei der Verwendung von CMX-Aufrufen in C/C++ Teilprogrammen müssen Sie Folgendes beachten:
In einer UTM-Anwendung mit OSI TP wird aus technischen Gründen eine CMX-Simulation in der UTM Bibliothek libwork.a bzw. libwork.so verwendet. Deshalb ist es in diesem Fall nicht möglich in einem C/C++ Teilprogramm CMX-Aufrufe zu verwenden.
Aufruf der Funktion fork() in einem C/C++-Teilprogramm
Bei Aufrufen der Funktion fork()
in C/C++-Teilprogrammen müssen Sie Folgendes beachten: In einem durch fork()
erzeugten Kind-Prozess dürfen keine
Programmschnittstellen von openUTM verwendet werden. Anderenfalls beendet sich die UTM-Anwendung abnormal.
Einzelheiten zum Erstellen und Binden von Shared Objects, zum Übersetzen von Teilprogrammen und zum Binden einer Anwendung finden Sie im Handbuch openUTM-Handbuch „Einsatz von UTM-Anwendungen auf Unix-, Linux- und Windows-Systemen“ im Kapitel „Anwendungsprogramm erzeugen. |