Как изменить размер памяти PAGE_SIZE?

Как изменить размер памяти PAGE_SIZE?

Я хотел бы узнать следующее:

Память PAGE_SIZE по умолчанию в Linux составляет 4096 байт. Как изменить этот размер в работающей системе?

Как работают огромные страницы в Linux и как задать размер огромной страницы?

Упоминаетсяздесьчто

Ядро Linux может выделить часть физической памяти для адресации с использованием страницы большего размера.

Как настроить часть физической памяти с большим размером страницы, а для остальной части оставить размер страницы по умолчанию (4096 байт)

Какой максимальный размер может иметь огромная страница?

решение1

Вот некоторые материалы для чтения: http://lwn.net/Articles/374424/

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

Если вам интересно повозиться с подкачкой страниц, посмотрите xv6 (http://pdos.csail.mit.edu/6.828/2011/xv6.html) и поиграйтесь с этим в экземпляре qemu.. вы можете попробовать все, не ломая всю систему. У ребят из xv6 также есть хорошая документация о том, как все работает.

Связанный контент