Windows Processes Explained
Like most modern operating systems, Windows can run many programs at the same time. Still, unless your computer has several processors, it can only perform one task at a time. To solve this problem Windows switches rapidly between all running programs, creating the illusion of all programs running in parallel. If you have ever experienced a crash, however, you probably know that as soon as the switching stops working, all programs simply stop working. This is because the processor gets locked up in one process and stays there.
What is a Process?
While the word "program" refers to the executable code (the exe file, for example), a process is a program that is being executed. When you start a program in Windows, the executable will be loaded into RAM. Windows will then add the new process to its internal process list and make sure the process receives some CPU time as well as memory and other resources. A process can then request any amount of resources from Windows as long as there are resources left. Windows keeps track of which processes are using which resources. As soon as a process is closed or terminated, all resources used by that process will be returned to Windows and will then be handed out to other processes. Unlike memory and similar resources, CPU time cannot simply be requested but is instead shared equally between processes. A process can also return the CPU to Windows before the assigned time slice ends. This is actually what happens most of the time and is the reason why your CPU usage is not always at 100 %.
Terminating Processes to Free Up Resources
Whenever a process is terminated by the user, all resources used by that process will be released and become available to other processes. If you are running ten processes on your system, each process might get only 10% of the total hardware resources. If you have a 1 GHz processor and 64 MB RAM, for example, each process might get CPU and memory resources corresponding to a 100 MHz CPU and 6.4 MB of RAM. This example is, of course, greatly simplified, and in reality some processes use many more resources than others. Still, because many users are running 50 processes or more, the amount of resources available to a game or an mp3 player can be considerably smaller than the total hardware resources. What can we do about this problem? As it turns out, there is actually a rather simple solution. Terminate!
Using the Windows Task Manager
If you are lucky enough to be running Windows 2000 or Windows XP, terminating processes can be done with the built-in Task Manager. Although you can only terminate one process at a time and have to guess which processes are important and which ones are just wasting resources, the Windows 2000 Task Manager allows you to terminate almost all processes including the invisible ones running in the background. If you are running Windows 98 or Me, however, the CTRL + ALT + DEL screen will only list visible processes; and terminating then often takes minutes. What you really need for this strategy to be efficient is a new Task Manager.
Replacing The Windows Task Manager
WinTasks from LIUtilities is an easy-to-use task manager that replaces the built-in Task Managers in both Windows 98 and Windows 2000 or XP. Instead of listing processes with the names iexplore.exe, msimn.exe or explorer.exe, WinTasks shows processes with their real names like Internet Explorer, Outlook Express or Program Manager. Not only will this help you decide which processes can be terminated safely, but it will also help you identify unwanted background processes quickly and easily. WinTasks also includes detailed descriptions of all common Windows processes, making it easier than ever before to clean up your system and optimize the use of valuable hardware resources. Apart from user-friendly names and descriptions, WinTasks shows you in real time how your resources are being used and can help you find and eliminate resources problems within seconds. The built-in process statistics and process scripting language can also be used to automatically optimize your system for maximum performance. How about a script that automatically terminates unnecessary processes and frees up resources whenever a demanding application is started? Thanks to the detailed process statistics and logs, you can even go back and inspect the resource usage on your computer during the last 24 hours.