getpagesize

Autres langues

Langue: ru

Version: 2001-12-21 (openSuse - 09/10/07)

Section: 2 (Appels système)

éíñ

getpagesize - ÐÏÌÕÞÉÔØ ÒÁÚÍÅÒ ÓÔÒÁÎÉÃÙ ÐÁÍÑÔÉ

ïâúïò

#include <unistd.h>

int getpagesize(void);

ïðéóáîéå

æÕÎËÃÉÑ getpagesize() ×ÏÚ×ÒÁÝÁÅÔ ËÏÌÉÞÅÓÔ×Ï ÂÁÊÔ ÎÁ ÓÔÒÁÎÉÃÕ, ÇÄÅ "ÓÔÒÁÎÉÃÁ" ÜÔÏ ÓÕÝÎÏÓÔØ, ÉÓÐÏÌØÚÕÅÍÁÑ ÔÁËÉÍ ÏÂÒÁÚÏÍ ËÁË ÏÐÉÓÁÎÏ × ×ÙÚÏ×Å mmap(2), ÏÔÏÂÒÁÖÁÀÝÅÍ ÆÁÊÌÙ × ÐÁÍÑÔØ ÐÏ-ÓÔÒÁÎÉÞÎÏ.

òÁÚÍÅÒ ÓÔÒÁÎÉÃ, ËÏÔÏÒÙÅ ÉÓÐÏÌØÚÕÅÔ mmap, ÍÏÖÅÔ ÂÙÔØ ÎÁÊÄÅÎ ÉÓÐÏÌØÚÕÑ


#include <unistd.h>

long sz = sysconf(_SC_PAGESIZE);

(ÎÅËÏÔÏÒÙÅ ÓÉÓÔÅÍÙ ÔÁËÖÅ ÐÏÚ×ÏÌÑÀÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÓÉÎÏÎÉÍ _SC_PAGE_SIZE ×ÍÅÓÔÏ _SC_PAGESIZE), ÉÌÉ


#include <unistd.h>

int sz = getpagesize();

éóôïòéñ

äÁÎÎÙÊ ×ÙÚÏ× ×ÐÅÒ×ÙÅ ÐÏÑ×ÉÌÓÑ × 4.2BSD.

óïïô÷åôóô÷éå óôáîäáòôáí

SVr4, 4.4BSD, SUSv2. ÷ SUSv2 ×ÙÚÏ× getpagesize() ÐÏÍÅÞÁÅÔÓÑ ËÁË "ÎÁÓÌÅÄÉÅ", É × POSIX 1003.1-2001 ÏÎ ÂÙÌ ÕÄÁÌ£Î. HPUX ÎÅ ÉÍÅÅÔ ÜÔÏÇÏ ×ÙÚÏ×Á.

úáíåþáîéñ

îÁÌÉÞÉÅ getpagesize() ËÁË ÓÉÓÔÅÍÎÏÇÏ ×ÙÚÏ×Á Linux ÚÁ×ÉÓÉÔ ÏÔ ÁÒÈÉÔÅËÔÕÒÙ. åÓÌÉ ×ÙÚÏ× ÓÕÝÅÓÔ×ÕÅÔ, ÏÎ ×ÏÚ×ÒÁÝÁÅÔ ÐÅÒÅÍÅÎÎÕÀ ÑÄÒÁ PAGE_SIZE, ËÏÔÏÒÁÑ ÚÁ×ÉÓÉÔ ÏÔ ÁÒÈÉÔÅËÔÕÒÙ É ÍÏÄÅÌÉ ËÏÍÐØÀÔÅÒÁ. ïÂÙÞÎÏ, ÓÉÓÔÅÍÎÙÊ ×ÙÚÏ× ÚÁ×ÉÓÉÔ ÏÔ ÁÒÈÉÔÅËÔÕÒÙ, Á ÎÅ ÏÔ ÍÏÄÅÌÉ ËÏÍÐØÀÔÅÒÁ. üÔÏ ÏÚÎÁÞÁÅÔ, ÞÔÏ ÐÏÌØÚÏ×ÁÔÅÌØÓËÁÑ ÐÒÏÇÒÁÍÍÁ ÎÅ ÄÏÌÖÎÁ ÂÒÁÔØ ÚÎÁÞÅÎÉÅ PAGE_SIZE ÉÚ ÚÁÇÏÌÏ×ÏÞÎÏÇÏ ÆÁÊÌÁ × ÍÏÍÅÎÔ ËÏÍÐÉÌÑÃÉÉ, Á ÄÏÌÖÎÁ ÉÓÐÏÌØÚÏ×ÁÔØ ÒÅÁÌØÎÙÊ ÓÉÓÔÅÍÎÙÊ ×ÙÚÏ×, ÐÏ ËÒÁÊÎÅÊ ÍÅÒÅ ÄÌÑ ÔÅÈ ÁÒÈÉÔÅËÔÕÒ (ÔÁËÉÈ ËÁË sun4), ÇÄÅ ×ÙÛÅÏÐÉÓÁÎÎÁÑ ÚÁ×ÉÓÉÍÏÓÔØ ÓÕÝÅÓÔ×ÕÅÔ. ÷ ÄÁÎÎÏÍ ÓÌÕÞÁÅ libc4, libc5, glibc 2.0 ÒÁÂÏÔÁÀÔ ÎÅÐÒÁ×ÉÌØÎÏ, ÐÏÔÏÍÕ ÞÔÏ ÆÕÎËÃÉÑ getpagesize() ÒÅÁÌÉÚÏ×ÁÎÎÁÑ × ÎÉÈ, ×ÏÚ×ÒÁÝÁÅÔ ÓÔÁÔÉÞÅÓËÉ ÎÁÚÎÁÞÅÎÎÏÅ ÚÎÁÞÅÎÉÅ É ÎÅ ÉÓÐÏÌØÚÕÅÔ ÓÉÓÔÅÍÎÙÊ ×ÙÚÏ×. ÷ glibc 2.1 ×Ó£ ÒÁÂÏÔÁÅÔ ÐÒÁ×ÉÌØÎÏ.

óíïôòé ôáëöå

mmap(2), sysconf(3)

ðåòå÷ïä

ðÅÒÅ×£Ì Ó ÁÎÇÌÉÊÓËÏÇÏ ÷ÉËÔÏÒ ÷ÉÓÌÏÂÏËÏ× <corochoone@perm.ru> 2005