Windows service

In Windows NT operating systems, a Windows service is a computer program that operates in the background.[1] It is similar in concept to a Unix daemon.[1] A Windows service must conform to the interface rules and protocols of the Service Control Manager, the component responsible for managing Windows services.[2]

Windows services can be configured to start when the operating system is started and run in the background as long as Windows is running. Alternatively, they can be started manually or by an event. Windows NT operating systems include numerous services which run in context of three user accounts: System, Network Service and Local Service. These Windows components are often associated with Host Process for Windows Services. Because Windows services operate in the context of their own dedicated user accounts, they can operate when a user is not logged on.

Prior to Windows Vista, services installed as an "interactive service" could interact with Windows desktop and show a graphical user interface. In Windows Vista, however, interactive services are deprecated and may not operate properly, as a result of Windows Service hardening.[3][4]

Administration

Windows administrators can manage services via:

Services snap-in

The Services snap-in, built upon Microsoft Management Console, can connect to the local computer or a remote computer on the network, enabling users to:[1]

Sc.exe

The command-line peer of the Services snap-in is Sc.exe, the "Service Control" utility.[7] This utility is included with Windows XP[8] and later.[9]

Sc.exe's scope of management is restricted to the local computer. However, starting with Windows Server 2003, not only can Sc.exe do all that the Services snap-in does, but it can also install and uninstall services.[9]

Windows PowerShell

Windows PowerShell can intrinsically manage Windows services via the following cmdlets:

Other management tools

In addition to the snap-in, Sc.exe and PowerShell, Windows also includes components that can do a subset of what the trio can do. Net.exe can start, stop, pause or resume a Windows service.[18] In Windows Vista and later, Windows Task Manager can show a list of installed services and start or stop them. MSConfig can enable or disable (see startup type description above) Windows services.

Development

Writing native services

A Windows service is created using development tools such as Microsoft Visual Studio or Embarcadero Delphi. In order to be a Windows service, a program needs to be written in such a way that it can handle start, stop, and pause messages from the Service Control Manager. Service Control Manager is a component of Windows which is responsible for starting and stopping services.

Wrapping applications as a service

The Windows Resource Kit for Windows NT 3.51, Windows NT 4.0 and Windows 2000 provides tools to control the use and registration of services: SrvAny.exe acts as a service wrapper to handle the interface expected of a service (e.g. handle service_start and respond sometime later with service_started or service_failed) and allow any executable or script to be configured as a service. Sc.exe allows new services to be installed, started, stopped and uninstalled.[19]

See also

Windows services
Concept

References

  1. 1 2 3 "Services overview". TechNet. Microsoft. Retrieved 29 March 2013.
  2. "Services". Microsoft Developer Network. Microsoft. Retrieved 29 March 2013.
  3. "New Elevation PowerToys for Windows Vista". TechNet Magazine. Microsoft. June 2008. Retrieved 21 June 2013. The service CmdAsSystem is configured as interactive whose support is being deprecated. The service may not function properly. The problem is that this script tries to create and start an interactive service. Interactive services will not function correctly due to Session 0 Isolation in Windows Vista.
  4. "Services in Windows". MSDN. Microsoft. 18 October 2010. Retrieved 21 June 2013.
  5. "Start, stop, pause, resume, or restart a service". TechNet. Microsoft. Retrieved 29 March 2013.
  6. "ServiceInstaller.DelayedAutoStart Property (System.ServiceProcess)". Microsoft. Retrieved April 2013See Remarks section
  7. "How to create a Windows service by using Sc.exe". Support. Microsoft. 11 September 2011. Retrieved 29 March 2013.
  8. "Command-line reference A-Z: SC". TechNet. Microsoft. Retrieved 8 January 2014.
  9. 1 2 "Command-Line Reference: Sc". TechNet. Microsoft. Retrieved 8 January 2014. Windows 7, Windows 8, Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Vista
  10. "Get-Service". TechNet. Microsoft. Retrieved 29 March 2013.
  11. "New-Service". TechNet. Microsoft. Retrieved 29 March 2013.
  12. "Restart-Service". TechNet. Microsoft. Retrieved 29 March 2013.
  13. "Resume-Service". TechNet. Microsoft. Retrieved 29 March 2013.
  14. "Set-Service". TechNet. Microsoft. Retrieved 29 March 2013.
  15. "Start-Service". TechNet. Microsoft. Retrieved 29 March 2013.
  16. "Stop-Service". TechNet. Microsoft. Retrieved 29 March 2013.
  17. "Suspend-Service". TechNet. Microsoft. Retrieved 29 March 2013.
  18. "Start, stop, pause, resume, or restart a service". TechNet. Microsoft. Retrieved 8 January 2014.
  19. "How To Create a User-Defined Service". Support. Microsoft. Retrieved 29 March 2013.

Further reading

This article is issued from Wikipedia - version of the Sunday, February 28, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.