Service de noyau vm_att

Objectif

Mappe un objet de mémoire virtuelle spécifié dans une région dans l'espace adresse en cours.

Syntaxe

#include <sys/types.h>
#include <sys/errno.h>
#include <sys/vmuser.h>
caddr_t vm_att ( vmhandle,  offset)
vmhandle_t  vmhandle;
caddr_t offset;

Paramètres

Article Descriptif
Vmhandle Indique le descripteur de l'objet de mémoire virtuelle à mapper.
position Indique le décalage dans l'objet de mémoire virtuelle et la région.

Descriptif

Le service de noyau Vm_att effectue les tâches suivantes:

  • Sélectionne une région non allouée dans l'espace adresse en cours et l'alloue.
  • Mappes l'objet de mémoire virtuelle spécifié par le paramètre Vmhandle avec le droit d'accès spécifié dans la poignée.
  • Crée l'adresse dans l'espace adresse en cours correspondant au décalage dans l'objet de mémoire virtuelle et la région.

Le service de noyau Vm_att utilise un modèle d'espace adresse pour les objets de mémoire virtuelle de taille fixe et les régions d'espace adresse.

Attention: S'il n'y a plus de régions libres, cet appel ne peut pas être terminé et appelle le service de noyau Panique .

Environnement d'exécution

Le service de noyau Vm_att peut être appelé à partir de l'environnement Processus ou Interruption .

Valeurs renvoyées

Le service de noyau Vm_att renvoie l'adresse qui correspond au paramètre Décalage dans l'espace adresse.