The Windows 8 Task Manager
As we mentioned during the Windows 8 keynote at //build/, every 15 years or so we choose to update Task Manager. Of course that was said in jest as we have incrementally improved the utility in just about every release of Windows. For Windows 8, we took a new look at the tool and thought through some new scenarios and a new way of tuning the tool for "both ends of the spectrum" in terms of end-users and those that need very fine-grained control over what is going on with their PC. Ryan Haveson, the group program manager of our In Control of Your PC team, authored this post. Note: This post is about Task Manager, not about closing Metro style applications :-)
We are really excited to share some of the improvements we are making to the Task Manager in Windows 8. Task Manager is one of the most widely used apps, and it has a long history. It showed up in early versions of Windows as a simple utility to close and switch between programs, and has had functionality added to it through several releases to make it what it is today.
Figure 1: Windows 3.0 Task List
Figure 2: Windows NT 4.0 Task Manager (now with “new task”)
Figure 3: Windows XP Task Manager (with new Networking and Users tabs)
Because Task Manager is so widely used, we knew that any changes we made would be noticed, so of course we were both excited and cautious about the effort. At the beginning, there were a few key problems that we knew we wanted to address:
- Build a tool that was well designed, thoughtful, and modern. After all, even a technical tool can benefit from a focus on design.
- Fill some of the functionality gaps that drove some of our most technical customers to use other tools such as Resource Monitor and Process Explorer.
- Organize and highlight the richness of data available to make it more elegant and clear for those who want access to a new level of data.
How do people use Task Manager?
To really make Task Manager great at what it currently does, we wanted to first understand how people were using it. Over the years, it had grown to support many different scenarios. As of Windows 7, you could use Task Manager to close applications, to find out detailed data about your processes, to start or stop services, to monitor your network adaptor, or even to perform basic system administrator tasks for currently logged on users. That is a lot of functionality.
Because of the investments we made in telemetry, we had some pretty good data to start with. We combined this with individual customer interviews and observation in the research lab to understand what people were doing with Task Manager and why they were doing it.
This data is pretty interesting. What it shows is that people are spending most of their time using the first two tabs, which are pivoted around views of applications and processes. Although it is not surprising, it was interesting to see that the usage was roughly evenly split between the Applications tab and the Process tab. This indicates that there must be some significant detail lacking in the Applications tab, which is causing people to go to the Process tab. So, next we looked at how people were using the Process tab to understand what they were doing there.
When we looked at this data, and then correlated it with interviews and observations of users in our research labs, we found that people were using the process tab either to look for something that was not on the applications list (e.g. a background or system process), or to see which processes were using the most resources.
So next we looked at what actions people take in Task Manager.
Looking at the data and talking with customers, we determined that the most common usage of the tool was to simply end or “kill” an application or a process.
Goals of the new Task Manager
Based on all of the data and our background research, we decided to focus energy on three key goals:
- Optimize Task Manager for the most common scenarios. Focus on the scenarios that the data points to: (1) use the applications tab to find and close a specific application, or (2) go to the processes tab, sort on resource usage, and kill some processes to reclaim resources.
- Use modern information design to achieve functional goals. Build a tool that is thoughtful and modern by focusing on information design and data visualization to help achieve the functional scenario goals.
- Don’t remove functionality. While there are some notable core scenarios, there is a really long list of other, less frequent usage scenarios for Task Manager. We explicitly set a goal to not remove functionality, but rather to augment, enhance, and improve.
A key issue we intended to address was how we could add all of the interesting new functionality without overwhelming users. To solve this, we pivoted around a "More/Fewer details" button similar to the new copy file dialog model.
This model allowed us to optimize the default view (“Fewer details”) around the core scenario of finding an application and closing it. It also allowed us to add much more detail in the other view because it would only show up when someone asked for it. In the “More details” view we decided to stay with the existing tabbing model of Task Manager and focus on improving the content of each of the tabs. This would help us to augment, enhance, and improve what we already had, without removing functionality.
Scenario #1: Ending processes quickly and efficiently
We know from many third-party tools (or tools like sysinternals Process Explorer) there are many things we could add to Task Manager for power users, but we knew we had to first address the mainstream users because we didn’t want to create something that would overwhelm the majority of our customers. We will of course continue to value third-party tools as they allow for specialization and unique innovation around this and many tasks. For the default view, we designed a minimalist experience that appeals to the needs of the broadest customer base and most common scenario. When you launch Task Manager for the first time in Windows 8, you see a very clean view of your running apps. We made the default view great at one thing: killing misbehaving apps. And we removed everything that did not directly support that core scenario.
Figure 10: Default view of Task Manager in “Windows 8”
The value of the default view is all about what we took out. We removed everything not focused on the core task of killing apps, which makes the design focused and efficient. Specifically:
- We took out the tabs from this view, since they distract from the core scenario.
- We removed the menu bar from the default view.
- This view shows just the apps, and removes individual windows that can’t be killed anyway.
- We took out things that clutter the experience, such as resource usage stats and technical concepts that most users don’t understand.
- No double prompts. If you click ”End task” we don’t ask you, “Are you sure?”, we just kill the app, and quickly! (But be careful, because we also won’t prompt you to save!)
Check out how much cleaner and more focused the new Task Manager is compared to the Windows 7 Task Manager with the same applications and windows opened:
After taking out all of the extras, you are left with a tool that is great at one thing: killing a misbehaving app. And this is perfect for many users who are experiencing the pain of a “not responding” app that won’t go away using the app’s Close button.
Scenario #2: Diagnosing performance issues
A lot of what is new with Task Manager is shown only when you go to the “More details” view. This is the realm of the power user, so keep in mind that mainstream users may never want to get into this level of detail, and all of their needs should be met by the ”Fewer details” view above.
Here is what you will see in this new view:
Figure 12: The new processes tab and the heat map
The heat map
The most noticeable difference in the new processes tab is the new heat map, which represents different values with color. Our telemetry data told us that it was very common for users to go to the process tab, sort by CPU or memory utilization, and then look for applications consuming more resources than expected. The nice thing about a heat map is that it allows you to monitor anomalies across multiple resources (network, disk, memory, and CPU utilization) all at the same time, without having to sort the data. It also allows you to find the hot spot instantly without needing to read numbers or understand concepts or specific units. In usability studies we used an eye-tracking system to test what users looked at when presented with various ways of visualizing this information. This helped us narrow our choices to a design that efficiently draws user’s eyes to the most significant resource problems. Below you can see the eye movement of a participant in one of our eye-tracking studies overlaid on top of a screen shot of what he was looking at. The red dot indicates a place where his eye paused, and the lines show where his eye had quickly moved from previously.
Network and disk counters
Many power users supplement their usage of Task Manager with other tools such as Resource Monitor simply because in the past Task Manager did not show per-process network and disk attribution. This was a gap, when you consider that a spinning disk or multiple applications competing for network bandwidth are the root cause of many perceptible PC performance issues. The new Task Manager now shows these resources at the same level of detail as memory and CPU.
Lighting up the resource usage
One of the biggest causes of PC performance issues is resource contention. When a particular resource is being used at a rate above a threshold number, the column header will light up to draw your attention to it. Think of this as a warning indicator, letting you know a good place to start looking if you are experiencing performance issues. Below, you can see that the CPU column header is highlighted to draw your attention to the fact that you may have multiple applications competing for CPU time.
Figure 13: Resource usage indicators
Grouping by applications, background processes, and Windows processes
A big challenge with today’s Task Manager is that it is hard to know which processes correspond to an application (apps are generally safe to kill), which are Windows OS processes (killing some of these can cause a blue screen), and which are miscellaneous background processes that may need to be explored more deeply. The new Task Manager shows processes grouped by type, so it is easy to keep these separated while still providing an ungrouped view for situations where you need it.
Friendly names for background processes (and services, and everything else)
Looking at the screen shot above, do you see the line item for "Print driver host for applications" ? In the old Task Manager, this showed up as “splwow64.exe”.
But if you still want to see the executable name, of course you can add it back as an optional column.
Grouping top-level windows by app
One of the most distracting parts of the old Task Manager is that the Applications tab was a flat list that included all of the top-level windows from all processes in the system. While the list of top-level windows is interesting information to have, it is often overwhelming to look at and sometimes a single window cannot be killed without closing all the other windows for that process. To address this, the new Task Manager now groups top-level windows under their parent process. It allows for a much cleaner view for typical usage, helps you focus on killable processes, process resource usage, and allows you to see which windows are owned by each process so you know what will be closed if you kill it.
What’s a fussvc.exe?
Have you ever looked through the process list, seen something like “fussvc.exe” and wondered what it was? Adding friendly names was a good first step to resolving this problem (fusssvc.exe is actually the Fast User Switching Utility Service), but of course, to really find out what this process is, you need to search the web. The new Task Manager integrates a search context menu on right-click, so you can go directly to your default search engine (which you can customize) to see more details and relevant information. This can make a huge difference when deciding whether a background process is doing something useful or just wasting cycles.
Service host details and friendly names
If you open up Windows 7 Task Manager to the Processes tab and select “Show process from all users,” you will probably see eight seemingly identical instances of “svchost.exe”. This is one of the most commonly noted "not very informative" sources of information we provided. Of course, some of you know that this is really just a service host process and you can add the PID column, go to the services tab, sort by PID, see which services correlate to that PID, and then reverse-look-up friendly names for each of the services… but that is a lot of work (and not everybody knows this)! With the new Task Manager, we show all of the services grouped by process with friendly names for each of them, so you instantly can see what is going on when an instance of svchost is consuming a lot of resources:
As you can see, we added quite a lot to the new Task Manager (and we only showed you the first tab!). Task Manager was a unique opportunity for user experience designers and researchers working together with technical program managers and engineers to create a clean, organized, and efficient design. We made it more streamlined for mainstream users, and more detailed for power users.
I will leave you with a quick demo where you can see what it looks like in action.