getpagesize - определяет размер страницы памяти
НАЗВАНИЕgetpagesize - определяет размер страницы памяти
СИНТАКСИС
#include
int getpagesize(void);
ОПИСАНИЕ
Функция getpagesize() Возвращает количество байтов в
странице. Под страницей подразумевается то, что имеется
ввиду в описании функции mmap(2), когда говорится о том,
что файлы отображаются постранично.
Размер страниц, используемых mmap определяется через
long sz = sysconf(_SC_PAGESIZE);
(некоторые системы позволяют вместо _SC_PAGESIZE
использовать _SC_PAGE_SIZE) или
int sz = getpagesize();
ИСТОРИЯ
Эта функция появилась в 4.2BSD.
СООТВЕТСТВИЕ СТАНДАРТАМ
SVR4, 4.4BSD, SUSv2. В SUSv2 функция getpagesize()
помечена как "legacy", а из POSIX 1003.1-2001 она была
убрана. HPUX эту функцию не поддерживает.
ЗАМЕЧАНИЯ
Поддерживается ли функция getpagesize в Linux зависит от
архитектуры. Если поддерживается, то она возвращает символ
PAGE_SIZE ядра, который зависит от архитектуры и модели
машины. Как правило, создаваемые бинарные файлы
используются для всей архитектуры, а не для конкретной
одной модели. Поэтому рекомендуется определять PAGE_SIZE
не на стадии компиляции из файла заголовка, а при
выполнении программы с помощью данной функции, по крайней
мере на тех архитектурах (таких как sun4), где зависимость
от модели существует. В этом случае функции getpagesize()
libc4, libc5 и glibc 2.0 не решат проблему, так возвращают
статически унаследованное значение, не используя системный
вызов. В glibc 2.1 это исправлено.