Using the Windows Service Manager, you can delay the starting up of Windows services, just so you can improve your Windows boot times. The Automatic (Delayed Start) option for system services was introduced in Windows Vista, and in Windows 11/10, it was extended to cover all services.
Automatic (Delayed start) meaning
Windows Services are applications that typically start when the computer is booted and run quietly in the background until it is shut down.
On some older computers, it may get necessary to delay the loading of a specific Windows service for the computer to boot properly. At other times, you may want to be sure that a particular Service has started and is available for troubleshooting purposes before the other Service is started. This is where the Automatic (Delayed Start) option can help.
How does this work? Microsoft explains it as follows:
The Service Control Manager starts services that are configured for delayed automatic start after all of the automatic-start threads have finished starting. The Service Control manager also sets the priority of the initial thread for these delayed services to THREAD_PRIORITY_LOWEST. This causes all of the disk I/O performed by the thread to be very low priority. Once a service finishes initializing, the priority is set back to normal by the Service Control Manager. The combination of the delayed start, low CPU and memory priority, as well as the background disk priority greatly reduce the interference with the user’s logon. Many Windows services, including the Background Intelligent Transfer Service (BITS), Windows Update Client, and Windows Media Center, use this new start type to help improve logon performance after a system boot.
Delay loading of specific Windows Services
To delay the loading of Services, Run services.msc, to open Services Manager. Select the Service and double-click on it to open its Properties box.
Under Startup type, you will see four options in the drop-down menu:
- Automatic,
- Automatic (Delayed Start),
- Manual, and
- Disabled.
The Automatic (Delayed Start) option, lets Windows load such Services only after the other Services, set to Automatic have loaded. Thus, such Delayed services have to wait to start until all the Automatic services have started
The default delay time is of 120 seconds. But this can be changed by modifying the AutoStartDelay value in the following registry key:
HKLM\SYSTEM\CurrentControlSet\Control
After handling the Automatic non-delayed Services, Windows will queue a worker thread to run the Delayed services.
Do not be tempted to indiscriminately delay the starting of Services, unless you know what you are doing, lest you compromise with the performance and security of your computer – and never change the Startup type of the Service of your security software from Automatic to Automatic (Delayed Start).
KB193888 tells you how you can do it programmatically and by modifying the value in the following Registry key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<Service name>
The KB article works for all Windows versions.
Read: What does Automatic (Trigger Start) and Manual (Trigger Start) mean for Windows Services?