Windows 8: Fast Boot

Fast Boot Performance

My Top-1 Windows 8 Feature

My first experience with Windows 8 after installing it on my “older” hardware was the amazing boot performance. On Windows 7 the boot performance has been raised massively
and I have never expected that this can be improved at all. But on Windows 8 we made it real! The feature is called “Fast Boot” and indeed the name describes how it’s really meant:

It is FAST!

This is even more amazing as the boot process on Windows 8 is more complex due to features such as “Secure Boot”, “Trusted Boot” and “Measured Boot”. So, how does it work?

Startup Performance (Fast Boot)

Recent Microsoft® Windows releases have increasingly offered sleep and hibernate power states as a recommended alternative to a full shutdown and startup. Hibernate
in particular generally brings the computer up and ready for use more quickly than a cold boot.

Many customers still prefer to shut down their computers. This can be due to a preference of having a new user session on the next startup, or to save power compared with the sleep
state. 

In Windows 8 there are improvements to make the shutdown/startup and restart processes faster. These improvements also bring increased speed to the resume
from hibernate.

Old Shutdown Steps

When you shut down a computer running Windows, this is the typical sequence of events:

  1. Click Shut down.
  2. Windows broadcasts messages to running applications, giving them a chance to save data
    and settings. Applications can also request a little extra time to finish what
    they are doing.
  3. Windows closes the user sessions for each logged on user.
  4. Windows sends messages to services notifying them that a shutdown has begun, and
    subsequently shuts them down. If a service doesn’t respond, it is shut down
    forcefully.
  5. Windows broadcasts messages to devices, signaling them to shut down.
  6. Windows closes the system session (also known as “Session 0”).
  7. Windows flushes any pending data to the system drive to ensure it is saved completely.
  8. Windows sends a signal via the ACPI interface to the system to power down the computer.

New Hybrid Shutdown

Windows 8 changes this by shutting down as far as closing the user sessions. At that point, instead of continuing and ending system services, and shutting down
Session 0, Windows then hibernates. This is called Hybrid Shutdown. The steps are shown below.

  1. Click Shut down.
  2. Windows broadcasts messages to running applications, giving them a chance to save data
    and settings. Applications can also request a little extra time to finish what
    they’re doing.
  3. Windows closes the user sessions for each logged-on user.
  4. Hibernate the Windows session.

Essentially a Windows 8 shutdown consists of logging off all users and then hibernating.

Startup Is Now Faster

This results in a significant reduction in startup time. It’s faster because resuming the hibernated system session is comparatively less work than doing a full system
initialization.

It is also faster due to improvement in the resume process, which now uses multiple CPU cores in parallel to process the hibernation data file, where previous Windows versions used only one.

Hardware is still enumerated fully in this new startup behavior, and drivers are still fully initialized. This helps ensure that a shutdown and startup can still result in a good hardware state if you are performing these steps as a cold boot for troubleshooting purposes.

How to Perform a Full Shutdown

If you want to shut down the computer without using the Hybrid Shutdown behavior, you can use Shutdown.exe to shut down the computer. Full shutdown is the default
when you use Shutdown.exe.

Shutdown /s /t 0

The Shutdown.exe command also includes an optional /hybrid parameter that can be used if you want to use the new method.

What About Restart?

When you restart the computer, that typically means that you want a completely new Windows state,  either because you have
installed a driver or replaced Windows elements that cannot be replaced without a full restart.

As a result, the restart process in Windows 8 continues to perform a full boot cycle, without the Hibernation performance improvement mentioned above.

UEFI Support

While Windows has had support for the Unified Extensible Firmware Interface (UEFI) prior to Windows 8, most consumer computers have continued to boot using BIOS firmware.

This changes with Windows 8, as UEFI firmware mode is now a Windows 8 client logo requirement. UEFI is also required to enable several features
and improvements, such as:

  • GUID Partition Table (GPT) disk partitioning - GPT partitions enable larger partitions,
    and are supported by UEFI.
  • Boot from large disk drives - GPT and native 4K sector disk support
    in Windows 8 enables support for >2.2 TB boot drives.
  • Secure Boot - Signature checks on early boot components, helping to protect pre-boot manager components from tampering.
  • Measured Boot - Works with the TPM to log startup components and activities.
  • Early Launch Anti-Malware - Registering and loading an anti-malware
    driver as a trusted boot-critical driver to help protect the system earlier in the
    boot process than with previous architectures.
  • Trusted Boot - A combination of Secure Boot, Measured Boot and Early Launch Anti-Malware that helps establish
    that the system is in a trusted state.
  • Boot on Computer with no VGA Support - UEFI removes the need for VGA support, enabling Windows 8 to be installed on computers that do not use this legacy video
    technology.

Some of these features are targeted for use in a business setting, so they are not covered in this consumer-focused training. Instead, we will examine UEFI support in general, and any support considerations for UEFI enabled Computers in a consumer setting.

There are a lot more specific details here, if anyone wants to go deeper:

http://msdn.microsoft.com/en-us/windows/hardware/gg463386 

by Oliver Niehus, Microsoft