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. |