Problem
- users can't/shouldn't distinguish sleep and hibernation
- suspend to RAM (S3) is not robust against power loss
- we don't have anything that can reliably replace a full power off
Relevant Art
Windows Vista implements hybrid suspend. "Just press the power button on the Start menu or on your PC, and your PC will automatically save your current session to memory, and then quickly enter into a very low power state. It will also save your session to the hard drive, so you can access it even if the memory loses power."
http://www.microsoft.com/windows/windows-vista/features/fast-sleep-and-resume.aspx
Apple Mac OS X seems to perform a true "hybrid suspend". In that it means suspends state to disk before it suspends to ram.
Discussion
According to Matthew Garrett (Oct 2008): "So what we have *now* is all the technology to do S3, resume at some later point and then either return to S3 or if power is low, change to S4. Why we *can't* do that under any circumstances by default is that on at least 20% of systems, resume will fail for one bullshit reason or another. We understand all those reasons, but it's going to be at least a year until they're fixed."
Can we wake from S3 on a low battery condition or only after an amount of time? Matthew says that we can "make a handwavy and conservative guess at the rate of power drain, set the alarm to wake us before 0 [power]. When we wake, recalibrate that guess and either go back to S3 or enter S4."
We would need to do more work to make Hibernate/S4 faster and more reliable.
Matthew will hopefully write up some more information about this in his blog.
The beauty of hybrid suspend (as implemented on Vista and Mac OS X) is that you can turn the power of at the wall without worrying whether the computer is in S3 or S4 state. Waking up from S3 after a period of time and then entering S4 misses this entirely. Atomice 11:16, 12 November 2008 (UTC)
References
* http://www.microsoft.com/windows/windows-vista/features/fast-sleep-and-resume.aspx