Що робить mmap

Функція mmap відображає length байтів, починаючи зі зміщення offset файлу (або іншого об'єкта), визначеного файловим описувачем fd, на згадку, починаючи з адреси start. Останній параметр (адреса) необов'язковий, і зазвичай дорівнює 0.

Навіщо потрібен MMAP?

Виклик mmap() дозволяє відобразити лише одну сторінку файлу. Виклик shmat() дозволяє відображати декілька сегментів, якщо файл, що відображається, займає більше одного сегмента. Застосування явно відображених файлів має один недолік, який виявляється при виконанні операцій запису.

Як відображається файл у пам'ять?

Файл, що відображається в пам'ять, містить вміст файлу у віртуальній пам'яті. Відображення файлу в області пам'яті дозволяє додатку, що містить кілька процесів, взаємодіяти з файлом шляхом читання цієї пам'яті та запису до неї.