Service de noyau vm_galloc
Objectif
Allère une région de mémoire globale dans le noyau 64 bits.
Syntaxe
Descriptif
Le service de noyau Vm_galloc alloue de la mémoire à partir du pool de mémoire globale du noyau sur le noyau 64 bits. La taille d'allocation est arronis à la limite 4K la plus proche. La clé de protection de page par défaut des segments de mémoire globale est 00, sauf si elle est remplacée par l'indicateur V_UREAD .
La zone de type peut avoir les valeurs suivantes, qui peuvent être combinées:
| Article | Descriptif |
|---|---|
| V_TRAVAIL | Obligatoire. Crée un segment de mémoire de travail. |
| V_SYSTÈME | La nouvelle allocation est une zone de système global qui n'appartient à aucune application. Les erreurs de référence de stockage dans cette zone entraînent des pannes système. |
| V_UREAD | Remplace la protection de page par défaut 00 et crée la nouvelle région avec une protection de page par défaut de 01. |
| V_NOEXEC | Les pages de la région ne seront pas protégées par défaut. Uniquement pris en charge sur POWER4 et le matériel ultérieur. |
Le service de noyau Vm_galloc est destiné aux sous-systèmes qui possèdent de grandes structures de données pour lesquelles Xmalloc n'est pas le meilleur choix pour la gestion. Le segment de mémoire Xmalloc du noyau lui-même réside dans la mémoire globale.
Paramètres
| Article | Descriptif |
|---|---|
| type | Les indicateurs qui peuvent être spécifiés pour contrôler l'allocation. |
| Taille | Indique la taille, en octets, de l'allocation souhaitée. |
| Eaddr | Pointeur vers où Vm_galloc renvoie l'adresse de début de la mémoire allouée. |
Environnement d'exécution
Le service de noyau Vm_galloc peut être appelé à partir de Environnement de processus uniquement.
Valeurs renvoyées
| Article | Descriptif |
|---|---|
| 0 % | L'opération a abouti. Une nouvelle région a été allouée et son adresse de début est renvoyée à l'adresse indiquée par le paramètre Eaddr . |
| EINVAL | Taille ou type spécifié non valide. |
| ENOSPC | Espace insuffisant dans le segment de mémoire Galloc pour effectuer l'allocation. |
| ENOMEM | Ressources disponibles insuffisantes pour répondre à la demande. |