removing small ipc message size limitation?

Peeter Joot (peeter@joot.com)
Fri, 13 Mar 1998 22:51:50 -0500 (EST)


Hello,

Within the DB2 product we use a great deal of message passing. We are
currently writing some code that will allow us to use pass large messages
(possibly ~1Mb+) between processes, by breaking up the large messages
into smaller pieces and putting them back together at the other end. Up to
now a general limit on the order of 64K has been sufficient.

After checking the maximum message size on all the other operating systems
we run on, the linux maximum was also checked out of curiosity. It was
rather suprising to see that MSGMAX was only 4056 bytes on linux.

I presume that the reason for keeping it small was so that a message easily
fits within one page, and that there hasn't been any requirement for anybody
to increase this limit.

I know there are work arounds available -- shared memory (or even named pipes)
could also be used. The main reason that we haven't gone in this direction
in DB2 is that not all operating system versions support this uniformly well.
I suppose that I am really talking about AIX (<4.2.1) here, where only 8
shared memory attachments are possible per process -- each one takes up
256Mb of the memory space regardless of it's size.

It would be nice if MAXMSG was a dynamic and configurable system parameter.
It would mean a linux DB2 port would be possible with that much less hack
content.

Has anybody considered doing this sort of work (I don't mean the DB2 linux
port;)

Peeter

--
Peeter Joot
http://www.accessv.com/~peeter  peeter@accessv.com, peeter_joot@ca.ibm.com

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu