Memory page

From OpenVZ Virtuozzo Containers Wiki
Jump to: navigation, search

Memory page is a range of consecutive addresses in the virtual address space whose size is a power of two. Those virtual addresses are translated in a corresponding range of consecutive physical addresses. The memory referenced by such a range is called a page.

Size of memory page is architecture and operating system dependant. On an x86 and x86_64 hardware, memory page is equal to 4KB. On an Intel Itanium (IA64) memory page size is 16KB.

You can get the actual value on your Linux/UNIX system with the getpagesize-Syscall. Here is a C Program that prints the pagesize on your system :

#include <unistd.h>
#include <stdio.h>

int main(int argc, char* argv[])
        long sz = sysconf(_SC_PAGESIZE);
        printf("memory pagesize on this box : %i\n", sz);
        return 0;

compile with :

gcc -o getpagesize getpagesize.c

You can get the page size in GNU/Linux from a terminal or shell:

getconf PAGE_SIZE