iofunc_mmap_default()

Обработчик по умолчанию для сообщений _IO_MMAP

Прототип:

#include <sys/iofunc.h>
int iofunc_mmap_default( resmgr_context_t *hdr,
io_mmap_t *msg,
iofunc_ocb_t *ocb );

Аргументы:

ctp
Указатель на структуру resmgr_context_t, которую библиотека менеджера ресурсов использует для передачи контекстной информации между функциями.
msg
Указатель на структуру io_mmap_t, содержащую сообщение, полученное менеджером ресурсов.
ocb
Указатель на структуру блока управления открытым контекстом (OCB, Open Control Block) iofunc_ocb_t, созданную при открытии ресурса клиентом.

Библиотека:

libc

Описание:

Функция iofunc_mmap_default() обрабатывает сообщение _IO_MMAP. Это сообщение Менеджера Памяти (часть микроядра ЗОСРВ «Нейтрино» procnto).

Эту функцию можно поместить на место mmap в таблицу io_funcs, передаваемую в resmgr_attach() или вызвать iofunc_func_init(), чтобы инициализировать все функции значениями по умолчанию.

Обратите внимание, что если Менеджер Процессов должен иметь возможность запускать что-либо из этого ресурса, необходимо использовать функцию iofunc_mmap().

iofunc_mmap_default() вызывает iofunc_mmap() для выполнения фактической работы.

Возвращаемое значение:

≤0
Успешное завершение.
EROFS
Попытка смапировать (mmap) файл, доступный только для чтения, используя PROT_WRITE.
EACCES
У клиента нет соответствующих прав доступа.
ENOMEM
Недостаточно памяти для выделения внутренних ресурсов, необходимых для выполнения мапирования.

Классификация:

ЗОСРВ «Нейтрино»

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

io_mmap_t, iofunc_func_init(), iofunc_mmap(), iofunc_ocb_t, resmgr_attach(), resmgr_context_t, resmgr_io_funcs_t




Предыдущий раздел: Описание API системной библиотеки