---------- Forwarded message ---------- From: Jeff Trawick <traw...@gmail.com> Date: Mon, Oct 8, 2012 at 8:34 AM Subject: Re: svn commit: r1395417 - in /httpd/httpd/trunk/docs/manual: mpm.html.en mpm.xml To: d...@httpd.apache.org
On Sun, Oct 7, 2012 at 6:59 PM, <rbo...@apache.org> wrote: > Author: rbowen > Date: Sun Oct 7 22:59:14 2012 > New Revision: 1395417 > > URL: http://svn.apache.org/viewvc?rev=1395417&view=rev > Log: > Adds some clarification to the statement that the default MPM is > selected based on platform capabilities. > > Modified: > httpd/httpd/trunk/docs/manual/mpm.html.en > httpd/httpd/trunk/docs/manual/mpm.xml > > Modified: httpd/httpd/trunk/docs/manual/mpm.html.en > URL: > http://svn.apache.org/viewvc/httpd/httpd/trunk/docs/manual/mpm.html.en?rev=1395417&r1=1395416&r2=1395417&view=diff > ============================================================================== > --- httpd/httpd/trunk/docs/manual/mpm.html.en (original) > +++ httpd/httpd/trunk/docs/manual/mpm.html.en Sun Oct 7 22:59:14 2012 > @@ -99,6 +99,28 @@ choice at compile-time.</p> > <code class="module"><a href="./mod/event.html">event</a></code>, > depending on platform capabilities</td></tr> > <tr class="odd"><td>Windows</td><td><code class="module"><a > href="./mod/mpm_winnt.html">mpm_winnt</a></code></td></tr> > </table> > + > +<div class="note"><p>Here, 'Unix' is used to mean Unix-like operating > systems, such as > +Linux, BSD, Solaris, Mac OS X, etc.</p></div> > + > +<p>In the case of Unix, the decision as to which MPM is installed is > +based on two questions:</p> > +<p>1. Does the system support <a > href="http://en.wikipedia.org/wiki/Threads_(computer_science)">threads</a>?</p> > +<p>2. Does the system support <a > href="http://en.wikipedia.org/wiki/Polling_(computer_science)">polling</a>?</p> > + > +<p>If the answer to both questions is 'yes', the default MPM is > +<code class="module"><a href="./mod/event.html">event</a></code>.</p> It isn't that simple. APR_POLLSET_THREADSAFE has to be supported, and that is more than the well-known capabilities of threads and polling. APR_POLLSET_THREADSAFE means that the platform has an advanced polling mechanism which allows pollsets to be manipulated in a certain way, and that APR has an implementation that uses that mechanism. Linux, Solaris, and FreeBSD/Mac OS X are platforms that satisify both characteristics. z/OS is a platform that has an advanced polling mechanism but without an APR implementation in the stable branches. Neither AIX nor HP-UX have APR implementations, though I'd guess that the OS has the feature and nobody has gotten around to exploiting it in APR. > + > +<p>If The answer to #1 is 'yes', but the answer to #2 is 'no', the > +default will be <code class="module"><a > href="./mod/worker.html">worker</a></code>.</p> > + > +<p>If the answer to both questions is 'no', then the default MPM will be > +<code class="module"><a href="./mod/prefork.html">prefork</a></code>.</p> > + > +<p>In practical terms, this means that the default will almost always be > +<code class="module"><a href="./mod/event.html">event</a></code>, as all > modern operating systems support these > +two features.</p> > + > </div><div class="top"><a href="#page-header"><img alt="top" > src="./images/up.gif" /></a></div> > <div class="section"> > <h2><a name="static" id="static">Building an MPM as a static module</a></h2> > > Modified: httpd/httpd/trunk/docs/manual/mpm.xml > URL: > http://svn.apache.org/viewvc/httpd/httpd/trunk/docs/manual/mpm.xml?rev=1395417&r1=1395416&r2=1395417&view=diff > ============================================================================== > --- httpd/httpd/trunk/docs/manual/mpm.xml (original) > +++ httpd/httpd/trunk/docs/manual/mpm.xml Sun Oct 7 22:59:14 2012 > @@ -89,6 +89,30 @@ choice at compile-time.</p> > <module>event</module>, depending on platform capabilities</td></tr> > <tr><td>Windows</td><td><module>mpm_winnt</module></td></tr> > </table> > + > +<note><p>Here, 'Unix' is used to mean Unix-like operating systems, such as > +Linux, BSD, Solaris, Mac OS X, etc.</p></note> > + > +<p>In the case of Unix, the decision as to which MPM is installed is > +based on two questions:</p> > +<p>1. Does the system support <a > +href="http://en.wikipedia.org/wiki/Threads_(computer_science)">threads</a>?</p> > +<p>2. Does the system support <a > +href="http://en.wikipedia.org/wiki/Polling_(computer_science)">polling</a>?</p> > + > +<p>If the answer to both questions is 'yes', the default MPM is > +<module>event</module>.</p> > + > +<p>If The answer to #1 is 'yes', but the answer to #2 is 'no', the > +default will be <module>worker</module>.</p> > + > +<p>If the answer to both questions is 'no', then the default MPM will be > +<module>prefork</module>.</p> > + > +<p>In practical terms, this means that the default will almost always be > +<module>event</module>, as all modern operating systems support these > +two features.</p> > + > </section> > > <section id="static"><title>Building an MPM as a static module</title> > > -- Born in Roswell... married an alien... http://emptyhammock.com/ -- Born in Roswell... married an alien... http://emptyhammock.com/ --------------------------------------------------------------------- To unsubscribe, e-mail: docs-unsubscr...@httpd.apache.org For additional commands, e-mail: docs-h...@httpd.apache.org