httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Sutton <>
Subject Re: Info on Multithreading and Apche for NT
Date Thu, 15 May 1997 16:23:15 GMT
On Thu, 15 May 1997, Doug MacEachern wrote:
> The work I've done so far has been put into a package I'm calling
> 'athreads'.  'a' can stand for 'apache' or 'abstract', which ever you 
> like.  There's a Win32 layer in there and the package is not directly
> tied to apache, I can tar it up soon if you'd like to try it out with
> a simple NT app. 

Sounds interesting - can you drop a tar off somewhere?

At some point, all the OS specific code in Apache needs to be abstracted
so that there is a common code base across all supported platforms (this
is in the plan for 2.0, but experience in developing Apache for NT will
clearly have an influence on the level of abstraction needed). Threads are
one (important) area where we need an abstraction - not only to support
threads on various platforms, but also to support the existing pre-forking
model on platforms without thread support (or implement fake threads). 

There are also other areas where abstraction is needed, for example: file
name processing (to handle c:\ stuff, etc), process forking/spawning
(cgi), user/group info, etc etc. 

Of course, the immediate plan is to convert 1.2 to NT, before wholesale
abstraction, but it would be nice to implement 1.2 using tools that can
carry forward to 2.0. 

There are three OS's we can abstract for: 

  Windows NT (95?)

(OS/2 is already supported in Apache, but by a fairly large number of
#ifdef EMX sections. The abstract layer should be able to remove all

Is there a good reason for specifying NT only? Should we aim for Windows
NT _and_ 95? (With, possibly, NT specific extensions such as services). 
Is it worth bothering with abstraction for 1.2?


View raw message