Suspending An Errant Process with PsSuspend

If you've worked on Windows-based PCs extensively, you've probably encountered instances where some process goes amuck consuming almost all of the CPU cycles on the system. If you bring up the Task Manager and click on the Performance tab, you see the CPU usage at 95% to 100%. You can click on the Processes tab and then click on the column heading "CPU" to put the processes in order by CPU utilization. That will show you which process is consuming most of the CPU cycles. You can click on that process name to highlight it and then click on "End Task" to kill it.

But what if you don't want to kill the process, just stop it from consuming so much CPU time, so you can work on the system without aggravating delays. Sometimes, you may have multiple instances of an application, such as Internet Explorer, open where killing one instance of it will kill all instances. In such cases, you can use the PsSuspend utility from Sysinternals to temporarily suspend the offending process.

For instance, I had several instances of Internet Explorer open. I tried to access a webpage I've accessed previously without problems, but suddenly I got the hourglass in Internet Explorer and the system seemed to grind almost to a halt. I checked the CPU utilization with the Task Manager by bring up the Task Manager and then clicking on the Processes tab. I found that one Internet Explorer process (Internet Explorer shows up as IEXPLORE.EXE in the processes list) was at 95% CPU utilization. I obtained the process ID for the process by clicking on "View", then "Select Columns" and then selecting "PID (Process Identifier)", which adds adds a column of PIDs for the running processes shown by the Task Manager. I could then see the PID was 3436.

IE consuming CPU resources

I then obtained a command prompt and used the PsSuspend utility to suspend the process, which reduced the CPU utilization to 4% allowing me to work normally.

C:\Program Files\Utilities\Sysinternals>pssuspend 3436

PsSuspend v1.05 - local and remote process suspender/resumer
Copyright (C) 2001-2003 Mark Russinovich
Sysinternals -

Process 3436 suspended.

I then brought up the Task Manager again and ordered the processes by PID by clicking on "PID" at the top of the PID column. I could then see that the CPU value for the proces was 0.

IE process 3436 at 0 CPU


TechRabbit ad 300x250

Justdeals Daily Electronics Deals1x1 px

Valid HTML 4.01 Transitional

Created: Monday February 27, 2006