Date création : 27-03-2008 20:23:44
 Vous êtes dans : GNU/Linux Astuces / Pages man [Section2 - Appels système]
GETPAGESIZE
Index
- NOM
- SYNOPSIS
- DESCRIPTION
- HISTORIQUE
- CONFORMITÉ
- NOTES
- VOIR AUSSI
- TRADUCTION
NOM
getpagesize - Obtenir la taille des pages mémoire du système
SYNOPSIS
#include <unistd.h>
int getpagesize(void);
DESCRIPTION
La fonction getpagesize() renvoie le nombre d'octets dans une page. Une
« page » est ce que l'on considère quand on dit dans la description de
mmap(2) que les fichiers sont projetés en unités de la taille d'une page.
La taille d'une page du type de celle utilisée par mmap() est obtenue en
utilisant
-
#include <unistd.h>
long sz = sysconf(_SC_PAGESIZE);
(certains systèmes autorisant le synonyme _SC_PAGE_SIZE pour _SC_PAGESIZE),
ou
-
#include <unistd.h>
int sz = getpagesize();
HISTORIQUE
Cet appel est apparu dans BSD 4.2.
CONFORMITÉ
SVr4, BSD 4.4, SUSv2. Dans SUSv2 l'appel getpagesize() est indiqué comme
historique, et dans POSIX.1-2001 il a été abandonné. HP-UX n'offre pas cet
appel.
NOTES
Que la routine getpagesize() sous Linux invoque un appel système ou non
dépend de l'architecture. Si c'est le cas, elle renvoie la valeur du symbole
PAGE_SIZE du noyau, qui dépend de l'architecture et du modèle de
machine. Généralement, on utilise des exécutables binaires qui dépendent de
l'architecture mais pas du modèle de machine afin d'avoir un seul fichier
binaire de distribution par architecture. Ceci signifie qu'un programme
utilisateur ne doit pas rechercher la valeur de PAGE_SIZE dans les fichiers
d'en-tête lors de la compilation, mais invoquer véritablement un appel
système, au moins pour les architectures où cette dépendance existe (comme
sun4). En ce sens, libc4, libc5 et GlibC 2.0 font erreur car leur version de
getpagesize() renvoie une valeur calculée statiquement, et n'invoque pas
d'appel système. Tout est arrangé depuis la glibc 2.1.
VOIR AUSSI
mmap(2), sysconf(3)
TRADUCTION
Cette page de manuel a été traduite et mise à jour par
Christophe Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003,
puis par Alain Portal <aportal AT univ-montp2 DOT fr> jusqu'en 2006.
La traduction de cette page de manuel est basée sur les traductions
disponibles sur http://manpagesfr.free.fr/,
mais est gérée par l'équipe francophone de traduction de Debian
au travers de la liste de discussion debian-l10n-french.
Veuillez signaler toute erreur de traduction par un rapport de bogue sur
le paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document en
utilisant la commande
« man -L C <section> <page_de_man> ».
|