Re: How to implement synchronous rpc between 2 processes on the same machine.
- From: "Chris M. Thomasson" <no@xxxxxxxxxxxx>
- Date: Sun, 21 Sep 2008 20:20:38 -0700
"lali.cpp" <lali.cpp@xxxxxxxxx> wrote in message news:478d5717-1233-42eb-b6a9-a5be184d414a@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hi
I hope i have not posted at the wrong place. Kindly read the full post
before lamenting as off topic:
Basically i need functionality similar to that provided by Solaris
DOORS( it is a properietry and quite efficient IPC by SUN)
To explain it:
I have process p1 and process p2 on the same computer and i can call a
function foo( ) in process p2 from p1 i.e rpc( on the same host) using
the function door_call( which takes arguments and writes and
This function door_call is synchronous. Moreover the DOOR library
makes sure that the function f( ) is executed in a concurrent manner
i.e it internally maintains a pool of threads i.e the server( process
p2 is a concurrent server )
So thats all about my requirement. I cannot use DOORS because i am now
porting the project to Linux.
So here is my design the i want you to kindly kindly review and give
me lots of details, caveats, shortcomings, suggestions etc as i am not
very well good in multithreaded programming and would like to have
your guidance rather that implement something that takes a lot of
locks and generates a lot of threads but is essentially serialized
code and add to it the problem of deadlocks and races. I need
efficiency and scalability in design and so require you geeks out
there to just review this design and provide your much needed inputs.
[...]
Read here for some tips on how to implement dynamically created shared memory:
http://groups.google.com/group/comp.programming.threads/browse_frm/thread/b5775d829f3f1259
One caveat... How are you going to handle a scenario in which a process gets terminated while it holds a mutex? How much you do know about robust mutexs? The link above deals with some of that. I have created impls of something that is basically analogous to Solaris Doors. Perhaps I can help you. Its not easy in any sense of the term indeed. However, its doable. You need to think about how your going to handle the "robustness" factor first. Multi-process shared memory impls need to think about misbehaving process. Before I go on and on, do you have any thoughts on this aspect?
.
- Follow-Ups:
- References:
- Prev by Date: Re: Terminating a threaded program using signals
- Next by Date: Re: How to implement synchronous rpc between 2 processes on the same machine.
- Previous by thread: How to implement synchronous rpc between 2 processes on the same machine.
- Next by thread: Re: How to implement synchronous rpc between 2 processes on the same machine.
- Index(es):
Relevant Pages
|