sihmon(1M) (Nur RM400) sihmon(1M)
NAME
sihmon - SIH-Monitor
SYNTAX
/usr/lib/saf/sihmon [-d level] [-f file] [-t timeout] [-r retry]
[-s size]
/usr/lib/saf/sihmon -v
/usr/lib/saf/sihmon -h|-?
BESCHREIBUNG
Der SIH-Monitor sihmon verwaltet HDLC-Geräte, die über einen SIH-
Treiber und ein SIH-Board angeschlossen sind. Er übernimmt die Vorein-
stellung von HDLC-Parametern und sorgt dafür, daß ein ausgeschaltetes,
ladbares HDLC-Gerät nach dem Einschalten mit einem Platzprogramm gela-
den wird.
Der SIH-Monitor ist ein Port-Monitor im Sinne der Service Access Faci-
lity (SAF) und nutzt dessen Möglichkeiten zur Konfiguration und Kon-
trolle des Monitors. Er ist dazu ausgelegt, unter der Kontrolle des
Service Access Controllers (SAC) abzulaufen. Mit dem Kommando
sacadm(1M) kann dem SAC eine SIH-Monitor-Ausprägung bekanntgemacht
werden. Mit den Kommandos pmadm(1M) und sihadm(1M) werden Einträge und
Änderungen in der Administrationstabelle des SIH-Monitors (pmtab)
vorgenommen. Zusätzliche SIH-Monitor-spezifische Kommandos sind mit
dem Kommando sihadm(1M) verfügbar.
Unter einem Port im Sinne von SAF soll im folgenden ein Link des SIH-
Treibers verstanden werden. Die Konfiguration eines Links wird durch
einen Eintrag in der Datei pmtab festgelegt. Ein solcher Eintrag wird
durch einen eindeutigen Namen (SIH-Monitor-Service-Kennung) identifi-
ziert.
Im Normalfall werden Meldungen in die Log-Datei /var/saf/pmtag/log der
jeweiligen SIH-Monitor-Ausprägung geschrieben. Die Ausgabe des
Gebrauchs sowie Fehlermeldungen durch falsche Verwendung der Optionen
werden auf stderr ausgegeben. Sonstige Fehlermeldungen, die vor der
erfolgreichen Eröffnung der Log-Datei auftreten, werden sowohl auf
stderr als auch auf dem Konsolterminal ausgegeben.
Der erfolgreiche Start des SIH-Monitors ist nur mit root-Berechtigung
möglich.
OPTIONEN
Wird muxmon ohne Option aufgerufen, gelten die im Folgenden angegebe-
nen Standardwerte.
-d level
Mit dieser Option wird der Trace-Level des SIH-Monitors voreinge-
stellt. Das Argument level gibt den Trace-Level an:
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
sihmon(1M) (Nur RM400) sihmon(1M)
0 keine Ausgaben (Trace ausgeschaltet, Standardwert)
1 Ausgabe von Fehlermeldungen und wichtigen Ablaufmeldungen
2 zusätzliche Ausgabe von detaillierten Ablaufmeldungen
Der Trace-Level kann im laufenden Betrieb durch das Kommando
sihadm(1M) verändert werden. Wenn die Option -f nicht verwendet
wird, werden alle Trace-Ausgaben an das Ende der Datei
/var/saf/pmtag/trace angefügt.
-f file
Mit dieser Option wird die Datei file anstelle der Standard-Datei
/var/saf/pmtag/trace als Trace-Datei verwendet. Es wird ein abso-
luter Pfadname erwartet. Trace-Ausgaben werden nur dann vorgenom-
men, wenn der aktuelle Trace-Level 0 ist (siehe die Option -d).
-t timeout
Diese Option legt ein Zeitintervall in Sekunden fest, nach dessen
Ablauf ein fehlgeschlagener Vorgang (z. B. Fehler beim Laden)
wiederholt wird. Wird ein Wert kleiner als 10 angegeben, so wird
10 verwendet. Der Standardwert beträgt 90 Sekunden.
-r retry
Diese Option legt fest, wie oft ein Vorgang nacheinander fehl-
schlagen darf (z. B. Fehler beim Laden), bevor der zugehörige
Link intern DISABLED wird. Ein Link, der intern DISABLED ist,
kann durch den Aufruf sacadm -x -ppmtag erneut aktiviert werden.
Der interne Zustand eines Links läßt sich mit dem Aufruf sihadm
-S ermitteln.
Das Argument retry darf den Wert 0 annehmen. Ein Wert 0 erlaubt
eine unbegrenzte Wiederholung (Standardwert).
-s size
Diese Option legt die maximale Größe der Log-Datei
/var/saf/pmtag/log in Bytes fest. Wird diese Größe überschritten,
so wird die Datei in die Datei /var/saf/pmtag/log.alt kopiert.
Die ursprüngliche Datei wird auf die Länge Null verkürzt.
Für das Argument size ist der Wert 0 erlaubt, solange er die
maximal erlaubte Dateigröße im System nicht überschreitet. Wird
der Wert 0 gewählt, so werden keine Daten in die Log-Datei
geschrieben. Werte zwischen 1 und 1023 werden auf 1024 erhöht.
Der Standardwert beträgt 1048576 Bytes (1 MB).
-v Gibt die Versionskennung des SIH-Monitors auf stdout ohne Zeilen-
vorschub aus. Sie ist mit der Versionskennung des Pakets SIsih
identisch.
-h | -?
Es wird die Kommandosyntax auf stderr angezeigt.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
sihmon(1M) (Nur RM400) sihmon(1M)
HINWEISE
Der SIH-Monitor kann nur dann einen Link-spezifischen Kontakt mit dem
SIH-Treiber aufnehmen, wenn der SIH-Treiber für diesen Link vor dem
ersten Eröffnen eines entsprechenden Multi-Devices in den Lade-Modus
geschaltet wurde. Das kann entweder durch das rechtzeitige Starten der
SIH-Monitor-Ausprägung oder durch rechtzeitigen Aufruf des Kommandos
sihadm -I erreicht werden (z. B. beim Hochfahren).
Es wird davon ausgegangen, daß alle Links, die in der Datei pmtab der
entsprechenden SIH-Monitor-Ausprägung eingetragen sind, vom Monitor
überwacht werden sollen. Deshalb wird auch für Einträge, die in der
Datei pmtab auf disabled gesetzt sind, das entsprechende Admin-Device
des SIH-Treibers eröffnet und der Lade-Modus gesetzt. Weitere Aktionen
werden jedoch erst dann gestartet, wenn der Eintrag auf enabled
gesetzt wird.
Der Lade-Modus wird für ein Admin-Device erst dann zurückgesetzt, wenn
ein Eintrag aus der Datei pmtab entfernt wird oder sich der SIH-Moni-
tor beendet.
Eine SIH-Monitor-Ausprägung kann maximal 200 Links überwachen. Die
Datei pmtab sollte dementsprechend maximal 200 Einträge, die gleich-
zeitig enabled sind, enthalten.
Für interne Zwecke beansprucht der SIH-Monitor maximal 15 Datei-
Deskriptoren und für jeden zu überwachenden Link zusätzlich einen
Datei-Deskriptor.
Alle Log- und Trace-Dateien sind vor dem Überlaufen geschützt. Über-
schreitet die Dateigröße einen Maximalwert, so wird die Datei in eine
Datei mit dem gleichen Anfangsnamen und der Endung .alt kopiert. Die
ursprüngliche Datei wird auf die Länge Null verkürzt. Folgende Maxi-
malwerte sind vorgesehen:
/var/saf/pmtag/log siehe die Option -s
/var/saf/pmtag/trace 2097152 Bytes (2 MB)
/var/saf/pmtag/state 2097152 Bytes (2 MB)
Ladeprogramme, die vom SIH-Monitor aufgerufen werden [siehe sihadm(1M)
und xbload(1M)], sollten folgende Konventionen einhalten:
1. Das Ladeprogramm sollte den Rückgabewert 0 liefern, wenn das ent-
sprechende HDLC-Gerät erfolgreich geladen werden konnte bzw. schon
geladen war. Anderenfalls sollte es einen Rückgabewert 0 liefern;
der Ladeversuch wird dann nach Ablauf eines Zeitintervalls wieder-
holt (siehe die Optionen -t und -r).
2. Fehlermeldungen sollten in eine eigene Datei bzw. nach stderr
geschrieben werden.
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98
sihmon(1M) (Nur RM400) sihmon(1M)
Werden Änderungen in den Dateien /var/sadm/terms/hdlclabs,
/etc/hdlcdefs oder /etc/ttydefs vorgenommen, die die SIH-Monitor-
Ausprägung pmtag betreffen, so müssen sie dem SIH-Monitor durch das
Kommando sacadm -x -ppmtag bekanntgemacht werden. Die Änderungen wer-
den dann bei der nächsten Einstellung der HDLC-Parameter (siehe die
Option -a des sihadm(1M)-Kommandos) berücksichtigt.
DIAGNOSE
Zu Diagnosezwecken verwaltet der SIH-Monitor die private Log-Datei
/var/saf/pmtag/log (siehe die Option -s), in die außergewöhnliche
Ereignisse und Fehlermeldungen geschrieben werden. Eine Zeile der
Log-Datei hat folgendes Format:
type dd.mm HH:MM:SS pid text
Das Feld type kann folgende Einträge enthalten:
INFO Die Zeile enthält eine wichtige Information (z. B. Start und
Beendigung des SIH-Monitors). Es liegt kein Fehler vor.
WARN Es ist ein Fehler aufgetreten, der dazu führen kann, daß ein
oder mehrere Links nicht mehr überwacht werden können. Ein sol-
che Meldung sollte im Normalbetrieb nicht erscheinen.
FATAL Es ist ein gravierender Fehler aufgetreten, der zu einem unmit-
telbaren Abbruch des SIH-Monitors führt.
dd, mm, HH, MM und SS geben den Tag, den Monat, die Stunde, die Minute
und die Sekunde des Zeitpunktes der Fehlermeldung an.
Das Feld pid gibt die Prozeßnummer der zugehörigen SIH-Monitor-Ausprä-
gung an.
Das Feld text beschreibt den aufgetretenen Fehler.
Das Format der Trace-Dateieinträge ist mit dem Format der Log-Datei-
einträge identisch. Wenn der aktuelle Trace-Level 0 ist, werden alle
Log-Meldungen auch in die Trace-Datei geschrieben. Das gilt auch dann,
wenn die SIH-Monitor-Ausprägung mit der Option -s0 gestartet wurde.
Alle Log-Meldungen werden zusätzlich nach Logging 3.0 geschrieben
(Komponentennummer 1080005). Der Fehler-Level kann die Werte 6 (INFO),
4 (WARN) oder 3 (FATAL) annehmen. Allen unterschiedlichen Log-Meldun-
gen ist eine eindeutige Fehlernummer zugeordnet. Der Logging-Text hat
das Format:
pid text
Seite 4 Reliant UNIX 5.44 Gedruckt 11/98
sihmon(1M) (Nur RM400) sihmon(1M)
Der SIH-Monitor wird im Normalfall durch den SAC mit dem Signal
SIGTERM(15) beendet, kann aber auch manuell mittels kill -15 pid been-
det werden. Der Rückgabewert ist in beiden Fällen 0. Eine Beendigung
mittels SIGKILL(9) sollte vermieden werden, da dann keine Aufräumar-
beiten vorgenommen werden können.
Im Fehlerfall beendet sich der SIH-Monitor mit einer FATAL-Fehlermel-
dung in der Log-Datei. Der Rückgabewert besitzt in diesem Fall einen
der folgenden Werte:
1 = falsche Option benutzt (EILLOPT)
2 = falsches Argument zu einer Option (EWRARG)
3 = keine root-Berechtigung (ENOROOT)
4 = Monitor-Ausprägung läuft bereits (EPIDLOCK)
5 = pid kann nicht erzeugt werden (ECPID)
6 = Variable pmtag im Prozeß-Environment nicht vorhanden (EPMTAG)
7 = Log-Datei kann nicht eröffnet werden (ENOLOG)
8 = unbekannter Inhalt der ISTATE-Variablen (EISTATE)
9 = pmpipe kann nicht eröffnet werden (EPMPIPE)
10 = sacpipe kann nicht eröffnet werden (ESACPIPE)
11 = zu wenig Datei-Deskriptoren im System vorfügbar (ETOOFEWFDS)
12 = pmtab kann nicht eröffnet werden (ENOPMTAB)
13 = hdlclabs kann nicht eröffnet werden (ENOHDLCLABS)
14 = hdlcdefs kann nicht eröffnet werden (ENOHDLCDEFS)
15 = ttydefs kann nicht eröffnet werden (ENOTTYDEFS)
16 = falsche pmtab-Version (EWRPMTAB)
17 = falsche hdlclabs-Version (EWRHDLCLABS)
18 = falsche hdlcdefs-Version (EWRHDLCDEFS)
19 = falsche ttydefs-Version (EWRTTYDEFS)
20 = Fehler beim Polling der Datei pmpipe (EPOLLSAC)
21 = Fehler beim exec des Laders (ECLDEXEC)
Seite 5 Reliant UNIX 5.44 Gedruckt 11/98
sihmon(1M) (Nur RM400) sihmon(1M)
50 = interner Programmfehler (EINTERNAL1)
99 = interner Programmfehler - core dump (EINTERNAL2)
DATEIEN
/usr/sbin/sihadm
/etc/saf/pmtag/pmtab
/etc/ttydefs
/etc/hdlcdefs
/var/sadm/terms/hdlclabs
/var/saf/pmtag/log[.alt]
/var/saf/pmtag/trace[.alt]
/var/saf/pmtag/state[.alt]
SIEHE AUCH
pmadm(1M), sac(1M), sacadm(1M), sihadm(1M), xbload(1M).
Seite 6 Reliant UNIX 5.44 Gedruckt 11/98