IIS 6.0 Application Pools
An Application Pool can contain one or more applications and allows us to configure a level of isolation between different web applications. Because each application pool runs in its own work process, errors in one application pool will not affect the applications running in other application pools.
IIS 6.0 application pools set boundaries for applications and define the configuration settings of the applications that they contain. Every application pool has a set of one or more worker processes assigned to it. These worker processes define the memory space that applications use. By assigning an application to a particular application pool, you are specifying that the application:
To further improve performance and stability over its predecessors (IIS 5.0), IIS 6.0 allows multiple worker processes to handle client connection requests routed to an application pool by distributing the requests across these multiple processes, without relying on just one process for the job. Much like a cluster, if one process becomes unresponsive, the others are there to continue handling the requests. An application pool configured to use multiple worker processes in this manner is referred to as a web garden.
Refer to the following article, IIS and ASP.NET: The Application Pool, to get more information:
http://www.developer.com/net/asp/article.php/2245511