Документ взят из кэша поисковой машины. Адрес оригинального документа : http://crydee.sai.msu.ru/ftproot/pub/comp/software/silk/apache/emx_patched.README.txt
Дата изменения: Mon Oct 11 00:00:00 1999
Дата индексирования: Mon Dec 24 11:10:05 2007
Кодировка:
This replacement emx.dll is intended for use with the Apache web server. It
fixes two problems:

1) emx.dll contains a fixed size array that is used to keep track of dlls
loaded by the process so that fork() can correctly duplicate the process.
When a large number of Apache modules are loaded this array runs out of
space causing the error
"[error] (12)Not enough memory: fork: Unable to fork new process"
in the error log. To work around this I've simply doubled the size of the
array.

2) Under certain circumstances file handles are being leaked (opened but never
closed) leading to errors like
"[error] (24)Too many open files: accept: (client socket)"
I've yet to find the exact cause but it appears to be something obscure
inside the OS/2 TCP/IP stack related to using select() on a socket that's
been shutdown(). The OS/2 socket becomes closed all by itself causing the
close() call to fail and leaving the EMX file descriptor allocated. My
work-around is to ignore the error that occurs when closing an already
closed socket so that the file descriptor gets freed.

My changes to the emx source code (from the 0.9d fix 2 source, found as
ftp://hobbes.nmsu.edu/pub/os2/dev/emx/v0.9d/emxsrcr.zip) is included in
the file fixes.patch.

--
Brian Havard
bjh@apache.org