proc_pid_pagemap(5) File Formats Manual proc_pid_pagemap(5)

ИМЯ

/proc/pid/pagemap - mapping of virtual pages

ОПИСАНИЕ

/proc/pid/pagemap (начиная с Linux 2.6.25)
Через данный файл показываются отображения каждой виртуальной страницы процесса в физические страничный кадры и области подкачки. Каждой страницы соответствует одно 64-битное число, биты которого имеют следующее значение:
63
Если установлен, то страница находится в оперативной памяти.
62
Если установлен, то страница находится в пространстве подкачки.
61 (начиная с Linux 3.5)
Страница является отображённой файловой страницей или общей анонимной страницей.
60–58 (начиная с Linux 3.11)
Ноль
57 (начиная с Linux 5.14)
If set, the page is write-protected through userfaultfd(2).
56 (начиная с Linux 4.2)
Страница отображена монопольно.
55 (начиная с Linux 3.11)
PTE содержит бит soft-dirty (смотрите файл исходного кода ядра Documentation/admin-guide/mm/soft-dirty.rst).
54–0
Если страница находится в оперативной памяти (бит 63), то эти биты содержат номер кадра страницы, который можно использовать для индексации /proc/kpageflags и /proc/kpagecount. Если страница находится в пространстве подкачки (бит 62), то биты 4–0 содержат тип подкачки, а биты 54–5 — смещение в пространстве подкачки.
До Linux 3.11, биты 60–55 использовались как кодирование размера страницы в виде логарифма по основанию 2.
Для эффективного использования /proc/pid/pagemap обратитесь к /proc/pid/maps для определения какие области памяти действительно отображены и отбросьте не отображённые области.
Файл /proc/pid/pagemap существует только, если включён параметр настройки ядра CONFIG_PROC_PAGE_MONITOR.
Право доступа к этому файлу определяется проверкой режима доступа ptrace PTRACE_MODE_READ_FSCREDS; смотрите ptrace(2).

СМОТРИТЕ ТАКЖЕ

proc(5)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Alexey, Azamat Hackimov <azamat.hackimov@gmail.com>, kogamatranslator49 <r.podarov@yandex.ru>, Darima Kogan <silverdk99@gmail.com>, Max Is <ismax799@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.

2 мая 2024 г. Справочные страницы Linux 6.9.1