Отображение в памяти Linux - mmap()

Системный вызов mmap() создает в виртуальном адресном пространстве вызывающего процесса новое отображение в памяти.

Отображения делятся на две категории.

Отображение в памяти одного процесса может совместно использоваться отображения­ми в других процессах. Это может произойти либо из-за того, что два процесса отображают в памяти одну и ту же область файла, либо по причине наследования дочерним процессом, созданным с помощью fork(), отображения в памяти от своего родительского процесса.

Когда два и более процесса совместно используют одни и те же страницы, каждый из них может видеть изменения, внесенные в содержимое страниц другим процессом, в зависимости от того, каким именно было создано отображение — закрытым или совместно используемым. Когда отображение является закрытым, изменения содержимого отображения невидимы другим процессам и не доводятся до базового файла. Когда отображение является совместно используемым, изменения содержимого отображения видны другим процессам, использующим совместно то же самое отображение в памяти, и доводятся до базового файла.

Отображения в памяти служат для различных целей, включая инициализацию тексто­вого сегмента процесса из соответствующего сегмента выполняемого файла, выделения новой (заполненной нулями) памяти, файлового ввода-вывода (ввода-вывода с отображе­нием в памяти), обмена данными между процессами (через общее отображение в памяти).

Вас заинтересует / Intresting for you:

Основа операционной системы Li...
Основа операционной системы Li... 3057 просмотров Андрей Волков Wed, 09 Jan 2019, 05:36:45
Процессы Linux
Процессы Linux 4587 просмотров Doctor Wed, 23 Jan 2019, 16:47:24
Linux: как инсталлировать прог...
Linux: как инсталлировать прог... 1508 просмотров Дэйзи ак-Макарова Sun, 11 Nov 2018, 11:54:59
Краткая история Linux
Краткая история Linux 2706 просмотров Андрей Волков Wed, 09 Jan 2019, 02:46:59
Печать
Войдите чтобы комментировать