Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Automatic" vs "Automatic (Delayed start)"

When installing Windows services there are two options for automatically starting a Windows service on Windows startup. One is Automatic, and the other is Automatic (Delayed start). What is the difference between these two in detail?

For example, if you're creating the installer with wixtoolset, the ServiceConfig element has the DelayedAutoStart attribute. How will that effect what happens when services are started at boot time?

WiX documentation: ServiceConfig Element

like image 668
Sachin Kainth Avatar asked Jun 13 '12 12:06

Sachin Kainth


People also ask

What does automatic delayed start do?

In order to speed up the Windows boot process, Microsoft introduced Automatic (Delayed Start) Windows Services. The idea behind this was to delay the start of non-essential services in order to minimise the overall boot time of the operating system.

What is automatic service?

It is the process of automating events, processes, tasks and business functions. Service automation helps in achieving multi-dimensional visibility into businesses and helps in streamlining the service process.

What is automatic startup type?

Acceptable startup types include: Automatic: The service starts at system logon. Automatic (Delayed): The service starts a short while after the system has finished starting up. This option was introduced in Windows Vista in an attempt to reduce the boot-to-desktop time.


1 Answers

In short, services set to Automatic will start during the boot process, while services set to start as Delayed will start shortly after boot.

Starting your service Delayed improves the boot performance of your server and has security benefits which are outlined in the article Adriano linked to in the comments.

Update: "shortly after boot" is actually 2 minutes after the last "automatic" service has started, by default. This can be configured by a registry key, according to Windows Internals and other sources (3,4).

The registry keys of interest (At least in some versions of windows) are:

  • HKLM\SYSTEM\CurrentControlSet\services\<service name>\DelayedAutostart will have the value 1 if delayed, 0 if not.
  • HKLM\SYSTEM\CurrentControlSet\services\AutoStartDelay or HKLM\SYSTEM\CurrentControlSet\Control\AutoStartDelay (on Windows 10): (DWORD) decimal number of milliseconds to wait, may need to create this one. Applies globally to all Delayed services.
like image 128
Colin Pickard Avatar answered Sep 29 '22 17:09

Colin Pickard