Shared memory and IPC
Luke Kenneth Casson Leighton
lkcl at samba-tng.org
Mon Sep 10 04:14:02 GMT 2001
On Fri, Sep 07, 2001 at 03:18:55PM -0400, Green, Paul wrote:
hi paul, thanks for responding.
> My advice is to avoid MAP_FIXED at all costs.
absolutely love to. however, it's a speed improvement of
a potential two or maybe even three orders of magnitude,
and so cannot be ignored.
and even then, i don't think it can be ignored.
this is for an implementation of DCOM (which, if you remove
the D it becomes COM, too :)
it is necessary to describe data structures and functions
using dce/rpc IDL.
it is then necessary to pass these data structures, via
the function calls, between processes, whether local
or remote.
the remote bit we have covered. ncacn_ip_tcp and
ncadg_ip_udp (ConnectioN, DataGram, tcp/ip, udp).
there, it doesn't matter if the passing of data structures
is slow, because the network becomes the bottleneck,
with order 1ms or greater response time.
the local bit, suddenly things like packing a 1mb data
structure into a buffer, only to pass it over with a
memcpy or five over to another program on the same host,
become significant.
so basically, although i don't _think_ it's essential
for the first implementation (wez will be able to
correct me here), it's not something that can be
left as-is.
the implementation has, if you to are pass over data
structures between programs, presumably in exactly
the same way that those DB apps are doing, you must
preserve pointers / memory segment offsets.
and that means using MMAP_FIXED.
if anyone has any better ideas, love to hear them.
all best,
luke
More information about the samba-technical
mailing list