Системный вызов mmap()

Системный вызов mmap()

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

void *mmap2(void *start,

 size_t length, int prot, int flags, int fd, off_t pgoff);

Этот системный вызов имеет имя mmap2(), т.е. второй вариант функции mmap(). Первоначальный вариант mmap() требовал в качестве последнего параметра смещение в байтах, а текущий вариант, mmap2(), — смещение в единицах размера страницы памяти. Это позволяет отображать файлы большего размера с большим значением смещения. Первоначальный вариант функции mmap(), который соответствует стандарту POSIX, доступен через библиотеку функций языка С, как функция mmap(), но в ядре уже не реализован. Новый вариант библиотечной функции называется mmap2(). Обе эти библиотечные функции используют системный вызов mmap2(). При этом библиотечная функция mmap() переводит значение смещения из байтов в количество страниц памяти.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

Системный таймер

Из книги автора

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


Функции mmap() и do_mmap() : создание интервала адресов

Из книги автора

Функции mmap() и do_mmap(): создание интервала адресов Функция do_mmap() используется ядром для создания нового линейного интервала адресов. Говорить, что эта функция создает новую область VMA, — технически не корректно, поскольку если создаваемый интервал адресов является смежным


Системный вызов munmap()

Из книги автора

Системный вызов munmap() Системный вызов munmap() экспортируется в адресное пространство пользователя, чтобы иметь возможность удалять интервалы адресов из адресного пространства. Эта функция является комплиментарной к системному вызову mmap() и имеет следующий прототип.int


Системный монитор

Из книги автора

Системный монитор После ввода в командной строке Выполнить команды perfmon.msc консоль управления Microsoft обращается к содержимому ветвей реестра HKEY_CURRENT_USERSoftwareMicrosoftSystemMonitor и HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib, параметры которых будут рассмотрены чуть позже. После ввода


Системный подход к УТП

Из книги автора

Системный подход к УТП Ясное изложение информации и четкость мысли при составлении уникального торгового предложения – еще не все Они могут и не дать ожидаемый эффект УТП нужно сформировать таким образом, чтобы воздействовать не только на разумное восприятие клиентом


12.2. Функции mmap, munmap и msync

Из книги автора

12.2. Функции mmap, munmap и msync Функция mmap отображает в адресное пространство процесса файл или объект разделяемой памяти Posix. Мы используем эту функцию в следующих ситуациях:1. С обычными файлами для обеспечения ввода-вывода через отображение в память (раздел 12.3).2. Со


4.5.2. Системный вызов clone()

Из книги автора

4.5.2. Системный вызов clone() Все потоки, создаваемые в одной программе, являются отдельными процессами, которые делят общее адресное пространство и другие ресурсы. Но дочерний процесс, создаваемый с помощью функции fork(), получает в свое распоряжение копии ресурсов. Как же


5.3.5. Применения функции mmap()

Из книги автора

5.3.5. Применения функции mmap() Функция mmap() может использоваться не только для организации взаимодействия процессов. Часто она выступает в качестве замены функциям read() и write(). Например, вместо того чтобы непосредственно загружать содержимое файла в память, программа может


20.2. Системный монитор

Из книги автора

20.2. Системный монитор Аналогично, для команды top в GNOME также есть графический аналог. Правда, возможности системного монитора (Система | Администрирование) значительно шире, чем у консольной команды top.На вкладке Система (рис. 20.4) выводится общая информация о системе:


Системный блок

Из книги автора

Системный блок Не секрет, что среди покупателей новых компьютеров найдется не так уж много людей, которые всерьез задумываются – а для чего, собственно, они покупают его? А зря! Только правильно очертив круг своих реальных потребностей, можно с достаточной точностью


Системный блок

Из книги автора

Системный блок Как говаривал Антон Павлович Чехов: «В человеке должно быть все прекрасно: и лицо, и одежда, и душа, и мысли». Перефразируя слова классика, осмелимся утверждать, что в компьютере все должно быть работоспособным: и монитор, и корпус, и материнская плата, и


Системный блок

Из книги автора

Системный блок Основные детали компьютера, отвечающие за его работу, находятся в системном блоке (рис. 1.8). Внешне он обычно выглядит как прямоугольный ящик, на переднюю панель которого в стандартном случае выведены кнопки включения питания и Reset и два разноцветных


Системный блок

Из книги автора

Системный блок Системный блок – это и есть блок обработки информации. Нам он интересен тем, что именно на нем находится кнопка, или клавиша, включения компьютера. Необходимо отметить, что на нем же находятся и другие довольно важные устройства, такие как:• дисковод для


Системный блок

Из книги автора

Системный блок Это такая обычно металлическая коробка, большая или не очень. Возможно, вы удивитесь, но это самая важная составляющая компьютера (в принципе, это и есть компьютер). Снаружи этой коробки (на лицевой ее части) есть очень важная штучка – кнопка включения


Системный уровень

Из книги автора

Системный уровень Следующий уровень, системный, включает совокупность взаимодействующих друг с другом систем. Поддержку доверия на этом уровне реализовать сложнее, потому что может быть обеспечена безопасность систем в комплексе, а может быть защищена отдельно каждая