Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ muxmon(1M) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

muxadm(1M)

sac(1M)

sacadm(1M)

dptg2(7)

termio(7)

muxmon(1M)                                                       muxmon(1M)

NAME
     muxmon - DPTG2-Monitor

SYNTAX
     /usr/lib/saf/muxmon [-d level] [-f file] [-t sec] [-r retry]

     /usr/lib/saf/muxmon -?

BESCHREIBUNG
     muxmon ist ein auf TTY-STREAMS basierender Portmonitor, wie er im
     System V Release 4 durch SAF (Service Access Facility) vorgesehen ist.
     Die Aufgabe von muxmon ist es, Verbindungen zu den Arbeitsplätzen zu
     überwachen, die über das DPTG2-Protokoll betrieben werden. Der muxmon
     ist so konzipiert, daß er normalerweise nur unter der Kontrolle des
     SAC (Service Access Controller) [siehe sac(1M)] abläuft. Er kann mit
     den Kommandos sacadm(1M) und pmadm(1M) gesteuert werden. DPTG2-spezi-
     fische Kommandos und Formate können über das Kommando muxadm(1M)
     gesteuert werden.

     Die grundlegenden Funktionen von muxmon sind:

     1) Allgemeine Monitor-Prozeß-Steuerung
          In diesen Aufgabenbereich fällt die Ansteuerung des Monitors
          selbst. Der Monitor im Sinne von SAF besitzt 2 interne Zustände:
          ENABLED und DISABLED. Vom SAC wird der Monitor in einem der bei-
          den Zustände gestartet. Welcher der Zustände beim Start des Moni-
          tors eingenommen wird, bestimmt der sactab-Eintrag. Im Zustand
          DISABLED überwacht der Monitor keinen der Ports. Im Zustand
          ENABLED werden alle Terminals wie in der Datei pmtab beschrieben
          überwacht. Der Monitor wird durch ein SIGTERM(15)-Signal beendet.

     2) Anschluß-Überwachung
          In der zum Monitor gehörenden Datei pmtab wird mit jedem Eintrag
          ein Verbindungsaufbau zu einem DPTG2-Terminal beschrieben. Gemäß
          diesem Eintrag eröffnet der Monitor die Verbindung zu dem Termi-
          nal und überwacht dessen Zustand. Ist das Terminal eingeschaltet,
          wird der Multiplexer aktiviert (ILINK) [siehe termio(7)]. Beim
          Ausschalten des Terminals wird der Multiplexer abgehängt
          (IUNLINK) [siehe termio(7)]. Wenn der Monitor im Zustand
          DISABLED ist oder der pmtab-Eintrag ist x=disable, so ist der
          Administrator-Kanal des Multiplexers geschlossen.

     3) Durchführung von Diensten
          Im pmtab-Eintrag eines Terminals kann ein Ladeservice spezifi-
          ziert werden. Wenn er gewünscht ist (z. B. bei der Ansteuerung
          eines 9766-Terminals), kann mit dem Namen eines Platzprogramms
          (z. B. xb4D) das Programm, das geladen werden soll, angegeben
          werden. Mit N wird der Ladeservice ausgeschaltet, und mit Y wird
          es dem Arbeitsplatz überlassen, mit welchem Programm er geladen
          werden möchte. Das Laden geschieht jeweils vor dem Einschalten
          des Multiplexers (ILINK). Bis zum fertigen Laden wird ein open-
          Systemaufruf auf den Benutzer-Kanälen blockiert.



Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

muxmon(1M)                                                       muxmon(1M)

