Faster boot on Windows with Delayed Start Services
Today I realized a way to make Windows boot a lot faster. Although being easy, this is a process that must be done only by experienced users. Be advised that chances are of messing your computer (I did, but fixed) if you are not used to deal with windows services. I'm using Windows 7, but I guess this technique may be used in other versions as well.
Basically, changing a service startup setting from "Automatic" to "Automatic (Delayed Start)" makes it start 2 minutes after the last "Automatic" service have started, letting more resources available to the core boot. 120 seconds is the default delay and can easily be changed in the Registry Editor (20 second works very well for me).
How to put services in the Delayed Start mode (safer way)
- Boot in Safe Mode.
- Open the Services management window (if you don't know what it is, better not go ahead without help).
- Look for the services marked as "Automatic" that weren't started. Those services are important, but good part is not vital for your OS to run.
- Double click a service, and in the field "Startup Type", change it from "Automatic" to "Automatic (Delayed Start)". It is up to you know your OS and environment, and know which services you want to modify.
YOU CAN safely do this for services such as:
- Servers (web, database, ssh, vnc, redis)
- Printer Drivers (NOT the Spooler!)
- Windows Search
- Update services in general
I DON'T RECOMMEND changing basic environment and core services such as:
- Networking related (DHCP Client, DNS Client, Netlogon, IP Helper, Distributed Link, etc)
- Account related (Netlogon, Group Policy Client, User Profile Service, Workstation, etc)
- Security related (Antivirus, Encryption, etc)
- Hardware (Plug and Play, Power, Print Spooler, Shell Hardware Detection, etc)
- Operational System Automation & Diagnostic (Task Scheduler, Diagnostic Policy Server )
How to change the Delayed Start delay (in seconds)
- Open regedit
- Select HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ in the keys tree
- Right click the right panel -> New -> String Value , name it as AutoStartDelay
- Set AutoStartDelay value to 20, or to the desired delay in seconds.