Linux сразу же выделяет память для процесса после mmap ()? - PullRequest
0 голосов
/ 15 января 2019

Я читаю исходный код mmap() и обнаружил, что ядро ​​Linux превратит файлы в структуру vma.vma представляет только области памяти.Итак, будет ли ОС немедленно выделять физическую память для процесса после mmap()?

1 Ответ

0 голосов
/ 15 января 2019

Нет, Linux может отложить выделение физической памяти, запрошенное mmap, до тех пор, пока эта память не будет доступна.

Когда приложение обращается к неотображенной памяти, срабатывает ошибка страницы исключение; при обработке этого исключения Linux может отображать доступ к памяти, что позволяет приложению продолжать работу.

...