Skip to content


Определение размера страницы памяти

Страница памяти (Memory page) - это диапазон последовательно идущих адресов в пространстве виртуальной памяти. Размер страницы всегда является степенью числа 2. Эти виртуальные адреса транслируются в соответствующий диапазон физических адресов. Размер страницы памяти является архитектурно-зависимым.
В архитектурах x86 и x86_64 размер страницы памяти равен 4КБ, у Intel Itanium (IA64) - 16КБ. Определить размер страницы на кокретной машине под ОС Unix можно с помощью системного вызова getpagesize. Вот пример программы на языке C, которая возвращает размер страницы памяти в байтах:

#include <unistd.h>
#include <stdio.h>
 
int main(int argc, char* argv[])
{
        long mempagesize = sysconf(_SC_PAGESIZE);
        printf("memory pagesize on this box : %i\n", mempagesize);
        return 0;
}

Компилировать, например, так:

gcc -o getpagesize getpagesize.c

Posted in *nix.

Tagged with , .


2 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. druman says

    а как под виндой определить?

  2. Admin says

    Ну под винду тоже есть компиляторы для языка программирования C. Я думаю, что нужно просто скомпилировать приведённый код и запустить.

You must be logged in to post a comment.