Notes, Message passing posix section 15, Functions implemented – Comtrol eCos User Manual

Page 466: Functions omitted, Message passing [posix section 15, Thread management [posix section 16

Advertising
background image

Chapter 31. POSIX Standard Support

Notes

Currently timer_getoverrun() only reports timer notifications that are delayed in the timer subsystem. If they

are delayed in the signal subsystem, due to signal masks for example, this is not counted as an overrun.

The option CYGPKG_POSIX_TIMERS allows the timer support to be enabled or disabled, and causes

_POSIX_TIMERS to be defined appropriately. This will cause other parts of the POSIX system to have limited
functionality.

Message Passing [POSIX Section 15]

Functions Implemented

mqd_t mq_open( const char

name, int

oflag, ... );

int mq_close( mqd_t

mqdes );

int mq_unlink( const char

name );

int mq_send( mqd_t mqdes, const char

msg_ptr,

size_t msg_len, unsigned int msg_prio );

ssize_t mq_receive( mqd_t mqdes, char

msg_ptr,

size_t msg_len, unsigned int

msg_prio );

int mq_setattr( mqd_t mqdes, const struct mq_attr

mqstat,

struct mq_attr

omqstat );

int mq_getattr( mqd_t mqdes, struct mq_attr

mqstat );

int mq_notify( mqd_t mqdes, const struct sigevent

notification );

From POSIX 1003.1d draft:

int mq_send( mqd_t mqdes, const char

msg_ptr,

size_t msg_len, unsigned int msg_prio,

const struct timespec *abs_timeout );

ssize_t mq_receive( mqd_t mqdes, char

msg_ptr,

size_t msg_len, unsigned int

msg_prio,

const struct timespec *abs_timeout );

Functions Omitted

<none>

Notes

The presence of message queues is controlled by the CYGPKG_POSIX_MQUEUES option. Setting this will

cause [_POSIX_MESSAGE_PASSING] to be defined and the message queue API to be made available.

Message queues are not currently filesystem objects. They live in their own name and descriptor spaces.

362

Advertising