Services are started during the operating system boot process, and load from
executable files like other programs. The difference is that once they are
started, they stay running in the background until they are manually turned
off. This way, they can perform whatever function they need to perform
without having to be manually invoked by the user.
The downside of this, of course, is that services consume system resources,
notably memory. The more services you have open, the greater the initial
overhead on your system.
Potentially worse is the fact that standardized sets of
services that are always present by default (such as the base list of services
loaded by Windows XP) are well known, and their presence on the vast majority of
XP systems can (and has) made certain network services vulnerable to viruses,
Trojans, spyware and exploits. The sheer complexity of Windows XP is the
main reason why Microsoft seemingly has so much trouble securing it. Service Pack 2 went a
long way towards rectifying these issues, closing down several little-used
services that might present security issues, like the Remote registry editing
service.
The difference between services and
processes
You've looked at the list of services running on your system by now, and you
understand that these services are applications running behind the scenes, but
now for a puzzling thing… Press CTRL+ALT+DEL to bring up the Task Manager Window
and click on the 'processes' tab
Hmm, if all those services are loaded in the background, why
aren't they represented on this list? The processes tab shows every piece
of software currently running within your Windows application, so surely the services
you've seen should be here too? The quick answer to this is that
they are here, just not in the form you are expecting.
The processes tab only displays the .EXE executable file for each application
that is running on your Windows XP system. Remember when we said that
services are loaded with an executable file like any other program?
The thing is, certain executable files (like
SVCHOST.EXE, which should appear several times in the process list) start up
multiple services. Also, in most cases the name of the executable file in
the process list is not representative of the service(s) it starts.
We can find out more about a service that is running by going back to the 'services.msc' window and double
clicking on any 'started' service. Try the 'computer browser' service as
one example.
Look at the 'path to executable' box. Recognize that .exe file?
The browser service is just one of many services started by the 'SVCHOST.EXE'
file which runs as a process when Windows boots up.
To recap, services are applications that run in the background, while
processes are the actual operations that the computer is currently working
on. One process can be responsible for several running services, as in the
case of the SVCHOST.EXE process.