Linux Programming Model
From: Gmu (gmutech_at_gmail.com)
Date: Wed, 28 Sep 2005 13:41:11 -0600
Hope you are all having a great day. I'm sorry for the long mail,
Here is a brief summary:
Please note that I'm not looking to understand the IPC mechanisms but for
your valuable insights and experiences
of the IPC mechanisms and programming models and what is general is
considered good in the Linux Developer world.
Please read on to find out really what I need to know.
I'm starting on a big new commercial Linux project.
There a variety of choices of IPC in Linux.
I'm trying to figure out what kind of IPC Model will be conducive for our
The application is expected to have about 100 processes and a few threads in
Is the efficient and simple IPC Mechanism Message queues?
How about writing a memory manager around shared memory? Can I use this for
all my IPC allocating say fragments
in sizes of say 4,8,16,64,128 bytes... as needed and using buddy algorithm
or somethign manmage fragmentation?
Named Pipes/Sockets may be more expensive but then there is the problem of
finding the message queue id to send to.
I'm leaning towards message queues with a very simple name server to lookup
registered message queue ids by name
and send to it as a simple form of IPC across processes and a synchronized
FIFO queue to pass around data inside a process. Any thing obviously wrong
or worth noting in this approach? Any popular Name Server in this area with
OK, Now the important question.. What does a popular open source Linux
project like Apache do for IPC and programming model? What is the most
popular large scale open source Linux application, If there is one
application I can
go study the source.
Any replies/pointers/links will be appreciated.