Revision 1.3 |
Revision 1.5 |
CoW was developed at the University of California, Davis by Takashi
Ishihara <ishihara@cs.ucdavis.edu> as part of his graduate research
on cooperative multithreading. It is now maintained by Matt Roper
<roper@cs.ucdavis.edu>.
|
CoW was originally developed at the University of California, Davis
by Takashi Ishihara <ishihara@cs.ucdavis.edu> as part of his graduate
research on cooperative multithreading. The project is now maintained
by Matt Roper <roper@cs.ucdavis.edu>. Please send all bug reports and
|
|
feature requests to Matt.
|
CoW uses a slightly modified version of GNU Pth as its threading library. A stripped down copy of Pth is included in the CoW
|
CoW uses a slightly modified version of GNU Pth as its threading library. A stripped down copy of Pth is included in the CoW
|
distribution and will be statically linked into the final
executable; it is no longer necessary to install and patch a
separate copy of Pth.
|
distribution and will be statically linked into the final executable;
it is no longer necessary to install and patch a separate copy of Pth.
The provided copy of Pth has been modified to include experimental
|
|
support for Linux 2.6's sys_epoll event notification mechanism. This
is likely to be less stable than the traditional select()-based event
notification, but it should also provide higher performance. To enable
the epoll-based event notification, pass the "--with-epoll" switch to
the configure program.
|
Installation steps: * ./configure
|
Installation steps: * ./configure
|
Line 21 |
Line 27 |
file. By default, CoW will search for a configuration file at /etc/cow.conf, /usr/local/etc/cow.conf, and finally at ./cow.conf.
|
file. By default, CoW will search for a configuration file at /etc/cow.conf, /usr/local/etc/cow.conf, and finally at ./cow.conf.
|
|
-d
Tells CoW not to background itself; generally only used
during debugging.
|
-r <serverroot> Specifies the base document directory from which files will be served. If this switch is present, it will override
|
-r <serverroot> Specifies the base document directory from which files will be served. If this switch is present, it will override
|
Line 32 |
Line 41 |
overrides the ServerPort setting in the configuration file. If this switch is not present and no value is set for ServerPort in the configuration file, 8080 will be used.
|
overrides the ServerPort setting in the configuration file. If this switch is not present and no value is set for ServerPort in the configuration file, 8080 will be used.
|
|
-f <numprocs>
Tells CoW to fork off a total of <numprocs> processes. By
default CoW only uses a single process, but since operating systems
generally impose a 1024 file descriptor per process limit,
this option allows us to effectively multiply the number of
file descriptors available to CoW (and thus increase the
maximum possible concurrency). Do not confuse this forking
mechanism with Apache-style forking -- Apache uses one process
per request, but each CoW process can handle about 1000 simultaneous
requests.
-b <backlog>
This option is passed to the underlying listen() system call and
controls the number of pending connections allowed. You should
generally leave this option at its default value.
|
-v This switch enables some extra console output during startup. You probably won't need to use this unless your trying to
|
-v This switch enables some extra console output during startup. You probably won't need to use this unless your trying to
|
Line 42 |
Line 65 |
questions, don't hesitate to send an email to roper@cs.ucdavis.edu. Send bug reports to the same address.
|
questions, don't hesitate to send an email to roper@cs.ucdavis.edu. Send bug reports to the same address.
|