[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 Отображение страниц памяти

Системный вызов mmap(2) можно использовать для установления
отображения между адресным пространством процесса и объектом
виртуальной памяти (в данном случае - файлом или устройством). Это
позволяет получать доступ к файлу и устройству как к  массиву байт в
пределах адресного пространства процесса. mmap(2) возвращает начальный
адрес отображенной области памяти в пределах адресного пространства.
Далее этим адресом можно манипулировать, как любым другим адресом.
mmap(2) позволяет процессу отобразить в память весь файл или его
часть.
Оставшаяся часть раздела обсуждает отображение обычных файлов. mmap(2)
позволяет отображать и устройства, при условии, что драйвер устройства
поддерживает отображение памяти. Например:
.    Отображение /dev/zero выделяет вызывающей программе заполненный
нулями блок виртуальной памяти указанного размера. Это может быть
альтернативой увеличению границы выделяемой памяти.
.    Отображение фрейм-буфера графического устройства позволяет
программе трактовать экран устройства как массив памяти.
Аргументы mmap(2) обсуждаются на странице 4-62.
                      ОТОБРАЖЕНИЕ СТРАНИЦ ПАМЯТИ
mmap(2)

ИМЯ

      mmap - отображение страниц памяти

ИСПОЛЬЗОВАНИЕ

      #include <sys/types.h>
      #include <sys/mman.h>

      caddr_t mmap( caddr_t addr,
          size_t len, int prot,
          int flags, int fd, off_t off);

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

      успех - адрес

      неуспех - -1 и errno установлена