为什么 Windows 等桌面操作系统从睡眠或休眠模式恢复时响应时间较长?
直觉上,它应该用更少的时间来做出反应。但是,它内部到底出了什么问题,导致它花了很长时间才恢复理智?
答案1
我将笼统地回答。我不知道这是否适用于 Windows。(如果你想要关于 Windows 的具体答案,请询问超级用户。
想象一下计算机的内存就像一张桌子,上面放着很多纸张。当你需要读取或写入一张纸时,就从桌子上拿起它。有时纸张不在桌子上,而是在某个文件柜里;在这种情况下,你需要从文件柜里取出它。桌子是计算机的 RAM,文件柜是硬盘。
在休眠期间,RAM 被关闭,因此当电源恢复时,RAM 中没有任何内容。计算机从干净的桌面开始,所有东西都在文件柜中。正在运行的程序的所有数据都需要从文件柜中取回,这是根据需要进行的。因此,一开始程序会很慢,因为它们要花很多时间从磁盘加载内容;最终缓存将填充最有用的数据。
如果不关闭 RAM,则不会出现此影响。但是其他事物可能需要一些时间才能恢复,例如网络连接。
为什么你的直觉告诉你计算机从休眠状态恢复时应该响应得更快?在办公桌比喻中,你猜测在干净的办公桌上工作会更快。但事实恰恰相反:管理办公桌的成本并不取决于给定时间内办公桌上的纸张数量,而只(或主要)取决于办公桌的大小。计算机不会介意办公桌凌乱。
这是分析资源利用率的一般原则:如果计算机有空闲内存,那么这些内存就被浪费了。有一些空闲内存并不会让计算机运行得更快(除非保留少量内存来处理突然的紧急请求)。最佳性能来自于让内存充满有用的东西——缓存(并且 RAM 是速度慢得多的磁盘的缓存)只有在使用时才有用。