getpagesize   Début   Suivant   Sommaire   Préc.page.lue   Accueil
Section: Manuel du programmeur Linux (2)
Updated: 26 juillet 2007
Sommaire  



NOM   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
getpagesize - Obtenir la taille des pages mémoire du système  



SYNOPSIS   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
#include <unistd.h>

size_t getpagesize(void);

Exigences de macros de test de fonctionalités pour la glibc (voir feature_test_macros(7)) :

getpagesize() : _BSD_SOURCE || _XOPEN_SOURCE >= 500  




DESCRIPTION   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
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(2) est obtenue en utilisant

#include <unistd.h>
long sz = sysconf(_SC_PAGESIZE);

(la plupart des systèmes autorisant le synonyme _SC_PAGE_SIZE pour _SC_PAGESIZE), ou

#include <unistd.h>
int sz = getpagesize();
 



CONFORMITÉ   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
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. Les applications portables devraient utiliser sysconf(_SC_PAGESIZE) à la place de cet appel.  



NOTES   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
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'entê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   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
mmap(2), sysconf(3)  



TRADUCTION   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 11 octobre 1996 et révisée le 14 janvier 2008.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 getpagesize ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.


 



Sommaire   Début   Suivant   Sommaire   Préc.page.lue   Accueil
NOM
SYNOPSIS
DESCRIPTION
CONFORMITÉ
NOTES
VOIR AUSSI
TRADUCTION

Ce document a été créé par man2html suivi de man2html.pl, le 17/10/2008 17:49:05, en utilisant les pages de 'man'.
 

Valid HTML 4.01 Transitional