Vérification de l'état de l'horloge chien de garde
L'IOCTL LOMIOCDOGSTATE vérifie l'état des fonctions chien de garde et de
réinitialisation, et récupère le délai d'attente courant pour le chien de garde.
Si LOMIOCDOGSTATE n'a jamais été émis pour configurer le délai d'attente avant
cet IOCTL, le chien de garde n'est pas activé dans le matériel.
L'argument est un pointeur dirigé sur la structure lom_dogstate_t. Il est décrit
plus en détail dans la section
page
93. Les membres de la structure sont utilisés pour contenir les états courants
des circuits de réinitialisation du chien de garde et le délai de temporisation courant
du chien de garde. Ce délai d'attente ne correspond pas au temps restant avant le
déclenchement du chien de garde.
L'IOCTL LOMIOCDOGSTATE requiert uniquement la réussite de l'appel d'open().
Cet IOCTL peut être exécuté un nombre quelconque de fois après l'appel d'open()
et n'exige nullement l'exécution préalable d'autres IOCTL DOG.
Localisation et définition des structures de
données
L'ensemble des structures de données et des IOCTL sont définis dans lom_io.h,,
qui est disponible dans le package SUNWlomh.
Les structures de données pour l'horloge chien de garde sont indiquées ici :
La structure des données de chien de garde et de réinitialisation est la suivante :
■
Structure de données du chien de garde et de réinitialisation
EXEMPLE DE CODE A-1
typedef struct {
int reset_enable; /* reset enabled if non-zero */
int dog_enable; /* watchdog enabled if non-zero */
uint_t dog_timeout; /* Current watchdog timeout */
} lom_dogstate_t;
La structure de données de contrôle du chien de garde et de réinitialisation est la
■
suivante :
Watchdog and Reset Control Data Structure
EXEMPLE DE CODE A-2
typedef struct {
int reset_enable; /* reset enabled if non-zero */
int dog_enable; /* watchdog enabled if non-zero */
} lom_dogctl_t;
« Localisation et définition des structures de données »,
Annexe A
Mode d'application horloge chien de garde
93