Service de noyau devdump

Objectif

Appelle une routine de cliché de pilote de périphérique.

Syntaxe

#include <sys/types.h>
#include <sys/errno.h>
int devdump
(
devno, uiop, cmd, arg, chan, ext)
dev_t  devno;
struct uio * uiop;
int  cmd,  arg,  ext;

Paramètres

Article Descriptif
Devno Indique le Numéros d'unités principaux et mineurs.
Uiop Pointe vers la structure Uio contenant les paramètres d'écriture.
CMD Indique la commande de vidage à effectuer.
arg Indique un paramètre ou une adresse à un bloc de paramètres pour la commande spécifiée.
Chan Indique le ID canal.
poste Indique le Paramètre d'appel système étendu.

Descriptif

L'extension de noyau ou de noyau appelle le service de noyau Devdump pour initier un cliché de mémoire à une unité lors de l'écriture des données de vidage, puis pour arrêter le cliché sur l'unité cible.

Le service Devdump appelle la routine Dévidage du pilote de périphérique, qui se trouve dans la table de commutation d'unité pour le pilote de périphérique associé au numéro d'unité indiqué. Si le numéro d'unité (indiqué par le paramètre Devno ) n'est pas valide ou si le pilote de périphérique associé n'a pas de routine Dévidage , une valeur de retour ENODEV est renvoyée.

Si le numéro d'unité est valide et que le pilote de périphérique indiqué possède une routine Dévidage , la routine est appelée.

Si la routine Dévidage du pilote de périphérique est appelée, la valeur de retour du service Devdump est définie sur la valeur de retour fournie par la routine Dévidage de l'unité.

Environnement d'exécution

Le service de noyau Devdump peut être appelé dans Le processus ou Environnement d'interruption, comme décrit dans les conditions décrites dans la routine Dévidage .

Valeurs renvoyées

Article Descriptif
0 % Indique une opération réussie.
ENODEV Indique que le numéro d'unité n'est pas valide ou qu'aucune routine Dévidage n'est enregistrée pour ce périphérique.

La routine du pilote de périphérique Dévidage fournit d'autres valeurs de retour.