Windows System Power States Explained
System power states describe the power consumption of the system. These states describe the power consumption of the system as a whole, and are called Global states. There are other specific states: Device, Processor, and Performance states. We are going to focus on global states. Windows supports multiple powers states that depend on the amount of power to the system and others factors. These states correspond to the states defined in the Advanced Configuration and Power Interface(ACPI). Windows supports a total of 6 major power states, that is S0(fully on or working state) through to S5(power off). These states are characterized by amount of power consumption, the latency of resumption of working state(S0), software resumption ie restart of OS and volatility of system memory, caches, and registers.
Here is a summary of the states.
Name | Power state | Description |
---|---|---|
Working | S0 | computer is fully on, running and executing instructions. |
Sleeping | S0ix | known as Modern standby. Allows computers to be turned on and off instantly. The processor is still turned on and allows for execution of background tasks. |
S1 | known as Power on Suspend(POS). CPU caches are flushed. CPU stops executing instructions. However, power is maintained to CPU and memory. | |
S2 | CPU is turned off. Dirty cache (data that has not been committed to disk) is flushed to RAM. | |
S3 | known as Standby, sleep or Suspend to RAM. Here the RAM remains powered while the CPU is turned off. | |
S4 | known as hibernation or suspend to disk. All data in RAM is saved to persistent memory(non-volatile) i.e. SSDs and hard drives. | |
Sort Off | S5 | computer is off. low power is still supplied to the power button or any other device that allows it to be turned on to working state. |
Mechanical off | computer has no power supply at all with exception of CMOS battery for system clock. The computer can be safely disassembled. |
Diving deeper into these states:
Working State (S0)
The system is on, awake on a full running state. The CPU is executing instructions normally. However, hardware components that are in use can enter into a lower power state. Example is "Awaymode" where the monitor is off but tasks are running in the background.
Sleep State (Modern Standby)
S0ix (Modern Standby)
Popularly known as Modern Standby or S0 low power idle mode. It is a low power idle state. The system remains partially running. In this state, the system can quickly switch from a low power state to high-power state. It is common in ARM and X86 hardware.
Modern Standby is an optional standard thus is available on some SoC systems. Systems that support Modern Standby do not support S1-S3 states.
Sleep State (S1, S2, S3)
In these states(S1-S3), volatile memory is kept updated to maintain the system state. Some components remain powered so that the computer can wake from sleep such as peripheral devices i.e. USB, LAN and PCIe controllers. The system is more powered in S1 state and reduces through to S3 which is the lowest powered of the three states(S1-S3). Consequently, it takes more time to wake from a low powered state (S3) than from a high powered state (S1).
S1
Also known as Power on Suspend(POS). Processor caches are flushed (cleared), and the processor stops executing instructions. The power to the CPU and RAM is maintained. Devices that do not indicate that they must remain on may be powered off.
S2
The processor (CPU) is powered off. Dirty Cache is flushed to RAM.
S3
commonly known as Standby, Sleep, or Suspend to RAM. Here, RAM remains powered. However, the CPU is turned off.
Hibernate state(S4)
Hibernation or Suspend to Disk. All the contents of the main memory is saved to persistent memory i.e. hard drives and SSDs. Then the system is powered down. Windows uses hibernation to provide fast startup experience. It also gives a mechanism of saving the users state prior to shutting down for example in mobile devices. In hibernate transition, all data in memory is written to a file in the primary system drive, called the hibernation file. This preserves the state of the operating system, applications, and devices. Therefore, DRAM does not need to maintain self refresh and can be powered off. This means that power consumption of hibernation is very low, almost the same as power off.
During a full shut down (S5), the entire user session is lost and and new session restarted on wake. However, in Hibernation (S4), the user session is restored on wake.
Sort Off (S5)
Here the computer is off, except the power supply unit still supplies power, at a minimum, to the power button to allow return to S0 (working state). A full reboot is required to return the computer to a working state. Other components may remain powered so the computer can be turned on on input from keyboard, clock, modem, LAN, USB device, and even a PCIe device.
Mechanical Off
The computer is off similar to S5. However, the computers power has been totally removed via a mechanical switch, i.e. in PSU switch or power cord from the wall.
Windows Modern Standby
Windows Modern Standby is a standard developed by Microsoft that enables devices to be turned on and off instantly. It allows the Operating System to continue performing background tasks such as app and OS updates when the device is not being used. Simply, the system remains in S0 (working state) while in standby, allowing for background activity and faster resume from a low power state. Devices can stay connected while in standby, allowing system wake based on specific network patterns such as incoming email which can be set by the OS. This provides a smartphone like experience on a windows machine. During Modern standby, the system can stay up to date whenever a suitable network is available. Modern Standby wakes significantly faster than S1-S3. The requirements for Modern Standby support include:
- Trusted Platform Module 2.0 (TPM)
- Firmware flag for support of the standard.
- Passive cooling on standby
- Boot drive should not be a hard drive.
- Secure Boot
Devices with modern standby can go into maintenance mode(windows and application updates, security checks, malware scans and others.) while on AC power. If a maintenance task occurs while on AC power, updates and other activities could occur and use the network if a connection is available.
It should be noted that Modern Standby has been faced with a lot of criticism from multiple users and reviewers due to massive battery drain issues, despite claims that it should drain minimum battery. However, some users have reported complete battery drain. Many have narrowed it down to windows updates which has also resulted to overheating because of lack of enough passive cooling to handle such power hungry tasks. This has also been fueled by mostly, inability to simply switch back to S3 sleep state which is not possible for Modern Standby devices.
However, despite its problems, Modern standby actually has some great advantages.
Advantages of Modern Standby
- Provide an Instant on experience. Microsoft claims that the resume time is twice as fast as from an S3 resume. This provides a mobile like experience.
- Ability to perform background tasks. Exclusively, apps from Microsoft store are allowed to carry out background tasks. When connected to internet(connected standby), the user can still be able to receive i.e. emails and calls. Also, Windows updates can carried out during this period
- Simplified wake since it is basically still in idle S0 state, it does not require interaction with the BIOS.
Hybrid sleep (S1-S3 + hibernation file)
is a combination of hibernation and sleep states. It is when a system uses a hibernation file with S1-S3. The system writes a hibernation file but enters a high powered sleep state. Consequently, if power is lost while the system is sleeping, the system wakes from hibernation.
Fast startup
Fast startup is a type of shutdown that uses a reduced hibernation file to speed up subsequent boot. During this type of shutdown, the user is logged off before the hibernation file is created. When using fast Startup, the system appears to the user as though a full shutdown (S5) has occurred, even though the system has actually gone through S4. Fast startup logs off user sessions, but the contents of kernel are written to hard disk. This enables faster reboot.
How to check the Power states supported by your machine
- On your Windows computer, open Command Prompt, or Windows PowerShell.
- Type the following to check:
powercfg /a
- It should display the results as illustrated in the image above.
And that's it.