.\" -*- coding: UTF-8 -*- .\" Copyright (C) 2001 Andries Brouwer .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH getpagesize 2 "30 марта 2023 г." "Linux man\-pages 6.05.01" .SH ИМЯ getpagesize \- определяет размер страницы памяти .SH LIBRARY Standard C library (\fIlibc\fP, \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP .PP \fBint getpagesize(void);\fP .fi .PP .RS -4 Требования макроса тестирования свойств для glibc (см. \fBfeature_test_macros\fP(7)): .RE .PP \fBgetpagesize\fP(): .nf .\" || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED Since glibc 2.20: _DEFAULT_SOURCE || ! (_POSIX_C_SOURCE >= 200112L) glibc 2.12 to glibc 2.19: _BSD_SOURCE || ! (_POSIX_C_SOURCE >= 200112L) Before glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE >= 500 .fi .SH ОПИСАНИЕ Вызов \fBgetpagesize\fP() возвращает количество байтов в странице памяти, где «страница» представляет собой блок фиксированной длины, единица измерения при выделения памяти и файлового отображения, выполняемого с помощью \fBmmap\fP(2). .SH СТАНДАРТЫ None. .SH ИСТОРИЯ This call first appeared in 4.2BSD. SVr4, 4.4BSD, SUSv2. In SUSv2 the \fBgetpagesize\fP() call is labeled LEGACY, and in POSIX.1\-2001 it has been dropped; HP\-UX does not have this call. .SH ЗАМЕЧАНИЯ В переносимых программах вместо \fBgetpagesize\fP() следует использовать \fIsysconf(_SC_PAGESIZE)\fP: .PP .in +4n .EX #include long sz = sysconf(_SC_PAGESIZE); .EE .in .PP (большинство систем позволяют использовать \fB_SC_PAGE_SIZE\fP вместо \fB_SC_PAGESIZE\fP.) .PP В Linux системный вызов \fBgetpagesize\fP() есть не на всех архитектурах. Если он есть, то он возвращает символ ядра \fBPAGE_SIZE\fP, чьё значение зависит от архитектуры и модели компьютера. Как правило, создаваемые двоичные файлы используются для всей архитектуры, а не для конкретной одной модели. Поэтому рекомендуется определять \fBPAGE_SIZE\fP не на стадии компиляции из файла заголовка, а при выполнении программы с помощью данной функции, по крайней мере на тех архитектурах (таких как sun), где зависимость от модели существует. В этом случае в библиотечные вызовы glibc 2.0 завершатся неудачно, так как её \fBgetpagesize\fP() возвращает статически определённое значение и не использует системный вызов. В glibc 2.1 это исправлено. .SH "СМ. ТАКЖЕ" \fBmmap\fP(2), \fBsysconf\fP(3) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства был сделан Azamat Hackimov , Dmitry Bolkhovskikh , Vladislav , Yuri Kozlov и Иван Павлов . .PP Этот перевод является бесплатной документацией; прочитайте .UR https://www.gnu.org/licenses/gpl-3.0.html Стандартную общественную лицензию GNU версии 3 .UE или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. .PP Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на .MT man-pages-ru-talks@lists.sourceforge.net .ME .