#mmap
#mmap
Вопрос:
Допустим, у меня есть файл длиной ровно 4096 байт.
(a) я открываю файл с помощью open (2) и читаю все его содержимое. Закройте файл.
против
(b) я открываю файл, mmap его fd с помощью PROT_READ, считываю все содержимое буфера, закрываю fd, но НЕ освобождаю буфер с помощью munmap.
Я предполагаю, что в обоих случаях отдельная страница файла будет помещена в кэш страниц (поэтому для будущей попытки чтения этого файла не требуется дисковый ввод-вывод)
Мой вопрос заключается в следующем: когда системе заканчивается физическая память и ей необходимо удалить некоторые страницы из кэша страниц, предпочтет ли она удалить «обычные страницы» (a) вместо «mmaped pages» (b)?