Service de noyau xmemin
Objectif
Effectua un déplacement de mémoire croisée en copiant les données de l'espace adresse spécifié vers la mémoire globale du noyau.
Syntaxe
Paramètres
| Article | Descriptif |
|---|---|
| Uaddr | Indique l'adresse en mémoire spécifiée par un descripteur de mémoire croisée. |
| Kaddr | Indique l'adresse dans la mémoire du noyau. |
| count | Indique le nombre d'octets à copier. |
| dp | Indique le descripteur de mémoire croisée. |
Descriptif
Le service de noyau Xmemin effectue une opération de mémoire croisée. Une opération de mémoire croisée se produit lorsque les données sont déplacées vers ou à partir d'un espace adresse autre que l'espace adresse dans lequel le programme s'exécute. Le service de noyau Xmemin copie les données de l'espace adresse spécifié vers la mémoire globale du noyau.
Le service de noyau Xmemin est fourni afin que les processus de noyau et les gestionnaires d'interruptions puissent accéder en toute sécurité à une mémoire tampon dans un processus utilisateur. L'appel du service de noyau Xmattach prépare la mémoire tampon de l'utilisateur pour le déplacement intermémoire.
Le service de noyau Xmemin diffère des services de noyau Copyin et Copyout en ce qu'il est utilisé pour accéder à un tampon utilisateur lorsqu'il n'est pas exécuté sous le processus utilisateur. En revanche, les services de noyau Copyin et Copyout sont utilisés uniquement pour accéder à une mémoire tampon utilisateur lors de l'exécution sous le processus utilisateur.
Environnement d'exécution
Le service de noyau Xmemin 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 l'une des erreurs suivantes:
|