<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
<!-- $LastChangedRevision$ -->

<!--
 Copyright 2002-2005 The Apache Software Foundation or its licensors, as
 applicable.

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<modulesynopsis metafile="mpmt_os2.xml.meta">

<name>mpmt_os2</name>
<description>Hybrid multi-process, multi-threaded MPM for OS/2</description>
<status>MPM</status>
<sourcefile>mpmt_os2.c</sourcefile>
<identifier>mpm_mpmt_os2_module</identifier>

<summary>
    <p>The Server consists of a main, parent process and a small, static
    number of child processes.</p>

    <p>The parent process's job is to manage the child processes. This
    involves spawning children as required to ensure there are always
    <directive module="mpm_common">StartServers</directive> processes
    accepting connections.</p>
    
    <p>Each child process consists of a a pool of worker threads and a
    main thread that accepts connections and passes them to the workers via
    a work queue. The worker thread pool is dynamic, managed by a
    maintenance thread so that the number of idle threads is kept between
    <directive module="mpm_common">MinSpareThreads</directive> and
    <directive module="mpm_common">MaxSpareThreads</directive>.</p>
</summary>
<seealso><a href="../bind.html">Setting which addresses and ports Apache
uses</a></seealso>

<directivesynopsis location="mpm_common"><name>User</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>Group</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>Listen</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ListenBacklog</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>ReceiveBufferSize</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>SendBufferSize</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxRequestsPerChild</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MaxSpareThreads</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>MinSpareThreads</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>PidFile</name>
</directivesynopsis>
<directivesynopsis location="mpm_common"><name>StartServers</name>
</directivesynopsis>

</modulesynopsis>
