![]() |
![]() |
![]() |
![]() |
![]() |
This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs. |
Handle an IO_MMAP message
#include <sys/iofunc.h>
int iofunc_mmap ( resmgr_context_t * hdr,
io_mmap_t * msg,
iofunc_ocb_t * ocb,
iofunc_attr_t * attr );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The iofunc_mmap() helper function provides functionality for the _IO_MMAP message. The _IO_MMAP message is an outcall from the Memory Manager (a part of the QNX Neutrino microkernel's procnto).
Note that if the Process Manager is to be able to execute from this resource, then you must use the iofunc_mmap() function.
The io_mmap_t structure holds the _IO_MMAP message received by the resource manager:
struct _io_mmap {
uint16_t type;
uint16_t combine_len;
uint32_t prot;
uint64_t offset;
struct _msg_info info;
uint32_t zero[6];
};
struct _io_mmap_reply {
uint32_t zero;
uint32_t flags;
uint64_t offset;
int32_t coid;
int32_t fd;
};
typedef union {
struct _io_mmap i;
struct _io_mmap_reply o;
} io_mmap_t;
The I/O message structures are unions of an input message (coming to the resource manager) and an output or reply message (going back to the client).
The i member is a structure of type _io_mmap that contains the following members:
The o member of the io_mmap_t structure is a structure of type _io_mmap_reply that contains the following members:
| Safety: | |
|---|---|
| Cancellation point | No |
| Interrupt handler | No |
| Signal handler | Yes |
| Thread | Yes |
iofunc_attr_t, iofunc_mmap_default(), iofunc_ocb_t, _msg_info, resmgr_context_t
Writing a Resource Manager chapter of the Programmer's Guide.
![]() |
![]() |
![]() |
![]() |