This post continues the series that started here.
In my last post, I mentioned that Kernel Initialization concluded by handing control over to the Session Manager. This signals the start of the next phase – Session Initialization.
Boot Phase Session Initialization – Phase Activity
The activities that occur during Session Initialization are -
- Autochk (Check Disk)
- Video initialization
- Loads and starts all remaining drivers (that were not BOOT_START or SYSTEM_START)
- Lasts until all PnP devices have been started
- Starts Session 0 and launches Service Control Manager (SCM)
- Starts Winlogon
Boot Phase Session Initialization – Measurement
Once again, a summary XML file generated from a boot trace using xperf.exe displays the phase duration as SMSSInit –
Alternatively, the Regions of Interest graph (discussed in Post 11) shows this phase duration as Boot-SessionInit-Phase:
Boot Phase Session Initialization – Potential Issues
Session Initialization may be delayed when Autochk (Check Disk) runs. Autochk runs in the following situations –
- If you try to run Chkdsk on the boot volume it is scheduled for the next reboot
- If Chkdsk cannot gain exclusive use of the volume
- If the volume is flagged as dirty
The most common issue during this phase is slow driver initialization with graphics drivers being the typical culprit.
Boot Phase Session Initialization – Remediation
The execution of Check Disk during boot should be obvious as its status is written to the screen as the disk is examined. After completion, Check Disk typically re-cycles the system so evidence of this activity will not appear in an analysis trace.
Understanding that a dirty shutdown is a common trigger for Check Disk means that you should look for relevant causes – possibly a hardware related issue. Also, examine HKLM\System\CurrentControlSet\Control\Session Manager\BootExecute which should have a default value as shown –
Slow drivers are identified in the same way as I discussed for Kernel Initialization only they show up in the remainder section of the summary XML file –
Again, updates for drivers causing delays should be obtained from the vendor.
Session Initialization experiences similar issues to Kernel Initialization. Slow drivers should be identified and updated where possible.