Seth Woolley's Man Viewer

getpagesize(2) - getpagesize, getpagesize - get memory page size - man 2 getpagesize

([section] manual, -k keyword, -K [section] search, -f whatis)
man plain no title

GETPAGESIZE(2)             Linux Programmer's Manual            GETPAGESIZE(2)

       getpagesize - get memory page size

       #include <unistd.h>

       int getpagesize(void);

       The function getpagesize() returns the number of bytes in(1,8) a page, where
       a "page" is the thing used where it says in(1,8) the description of  mmap(2)
       that files are mapped in(1,8) page-sized units.

       The size of the kind of pages that mmap uses, is found using

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

       (where  some systems also allow the synonym _SC_PAGE_SIZE for _SC_PAGE-
       SIZE), or

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

       This call first appeared in(1,8) 4.2BSD.

       SVr4, 4.4BSD, SUSv2.   In  SUSv2  the  getpagesize()  call  is  labeled
       "legacy",  and in(1,8) POSIX 1003.1-2001 it has been dropped.  HPUX does not
       have this call.

       Whether getpagesize() is present as a Linux system call depends on  the
       architecture.   If it is, it returns the kernel symbol PAGE_SIZE, which
       is architecture and machine model dependent.  Generally, one uses bina-
       ries that are architecture but not machine model dependent, in(1,8) order to
       have a single binary distribution per architecture. This means  that  a
       user  program  should  not find PAGE_SIZE at compile time(1,2,n) from a header
       file(1,n), but use an actual system call, at least for  those  architectures
       (like sun4) where this dependency exists.  Here libc4, libc5, glibc 2.0
       fail because their getpagesize() returns a  statically  derived  value,
       and does not use a system call.  Things are OK in(1,8) glibc 2.1.

       mmap(2), sysconf(3)

Linux 2.5.0                       2001-12-21                    GETPAGESIZE(2)

References for this manual (incoming links)