This issue occures when a service is depending on other services to start.
Like the SQL reporting service are depending on the SQL service to access the Reporting database.
It the reporting service failes a similar event may be shown in the event viewer.
"At least one service or driver failed during system startup. Use Event Viewer to examine the event log for details."
As KB 884495, the time-out value for service startup process can be changed. In this way, the service have more time to load when the computer starts.
To increase the service startup time, create the following registry entry:
Subkey: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ControlName: ServicesPipeTimeoutType: REG_DWORDData: The number of milliseconds that you want to give the services to start inTypically, a data value of 35,000 is sufficient to keep the service from timing out. However, you can reduce or increase this value according to your specific startup requirements. For example, to use a time-out value of 60 seconds, assign a data value of 60,000 to the ServicesPipeTimeout registry entry. A larger data value does not decrease your computer's performance. To create this registry entry, follow these steps:
Click Start, click Run, type regedit, and then click OK.
Locate and then click the following registry subkey:
Right-click Control, point to New, and then click DWORD Value.
In the New Value #1 box, type ServicesPipeTimeout, and then press ENTER.
Right-click ServicesPipeTimeout, and then click Modify.
Click Decimal, type the number of milliseconds that you want to wait until the service times out, and then click OK.For example, to wait 60 seconds before the service times out, type 60000.
Quit Registry Editor, and then restart the computer.