Understanding Task Manager Part 1
When it comes to system performance issues, Windows’ Task Manager (Ctrl-Shift-Esc) is the first place to look. Task Manager can also end processes that aren’t responding, start new processes and switch to applications that may have gotten “stuck” when a dialog box got covered up by another window.
Status Bar
In all Task Manager tabs, the status bar at the bottom of the window shows three things:
- Processes: The number of running processes. The more processes running, the more work Windows has to do and the slower your computer will run.
- CPU Usage: Total CPU usage by all processes. If this stays at 100% for an extended period of time, it is typically because of a buggy application.
- Commit Charge: The total amount of memory that Windows is using for applications and the maximum available memory. If the commit charge ever gets close to the maximum available, Windows will slow down considerably.
Note: in the screenshot below, the Users tab is missing because I have Fast User Switching turned off. I will cover the users tab briefly in the next article on Task Manager.
Application Tab
The default first view is the Application tab. There’s really not much exciting here but this tab does allow you to switch to a task that may otherwise not be responsive. You can also attempt to gracefully end a task (which is safer than ending its process) or start a new task. For example, when Windows Explorer hangs and you are forced to close it, you can use Task Manager to start a new Explorer.exe if it doesn’t come back up on its own.

Processes Tab
The Processes tab is a detailed view of all exes that are running on your computer. You may need to check the Show processes from all users checkbox to see everything. The default columns will show some information but many additional columns are also available, and can be added from the View -> Show Columns… menu item. Here is a list of some of the more useful columns and what they mean:
- Image Name: The name of the executable
- PID: A number that is assigned to the executable by Windows.
- User Name: The user that is running the process. The SYSTEM, LOCAL SERVICE and NETWORK SERVICE users are all built into Windows and run system processes. It is almost never a good idea to forcefully end one of these processes. If you have a lot of processes running under your username, especially if you don’t have any applications open, your computer may be burdened with junkware, or worse.
- CPU Usage: Current percentage of CPU being used by the process. If a process is using 100% of the CPU for more than a minute or so, it usually means the process has locked up.
- CPU Time: Total amount of CPU time the process has used. Sort by this column to see if any process is using a lot of the CPU’s time. If you have slow performance issues, this is the first thing to look for in determining which program is causing the problem.
- Memory Usage: This is the amount of memory that Windows has allocated to a particular process. If a process which isn’t being used starts using more and more memory, it is a sign of a memory leak. Eventually the process may use up all available memory and crash.
- Peak Memory Usage: The largest amount of memory that has been used by a process. This is a useful gauge to determine how much memory to allow for a particular program.
- I/O Reads and I/O Writes: While not strictly about disk usage, the vast majority of I/O activity is related to disk usage. Any program with a lot of I/O reads and especially I/O writes may be causing performance problems.
If you right-click on any process you will get 5 options:
- End Process: This will kill the process and unlike the Application tab, it will do it right away, unless you do not have permission to end it (which is usually the case with processes running under the SYSTEM username).
- End Process Tree: If a process started another process, this command will end those processes as well. If you use this command on explorer.exe it will kill all of your running applications.
- Debug: If you have a debugging tool, you can debug a process with this option. If you don’t know what debugging is you should definitely never use this command.
- Set Priority: This option allows you to set the priority of the process in using the CPU. For the most part this should be left alone, but if you are watching a movie on your computer, setting the priority to “High” for the process will help if the video starts skipping frames.
- Set Affinity…: If you have a hyper-threaded, dual core or quad core processor, you can use this option to restrict a process to specific cores. This can be useful for processes that use a lot of CPU.
In Part 2, I’ll cover the Performance and Networking tabs in detail, as well as the Users tab.