OPTIONEN
     Wird muxmon ohne Option aufgerufen, gelten die im Folgenden angegebe-
     nen Standardwerte.

     -d level
          Mit dieser Option wird die Trace-Stufe auf den Wert level
          gesetzt. Ist der Wert größer als 2, wird er auf 2 begrenzt. Stan-
          dartwert ist 0.

     -f file
          Mit dieser Option wird die Trace-Datei file anstelle der
          Standard-Datei /var/saf/pmtag/trace benutzt.

     -t sec
          Mit dieser Option wird die Timeout-Zeit für Wiederholungen auf
          den Wert sec gesetzt. Falls sec kleiner als 60 Sekunden ist, wird
          der Wert auf 60 heraufgesetzt. Der Standardwert ist 90 Sekunden.

     -r retry
          In jeder Fehlersituation wird der Verbindungsaufbau der zugehöri-
          gen Anschlüsse (Service-Kennung) für eine Timeout-Zeit [siehe
          Option -t] zurückgestellt. Nach dieser Zeit wird wieder versucht,
          die Verbindung aufzubauen. Tritt erneut ein Fehler auf, wird der
          ganze Ablauf wiederholt. Diese Wiederholung wird MAXRETRY mal
          durchgeführt. Schlagen alle Versuche fehl, wird die Service-
          Kennung in den Zustand DISABLED gesetzt. Die Größe von MAXRETRY
          ist standardmäßig auf 12 eingestellt. Mit dieser Option kann sie
          beim Monitorstart verändert werden.

          Der Wert vom Argument retry kann jeden Integer-Wert annehmen.
          Dabei werden Werte kleiner als 5 auf 5 begrenzt. Bei der Angabe
          von negativen Werten wird der absolute Zahlenwert genommen und
          wenn der Wert -1 gewählt wird, so wird das Einrichten der Verbin-
          dung immer wieder versucht. Allerdings wird in der Logging-
          Schnittstelle /var/saf/pmtag/log nur der erste und der letzte
          Versuch protokolliert. Im Falle von -1 also nur der erste.

     -?   Es wird die Kommandosyntax auf stderr angezeigt.

DIAGNOSE/WARTUNG
     Zu Diagnosezwecken führt der Monitor noch eine private Logging-Datei
     in dem Verzeichnis /var/saf/pmtag mit dem Namen log. Diese Datei ist
     nur für den Monitor beschreibbar. In dieser Log-Datei werden SAC-
     Kommandos, Statusänderungen und Fehlersituationen protokolliert.

     Als Reliant UNIX System-Komponente schreibt der DPTG2-Monitor alle
     diese Log-Meldungen auch in das Reliant UNIX Logbuch. Sie sind unter
     der Komponentennummer 36 und der Fehlernummer 6 abgelegt. Da muxmon
     alle seine Meldungen unter dieser Fehlernummern ablegt, sollte im
     Logging-System der Wiederholungszähler für den Komponentenkreis 36
     grundsätzlich ausgeschaltet sein.



Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

muxmon(1M)                                                       muxmon(1M)

     Um die Fehlersuche zu erleichtern, ist es möglich, den Monitor in
     einem Trace-(Debug-)Modus zu betreiben. Dazu kann mit der Option -f
     eine Datei angegeben werden, in die die Trace-Information geschrieben
     wird. Ist die Option -f nicht benutzt worden, schreibt der Monitor
     diese Trace-Informationen nach trace im Verzeichnis /var/saf/pmtag.
     Der Trace-Modus wird mit der Option -d beim Monitor-Start oder nach-
     träglich durch Signale dynamisch zur Laufzeit eingeschaltet. Dabei
     gibt es für den Trace-Modus 3 Stufen:

     0  Es werden keine Trace-Ausgaben gemacht.

     1  Es werden nur Ausgaben gemacht, wenn Fehlersituationen auftreten.

     2  Es werden volle Trace-Ausgaben gemacht, bei denen der Programm-
        ablauf des Monitors verfolgt werden kann.

     Diese Ausgaben sind nur für Entwickler zur Fehlersuche gedacht. Der
     Trace-Modus sollte nur bei Bedarf eingeschaltet werden.

     Mit dem Signal SIGUSR1(16) wird die Trace-Stufe um 1 erhöht, mit
     SIGUSR2(17) wird die Trace-Stufe auf 0 gestellt. Außerdem kann die
     Trace-Stufe gleich beim Monitorstart über die Option -d eingestellt
     werden. Es wird keine Administration der Trace-Datei vorgenommen. Das
     bedeutet, daß im Normalfall der Trace-Modus ausgeschaltet sein sollte
     (Stufe 0), damit die Trace-Datei nicht überläuft.

     Mit dem Signal SIGHUP(1) wird der Zustand der zu überwachenden
     Anschlüsse in eine Status-Datei state im Verzeichnis /var/saf/pmtag
     geschrieben. Alte Status-Einträge in der Datei werden überschrieben.

     Die state-Datei hat das folgende Format:

          DPTG-monitor 'pmtag' (pid=number) state: pmstate

     Darin ist pmtag der Name der Monitor-Ausprägung. Die PID-number ist
     die gegenwärtige Prozeß-ID, pmstate kann die Werte PMDISABLED und
     PMENABLED annehmen.

     Für jede zu überwachende Verbindung belegt ein Eintrag eine Zeile.
     Dabei gibt es für die Einträge je nach Typ unterschiedliche Formate.

     Ein Remote-Anschluß sieht wie folgt aus:

        no. svrtag: admin path, [state] host 'name' port portno => status

     und ein Direktanschluß:

          no. svrtag: admin path, local device 'name' => status






