В ядре Linux, учитывая task_struct
mm
, я могу получить доступ к списку процесса vm_area_struct
с. Учитывая эти vm_area_struct
s, как я могу получить struct page
s, которые фактически соответствуют этому vma?
Я пытался искать функции в mm / memory.c и тому подобное, но я был в замешательстве.
Редактировать: идея состоит в том, чтобы найти, какие страницы в vma в данный момент находятся в памяти, а какие нет. Но я не хочу, чтобы кто-то говорил мне, как это сделать, поскольку это небольшая часть домашнего задания, которое мне нужно выяснить самостоятельно. Но я не могу понять, как найти страницы, которые соответствуют этому VMA. Если я смогу найти страницы, я полагаю, что могу проверить, есть ли у них действительный pfn или нет.