SWAPON
Section: Manuel du programmeur Linux (2) Updated: 18 juillet 2003 Index
NOM
SYNOPSIS
DESCRIPTION
PRIORITÉ
VALEUR RENVOYÉE
ERREURS
CONFORMITÉ
NOTES
VOIR AUSSI
TRADUCTION
NOM
swapon, swapoff - Activer / désactiver un fichier ou un péripherique de swap.
SYNOPSIS
#include <unistd.h>
#include <asm/page.h> /* pour avoir PAGE_SIZE */
#include <sys/swap.h>
int swapon(const char *path, int swapflags);
int swapoff(const char *path);
DESCRIPTION
swapon
active le swap sur le fichier ou le périphérique en mode bloc indiqué dans
path.
swapoff
arrête le swap sur le fichier ou le périphérique en mode bloc indiqué dans
path.
swapon
utilise un argument
swapflags.
Si cet argument
a son bit
SWAP_FLAG_PREFER
à 1, la nouvelle zone de swap disposera d'une priorité plus
élevée que la zone de swap par défaut.
La priorité est codée ainsi :
(prio << SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK
Cette fonction ne peut être appelée que par le Super-User.
PRIORITÉ
Chaque zone de swap a une priorité, haute ou basse. La priorité
par defaut est basse.
Parmi les zones de basses priorités, les nouvelles zones
sont toujours affectées d'une priorité inférieure à celle
des zones précédentes.
Toutes les priorités fixées avec l'argument
swapflags
sont plus élevées que la priorité par défaut.
Elles peuvent prendre n'importe quelle valeur positive ou
nulle choisie par l'appelant.
Plus la valeur est haute, plus la priorité est élevée.
Les pages de swap sont allouées dans les zones par ordre décroissant
de priorité. Pour des zones de priorité différentes, la plus haute
sera toujours remplie entièrement avant d'utiliser la zone
de priorité plus faible.
Si deux ou plus de zones ont la même priorite, et qu'il s'agit de
la plus haute priorité disponible, les pages sont allouées en
utilisant un algorithme Round-Robin entre elles.
Sur linux 1.3.6, le noyau suit généralement ces règles, mais il
y a parfois des exceptions.
VALEUR RENVOYÉE
En cas de réussite 0 est renvoyé, sinon -1 est renvoyé et
errno
contient le code d'erreur.
ERREURS
De nombreuses erreurs peuvent survenir si
path
n'est pas valide.
- EPERM
-
L'utilisateur n'est pas Super-User ou il y a plus de
MAX_SWAPFILES
zones de swap actives (8 sous Linux 1.3.6).
- EINVAL
-
path
existe mais n'est ni un chemin régulier, ni un périphérique bloc.
- ENOENT
-
path
n'existe pas.
- ENOMEM
-
Pas assez de mémoire pour démarrer le swapping.
CONFORMITÉ
Ces fonctions sont spécifiques à Linux et ne doivent pas être employées
dans des programmes destinés à être portables.
NOTES
La partition ou le fichier doivent être préparés par
mkswap(8).
VOIR AUSSI
TRADUCTION
Christophe Blaess, 1996-2003.
|