Seite 3                      Reliant UNIX 5.44               Gedruckt 11/98

muxmon(1M)                                                       muxmon(1M)

     Die Felder des Formats im einzelnen:

     no       Die laufende Nummer eines Eintrags.

     svrtag   Das ist der symbolische Tag-Name der Verbindung (Service-
              Kennung).

     path     Pfadname des Administrator-Kanals zum Multiplexer.

     state    Im Falle eines Remote-Anschlusses wird die Erreichbarkeit des
              Hosts von Zeit zu Zeit überprüft. Hier wird das Ergebnis der
              letzten Überprüfung angezeigt.

     name     Hier wird beim Direktanschluß der Pfadname des seriellen
              Terminal-Anschlusses angegeben. Bei Remote-Anschlüssen steht
              hier der Hostname, wie er in der Datei pmtab eingetragen
              ist.

     portno  Bei Remote-Anschlüssen steht hier die Port-Nummer für den
              Remote-Host.

     status   In diesem Feld wird der Zustand der Terminal-Verbindung ange-
              zeigt, wie der Monitor sie sieht. Dabei gibt es die folgenden
              Möglichkeiten:

              SUSPENDED  Beim Aufbau der Verbindung ist eine Fehlersitua-
                         tion eingetreten. Der Grund für die Suspendierung
                         wird immer hinter dem Schlüsselwort reason: ange-
                         geben.

              DISABLED   Dieser Zustand wird dann erreicht, wenn ein Ver-
                         bindungsaufbau MAXRETRY mal gescheitert ist. Dabei
                         wird der Grund des letzten Scheiterns hinter dem
                         Schlüsselwort reason: angegeben.

              ACTIVATED  Dies bedeutet, daß mit einer Verbindungsaufbau-
                         Sequenz begonnen wurde. Der Administrator-Kanal
                         ist bereits eröffnet, und der Monitor wartet dar-
                         auf, daß ein "Open" bestätigt oder ein "Connect"
                         akzeptiert wird.

              CONNECTED  In diesem Zustand ist eine Verbindung zum Terminal
                         hergestellt.

              LOADING    Der Kontakt zum Terminal ist hergestellt worden,
                         und es wird gerade geladen.

              LINKED     Das Terminal ist erreichbar und geladen. Damit ist
                         es betriebsbereit für den DPTG2-Betrieb.





Seite 4                      Reliant UNIX 5.44               Gedruckt 11/98

muxmon(1M)                                                       muxmon(1M)

WARNUNG
     Der Trace-Modus sollte nur kurzzeitig eingeschaltet werden, damit die
     Trace-Datei nicht zu groß wird.

DIAGNOSE
     Falls kein Fehler auftritt, beendet sich muxmon mit dem Rückgabewert
     0. Im Falle von Fehlern haben die Rückgabewerte die folgende Bedeu-
     tung:

      1 =  Es wurde eine illegale Option benutzt (EILLOPT)

      2 =  Die Datei pid konnte nicht geöffnet werden (EPID)

      3 =  Die Datei log konnte nicht geöffnet werden (ELOG)

      4 =  Kein exklusiver Zugriff auf die Datei pid (EPLOCK)

      5 =  Kein exklusiver Zugriff auf die Datei log (ELLOCK)

      6 =  Eine interne Pipe konnte nicht geöffnet werden (EPIPE)

      7 =  Illegaler Anfangszustand des Monitors (EISTATE)

      8 =  Datei pmpipe nicht verfügbar (EPIPE)

      9 =  Datei sacpipe nicht verfügbar (ESACPIPE)

     10 =  Fehler beim Lesen der Datei pmpipe (EERROR)

     11 =  Fehler beim Lesen der Datei sacpipe (ESACMSG)

     12 =  Falsche Format-Version in der Datei pmtab (EVERSION)

DATEIEN
     /etc/saf/sactab

     /etc/saf/sacpipe

     /etc/saf/pmtag/pmtab

     /etc/saf/pmtag/pmpipe

     /var/saf/pmtag/state

     /var/saf/pmtag/log

     /var/saf/pmtag/trace

SIEHE AUCH
     muxadm(1M), sac(1M), sacadm(1M), dptg2(7), termio(7).




Seite 5                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026