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 10/8/7, it was extended to cover all services. This option appears in Windows 8.1 and later too.
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 fro 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 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:
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 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:
The KB article works for all Windows versions, right from Windows 2000 to Windows 8.1.