Thứ Tư, 3 tháng 4, 2013

What's the difference between an Application, Process, and Services?

Both applications and services have processes associated with them.

An application is a program which you interact with on the desktop. This is what you spend almost all of your time using on the computer. Internet explorer, microsoft word, iTunes, skype - they are all applications.

process is an instance of a particular executable (.exe program file) running. A given application may have several processes running simultaneously. For example, some modern browsers such as google chrome run several processes at once, with each tab actually being a separate instance/process of the same executable. In some cases, complicated applications may have multiple processes; for example, Visual Studio runs a separate process when it compiles code from when it displays the IDE. However, most often, a given application is running from a single process; for example, no matter how many microsoft word windows you have open, only a single instance of winword.exe is running.

service is a process which runs in the background and does not interact with the desktop. In Windows, services almost always run as an instance of the svchost.exe process, the windows service host process; however there are sometimes exceptions to this.

Sometimes, processes may run in the background without interacting with the desktop, but without being installed as a service. Many device drivers with enhanced features do this. For example, a touchpad driver will usually have a process which runs when a user logs in and handles the special features of the touchpad, but isn't a service and doesn't show any windows to the user.

Sometimes an application may depend on a certain service. Printing from any program requires that the print spooler service be active. Installation packages (.msi installers) require that the windows installer service be running. Antivirus programs usually employ a service so they can continue running even when the user is not logged in.

Processes usually exit when an application is closed, however this is not always the case. Some programs, particularly download and backup programs, may continue to run in the background without displaying any windows. Antivirus is also an example of this - in addition to using a service, many antivirus applications run a process silently in the background which only displays an application to the user when action is required.

0 nhận xét:

Đăng nhận xét