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

<!--
 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>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>
