Fichier spécial kbd

Objectif

Permet d'accéder au clavier nativement connecté.

Descriptif

Le fichier spécial Kbd est l'interface du clavier natif. Il fournit une interface permettant aux applications de recevoir l'entrée de l'opérateur à partir du clavier, de contrôler les voyants du clavier et de modifier les différents paramètres du clavier. Le fichier spécial permet également à une application d'envoyer un signal sonore à l'opérateur par l'intermédiaire du haut-parleur situé à l'intérieur du clavier.

configuration

Le volume sonore, le volume cliquable, le débit typématique et le retard typographique sont configurables par l'application via le sous-programme Ioctl . Ces modifications ne sont pas reflétées dans la base de données ODM . Pour modifier ces attributs dans la base de données ODM , utilisez la commande chhwkbd .

Usage Considerations

Ouvrir

Cet appel de sous-programme crée un canal entre l'application et le clavier nativement connecté. Deux canaux sont pris en charge. L'appel de sous-programme ouvert est traité normalement, sauf que les paramètres MODE et Oflag sont ignorés. Toutes les entrées du clavier sont vidées jusqu'à ce qu'un anneau d'entrée soit établi. Seul l'anneau d'entrée associé à l'ouverture la plus récente reçoit des rapports d'entrée.

fermer

Lorsque l'unité Kbd a été ouverte deux fois, l'entrée est signalée via l'anneau d'entrée enregistré précédent dans le premier Ouvert, après l'appel de sous-routine Fermer .

Lecture et écriture

Le pilote de périphérique du clavier ne renvoie pas et n'accepte pas les données via Lire et écrire. Ces appels se comportent comme si l'appel était passé à /dev/null. Les données d'entrée sont reçues des pilotes d'entrée via l'anneau d'entrée.

Ioctl

Le pilote de périphérique de clavier prend en charge les commandes ioctl suivantes:

Article Descriptif
INFOS Renvoie la structure Devinfo .
KSALARM Une alarme sonore.
KSCFGCLICK Cliquez sur le clavier de contrôle.
KSDIAGMODE Activer / désactiver le mode diagnostic (mode utilisateur uniquement).
KSLED Définition / réinitialisation du voyant de clavier.
KSKAP Activer / désactiver le sondage de maintien en vie (mode utilisateur uniquement).
KSKAPACK Acknowledge keep alive poll (mode utilisateur uniquement).
KSQUERYID Interrogation de l'identificateur d'unité de clavier.
KSQUERYSV Interrogation du vecteur de service du clavier (mode noyau uniquement).
KSREGRING Enregistrer l'anneau d'entrée.
KSRFLUSH Flush anneau en entrée.
KSTDELAY Définir un délai typamatique.
KSTRATE Définir le taux de la typamatique.
KSVOLUME Définir le volume d'alarme

Codes d'erreur

Les codes d'erreur se trouvent dans le fichier /usr/include/sys/errno.h .

Article Descriptif
EDÉFAUT Indique que les droits d'accès à l'adresse ou à l'adresse non valide sont insuffisants.
EIO Indique qu'une erreur d'E-S s'est produite.
ENOMEM Indique qu'il n'y a pas suffisamment de mémoire pour l'opération de pagination requise.
ENOSPC Indique que le système de fichiers ou l'espace de pagination est insuffisant.
EINVAL Indique qu'un argument non valide a été spécifié.
EINTR Indique que la demande a été interrompue par un signal.
EPERM Indique qu'une erreur permanente s'est produite.
EBUSY Indique que l'unité est occupée.
ENXIO Indique que le numéro d'unité non pris en charge a été spécifié.
ENODEV Indique une non-concordance de type d'unité ou d'unité non prise en charge.

Fichiers

Article Descriptif
/usr/include/sys/inputdd.h Contient des déclarations pour les commandes ioctl et le format de rapport de l'anneau d'entrée.