Структура, характеризующая сообщения менеджера ресурсов типа _IO_DEVCTL
#include <sys/iofunc.h>struct _io_devctl {uint16_t type;uint16_t combine_len;int32_t dcmd;int32_t nbytes;int32_t zero;/* char data[nbytes]; */};struct _io_devctl_reply {uint32_t zero;int32_t ret_val;int32_t nbytes;int32_t zero2;/* char data[nbytes]; */} ;typedef union {struct _io_devctl i;struct _io_devctl_reply o;} io_devctl_t;
Данная структура ассоциирована с сообщениями менеджера ресурсов типа _IO_DEVCTL. Поле i определяет входящие данные (поступающие в менеджер ресурсов), поле o исходящие (отправляемые обратно клиенту).
Элемент i - структура _io_devctl, содержит следующие элементы:
_IO_DEVCTL    _IO_COMBINE_FLAG.    Закомментированное объявление данных data указывает, что nbytes байт данных следуют непосредственно за структурой _io_devctl.
Макрос _DEVCTL_DATA() получает указатель на данные, следующие за сообщением. Вызывается следующим образом:
data = _DEVCTL_DATA( msg->i );
Элемент o сообщения io_devctl_t представляет собой структуру типа _io_devctl_reply, содержит следующие элементы:
Закомментированное объявление для data указывает, что nbytes байт данных следуют непосредственно за структурой _io_devctl_reply.
ЗОСРВ «Нейтрино»
resmgr_io_funcs_t, iofunc_devctl_default(), iofunc_devctl()
 
Предыдущий раздел:  Описание API системной библиотеки