Service de noyau xmdetach
Objectif
Détache d'une mémoire tampon utilisateur utilisée pour les opérations de mémoire croisée.
Syntaxe
#include <sys/types.h>
#include <sys/errno.h>
#include <sys/xmem.h> struct xmem *dp;
Paramètre
| Article | Descriptif |
|---|---|
| dp | Pointe vers un descripteur de mémoire croisée initialisé par le service de noyau Xmattach . |
Descriptif
Le service de noyau Xmdetach informe le noyau qu'un tampon utilisateur ne peut plus être accédé. Cela signifie qu'un appelant précédent, généralement un pilote de périphérique inférieur à la moitié ou un processus de noyau, n'est plus autorisé à effectuer des opérations de mémoire croisée sur cette mémoire tampon. Les appels suivants vers le service de noyau Xmemin ou Xmemout à l'aide de ce descripteur de mémoire croisée entraînent un retour d'erreur. Le descripteur de mémoire croisée est défini sur Dp-> aspace_id = XMEM_INVAL afin que le descripteur puisse être à nouveau utilisé. "Services de noyau de mémoire croisée" dans Memory Kernel Services Dans Concepts de programmation de prise en charge des extensions et des périphériques du noyau décrit comment les services de noyau intermémoire utilisent des descripteurs de mémoire croisée.
Environnement d'exécution
Le service de noyau Xmdetach peut être appelé à partir de l'environnement Processus ou Interruption .
Valeurs renvoyées
| Article | Descriptif |
|---|---|
| SUCC. XMEM_MEC | Indique que l'exécution a réussi. |
| ECHEC DE XMEM_FAIL | Indique que le descripteur n'est pas valide ou que la mémoire tampon n'a pas été définie. |