To find out what w3wp.exe is doing on a computer, we must have a look at the hierarchy of managed entities in an Internet Information Services (IIS) web server and their relationship with each other.
First of all, what is IIS exactly? It is a flexible Microsoft web server with an easy-to-manage platform to help develop or host anything on the web, such as applications or services. On the top of the hierarchy there is a service called WAS. It stands for Windows Process Activation Service, and it is responsible for managing worker processes and the application pool.
So, what is an application pool then? It is on the next level of the hierarchy, a grouping of URLs that is routed to one or more worker processes. In other words, an application pool is a set of web applications that share one or more worker processes. We are getting closer to w3wp.exe, which is on the next level: the worker processes.
A worker process in IIS is a process in Windows (named w3wp.exe) which runs web applications and handles requests sent to a server for a specific application pool. If w3wp.exe fails to respond, WAS may recycle it. The w3wp.exe process can be in a starting, running, stopping, or unknown state.
Worker processes can trace request activity too: successful, failed or all requests can be logged.