04-27-2006
Check
this out. I do not know how valid the information is, but it seems to be quite good. From the info, it looks like you can have a default of 16384 bytes in a message queue at one time, and a default of 50 message queues on the system at one time.
The max bytes present on a message queue can be 65535 and the increase in max number of message queues is memory dependent.
Oh and one more thing, please remove the email address from your post. Against forum rules.
Last edited by blowtorch; 04-27-2006 at 05:50 AM..
10 More Discussions You Might Find Interesting
1. Programming
How can I increase the POSIX Msg Q parameter SC_MQ_PRIO_MAX? The maximum is defined as 32. Can I increase the number? If so, how?
Deepa (0 Replies)
Discussion started by: Deepa
0 Replies
2. UNIX for Dummies Questions & Answers
What are the differences/similarities between posix and system V ipc and their mechanisms?
also, why is system v only limited to inter-process communication on a single node?
thanks (0 Replies)
Discussion started by: jsimpson
0 Replies
3. Linux
Hi all,
Please tell me how to change POSIX message queue maximum size? "ulimit" is not a solution because it controls shell resources. But i need to control queue size before login in and starting the shell. It is needed to limit queue size for applications started before login in.
Sorry for my... (7 Replies)
Discussion started by: Vourhey
7 Replies
4. Programming
Hii can anyone pls tell how to limit the max no of message in a posix message queue. I have made changes in proc/sys/fs/mqueue/msg_max
But still whenever i try to read the value of max. message in the queue using attr.mq_curmsgs (where struct mq_attr attr) its giving the default value as 10.... (0 Replies)
Discussion started by: mohit3884
0 Replies
5. Programming
Hi,
I´m having a lot of problems when working with message queues, both on HP-UX Systems and Sun Solaris. When we fill a queue with a messages, the system hangs and locks everything that relies on the use of IPC resources. Anyone knows how to eliminate this problem?
Thanks,
Haroldo Teixeira (2 Replies)
Discussion started by: haroldo
2 Replies
6. UNIX for Dummies Questions & Answers
Hi everybody,
this is the situation. there is a programm XYZ which opens a message queue with the key 47110815 and waits for a SIGUSR1. After receiving this signal it sends a message with type 100 and a number (as ASCII) in the message-body.
I have to write a prog which frist sends the... (1 Reply)
Discussion started by: daredevil82m
1 Replies
7. Programming
I want to have a message send & receive through 2 uni-direction FIFO
Flow of data
FIFO1
stdin--->parent(client) writefd--->FIFO1-->child(server) readfd
FIFO2
child(server) writefd2---->FIFO2--->parent(client) readfd2--->stdout
I need to have boundary structed message... (3 Replies)
Discussion started by: ouou
3 Replies
8. Programming
in a single main() function,so need signal handling. Use Posix Message Queue IPC mechanism , can ignore the priority and other linked list message,to implement the scenario:
client:Knock Knock
server:who's there
client: Eric
Server:Eric,Welcome.
client:exit
all process terminated
... (1 Reply)
Discussion started by: ouou
1 Replies
9. Programming
Hi,
I wanted to know whether the POSIX message queues are statically allocated memory by the kernel based on the parameters specified in the open or as and when we send messages, memory are allocated?
Does the kernel reserve the specified memory for the message queue irrespective of whether... (1 Reply)
Discussion started by: sumtata
1 Replies
10. Programming
hello, I try to test the POSIX mq_open function on book unp like below:
#include "unpipc.h"
# include <mqueue.h>
int main(int argc, char **argv)
{
int c, flags;
mqd_t mqd;
flags = O_RDWR | O_CREAT;
while ((c = getopt(argc, argv, "e")) != -1) {
... (3 Replies)
Discussion started by: anpufeng
3 Replies
LEARN ABOUT HPUX
mq_receive
mq_receive(2) System Calls Manual mq_receive(2)
NAME
mq_receive - receive a message from a message queue
SYNOPSIS
DESCRIPTION
The system call receives the oldest of the highest priority message from the message queue specified by mqdes. The selected message is
removed from the queue and copied to the buffer pointed to by the msg_ptr argument. The argument, msg_len, specifies the size of the buffer
in bytes. The value of msg_len should be greater than or equal to the mq_msgsize attribute of the message queue, or will fail.
If the argument msg_prio is not NULL, the priority of the message removed from the queue is stored in the location pointed to by msg_prio.
If the specified message queue is empty and the flag is not set in the message queue blocking status associated with mqdes, will block in
priority order, until it can receive a message from the queue, or until is interrupted by a signal. If the specified message queue is empty
and the flag is set in the message queue blocking status associated with mqdes, will not wait for a message to arrive on the queue and
will return with an error.
To use this function, link in the realtime library by specifying on the compiler or linker command line.
RETURN VALUE
returns the following values:
n Successful completion. n is the size of the selected message in bytes and the message is removed from the queue.
Failure.
is set to indicate the error and no message is removed from the queue.
ERRORS
If fails, is set to one of the following values:
[EAGAIN] The flag is set in the message queue blocking status associated with mqdes, and the message queue is empty.
[EBADF] mqdes is not a valid message queue descriptor open for reading.
[EINTR] A signal interrupted the call to
[EINVAL] msg_ptr points to an invalid address.
[EMSGSIZE] The specified message buffer size, msg_len, is less than the message size attribute of the message queue.
[ENOSYS] is not supported by the implementation.
SEE ALSO
mq_send(2).
STANDARDS CONFORMANCE
mq_receive(2)