table of contents
other versions
- buster 1:0.7-1
- buster-backports 1:4.10.0-1~bpo10+1
- testing 1:4.10.0-1
- unstable 1:4.10.0-1
GETPAGESIZE(2) | Podręcznik programisty Linuksa | GETPAGESIZE(2) |
NAZWA¶
getpagesize - pobranie rozmiaru strony pamięciSKŁADNIA¶
#include <unistd.h>int getpagesize(void);
OPIS¶
Uwaga! To tłumaczenie może być nieaktualne!Funkcja getpagesize() zwraca ilość bajtów w stronie, przy czym "strona" jest to pojęcie takie, jak używane w opisie mmap(2), gdzie jednostką mapowanie plików jest strona pamięci.
Rozmiar tego rodzaju stron, które są używane przez mmap można znaleźć za pomocą
#include <unistd.h> long sz = sysconf(_SC_PAGESIZE);
(gdzie niektóre systemy dopuszczają również synonim _SC_PAGE_SIZE dla _SC_PAGESIZE), lub
#include <unistd.h> int sz = getpagesize();
HISTORIA¶
Ta funkcja pierwotnie pojawiła się w 4.2BSD.ZGODNE Z¶
SVr4, 4.4BSD, SUSv2. W SUSv2 funkcja getpagesize() jest oznaczona jako "pozostałość" ("legacy"), a w POSIX 1003.1-2001 została pominięta. HPUX nie zawiera tej funkcji.UWAGI¶
Obecność getpagesize() jako funkcji systemowej Linuksa zależy od architektury. Jeśli istnieje, zwraca symbol jądra PAGE_SIZE, który zależy od architektury i modelu maszyny. W ogólności, aby mieć jedną dystrybucję binarną dla każdej architektury, używa się binariów, które są zależne od architektury, ale nie od modelu maszyny. Oznacza to, że program użytkownika nie powinien określać PAGE_SIZE podczas kompilacji na podstawie plików nagłówkowych, a używać bieżącej funkcji systemowej, co najmniej dla tych architektur (np. sun4), dla których istnieje zależność PAGE_SIZE od modelu maszyny. W tym miejscu libc4, libc5 i glibc 2.0 zawodzą, gdyż ich getpagesize() zwraca wartość wyliczoną statycznie, a nie korzysta funkcji systemowej. Wszystko jest OK w glibc 2.1.ZOBACZ TAKŻE¶
mmap(2), sysconf(3)INFORMACJE O TŁUMACZENIU¶
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:- man --locale=C 2 getpagesize
Prosimy o pomoc w aktualizacji stron man - więcej informacji można znaleźć pod adresem http://sourceforge.net/projects/manpages-pl/.
2001-12-21 | Linux 2.5.0 |