Die Benutzer-API
Der ntwdt-Treiber stellt über IOCTLs eine Schnittstelle für die
Anwendungsprogrammierung bereit. Sie müssen den Geräteknoten /dev/ntwdt
öffnen, bevor Sie die Watchdog-IOCTLs ausgeben können.
Hinweis – Auf /dev/ntwdt ist nur eine einzige open()-Instanz zulässig; wird
versucht, mehrere open()-Instanzen auszuführen, so hat dies die folgende
Fehlermeldung zur Folge: EAGAIN – The driver is busy, try again.
Zur Arbeit mit dem Watchdog-Timer stehen die folgenden IOCTLs zur Verfügung:
■
LOMIOCDOGTIME
LOMIOCDOGCTL
■
■
LOMIOCDOGPAT
LOMIOCDOGSTATE
■
■
LOMIOCALCTL
LOMIOCALSTATE
■
Arbeiten mit dem Watchdog-Timer
Einstellen des Timer-Ablaufwerts
Mit dem IOCTL LOMIOCDOGTIME wird der Ablaufwert des Watchdog-Timers
eingestellt. Der IOCTL programmiert die Watchdog-Hardware mit der angegebenen
Zeitspanne. Sie müssen diese Einstellung (LOMIOCDOGTIME) vornehmen, bevor Sie
den Watchdog-Timer mit LOMIOCDOGCTL aktivieren können.
Das Argument verweist auf eine Ganzzahl ohne Vorzeichen. Diese Ganzzahl gibt das
neue Zeitlimit für die Watchdog-Funktion in einem Vielfachen von 1 Sekunde an. Sie
können als Zeitlimit einen Zeitraum von 1 Sekunde bis zu 180 Minuten festlegen.
Wenn die Watchdog-Funktion zum Zeitpunkt dieser Einstellung bereits aktiv ist,
so wird der Ablaufwert zurückgesetzt, damit der neue Wert übernommen werden
kann. Werte von weniger als 1 Sekunde oder mehr als 180 Minuten führen zu einem
Fehler (EINVAL).
Anhang A
Der Anwendungsmodus des Watchdog-Timers
97