httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ralf S. Engelschall" <>
Subject Re: Shared memory in APR. (fwd)
Date Mon, 12 Jul 1999 15:11:55 GMT

In article <> you wrote:

> [...] 
>> OTOH can you describe it in more detail why APR needs a shared memory model
>> which works over fork/exec, Ryan? I've to admit that currently I'm wondering
>> why this is really necessary...
> This is necessary, because ANY non-unix-like platform requires it.
> Windows doesn't have fork, it only has spawn.  The AS/400 doesn't have
> fork.  OS/2 has fork, but it is really expensive, and it MIGHT make sense
> to have OS/2 use spawn instead of fork.  APR is also supposed to be a
> general Portable runtime, not an Apache-specific portable runtime.  It is
> possible other programs might want a method for doing this.  I know, the
> second argument isn't great, but it is ancillary.  The REAL reason we need
> to be able to do this, is the platforms we are going to support which
> don't have the option of using fork, or those where using fork is the
> wrong decision.

Ok, but I've to admit that I still don't understand the issue completely.
When non-Unix platforms don't support fork() and instead some sort of thread
spawning, why is this bad for shared memory? Isn't APR more lucky then? I mean
the "shared memory" on these platforms we get for free, right? And on Unix we
use MM for "real" shared memory. 

I think the problem in our communication is that you want a shared mem
mechanism for APR which can be used between unrelated processed while I always
thought that we only deal with related processes, right? That's the fork+exec
goal you talked about, right? And is this _really_ necessary for APR? Hmmm..
then ok, it gets even hard under Unix, of course.

                                       Ralf S. Engelschall

View raw message