查看: 31233958|回复: 11
打印 上一主题 下一主题

Win8快速开关机的奥妙。

[复制链接]
  • TA的每日心情
    开心
    2016-12-8 19:23
  • 签到天数: 35 天

    [LV.5]常住居民I

    跳转到指定楼层
    楼主
    发表于 2012-11-30 02:18:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    随着Win8正式发布脚步声的临近,用户对Windows8的关注已经渗入到了方方面面,其中Win8开关机之快已经被用户所认可的现实,甚至在配置豪华的电脑上更是实现8秒完成Win8开机。微博和论坛也尽是展示Win8开关机速度的相关讨论,您如果不亲身试一下,确实很难体会到Window 8的开机之飞速。


    我们在较早前的一些文章中,已经对Win8的开机速度做过相关的测试。Win8开机真相究竟何在?我们再来刨根问底,并且带着这些疑问,来深究一下Win8开机速度能做到如此境界的根层因素。全面解析Win8开关机背后的各项技术。

    假关机or真休眠? Win8开关机刨根问底


    本文将分析点评三个问题

    何为“混合启动”?Win8在整合既有的启动模式和新增的快速休眠、唤起特性,减少内存暂存的数据写入,大幅缩短开机时硬盘读取与初始化的时间。通过这样的方式来实现Win8的快速启动。详细内容我们将在下文内容中逐一分析;

    休眠对Win8起到哪些作用?Win8从休眠模式到开机,启动的过程省掉了大量系统所必要的数据读取;

    何时需要关机何时可休眠?其实这是一个非常直接的问题,在Win8系统以前,用户对关机和休眠的选择都是非常准确的,也赋予了明确的定位。那么现在Win8推出之后,休眠和关机似乎显得模糊化了。何时需关机何时要休眠,后文笔者将具体说明。


    何为“混合启动”?

    Win8混合启动,即是Win8在整合既有的启动模式和新增的快速休眠、唤起特性后,让操作系统转为一种类似休眠的状态,同时减少内存暂存的数据写入,大幅缩短开机时硬盘读取与初始化的时间。


    混合启动的基本原理

    仅仅休眠系统核心文件,并可以大大增加系统启动速度,混合启动和休眠有什么不同呢?

    其实没那么简单!混合启动更快,而且保存数据更完美。大家知道,如果直接恢复到用户桌面那会出现个人隐私保护的问题。不过微软应该能够处理好这方面的事情,应该会在唤醒后自动先切换到锁定登陆状态。不过谈及到真正的开机和恢复速度,配合上新一代的SSD硬盘应该是首选,这正如苹果设备中的存储技术是一个道理。

    台式机与笔记本用户对电脑关闭方式的选择

    数据显示,57%的台式计算机用户和45%的笔记本电脑用户会选择关闭他们的计算机,而不是让计算机进入睡眠模式。


    Win8关机选项

    “控制面板→所有控制面板项→电源选项→系统设置”进入到Win相关选项内,Win8将一些本该关闭的内核对话全部保存到一个名为hiberfil.sys的磁盘文件中,下次开机时直接将这里的内容写回内存,从而提高系统启动速度。而这一点与当年的“混合关机Hiber Shutdown”异曲同工。

    微软在Windows8中把混合启动这个功能用来替代关机功能,当您要关机的时候,Hybrid Boot实际上是在利用高级休眠功能,这样计算机的重启速度就会得到大幅提升。当然,您是可以在开始菜单中选择的。

    Win8关机按钮

    这点实际上对平板设备和智能手机设备来说,是必须的。在之前的开发版本里面,Win8默认是采用混合启动技术的,在开始菜单的最下面点下就行,当然这个混合启动也是可以直接禁止掉的,早控制面板下的电源选项中找到并禁用它即可。


    减少内存暂存/数据写入

    任何一个操作系统都需要依托于硬盘存储器之上,Windows 8当然也不会例外。Windows开关机的速度似乎跟硬盘、休眠有千丝万缕的关系。那么,这里面究竟是一种怎样的秘密?

    Windows 8的系统转为一种类似休眠的状态,同时减少硬盘缓存调用数据、内存暂存的数据写入,大幅缩短开机时硬盘读取与初始化的时间。于是可分为硬盘缓存和休眠两个部分来进行分析。


    硬盘缓存

    原始意义是指存取速度比一般随机存取记忆体RAM来得快的一种RAM,一般而言它不像系统主记忆体那样使用DRAM技术,而使用昂贵但较快速的SRAM技术,也有快取记忆体的名称。在计算机存储系统的层次结构中,介于中央处理器和主存储器之间的高速小容量存储器。

    高速缓冲存储器对数据的运作原理

    高速小容量存储器和主存储器一起构成一级的存储器。高速缓冲存储器和主存储器之间信息的调度和传送是由硬件自动进行的。某些机器甚至有二级三级缓存,每级缓存比前一级缓存速度慢且容量大。而这时,一开始的高速小容量存储器就被人称为一级缓存。就这样硬盘缓存在Windows 8系统启动时无需过多地进行调用,因为win8的内核会话还没有真正断开。


    内存缓冲

    操作系统在从关闭状态或者是休眠状态下,启动或者是恢复过来时,都需要调用读取电脑的硬软件资源,才能顺利启动。

    各启动进程之间的占用对比

    休眠文件的默认大小为物理RAM的75%。该文件实质上是用于保存休眠数据,会在系统进入休眠的同时写入。通常实际使用的空间要小很多,对于快速启动,使用的空间通常为物理RAM的大约10%-15%,但会根据具体的驱动器、服务或其他因素而有所不同。

    系统处理休眠文件的方式也与处理磁盘上其他文件的方式略有不同,例如卷快照服务会忽略该文件。从提升的命令行提示符运行 powercfg/hibernate off来禁用休眠并回收此空间。但需要注意的是,如果选择这样做则将彻底禁用休眠,包括一些非常实用的功能,例如快速启动和混合睡眠,混合睡眠功能允许桌面系统同时进入睡眠和休眠状态,这样可以保证电源中断的情况下,系统可以从休眠状态中恢复。


    使用进阶的休眠功能来替代关机功能

    休眠是将当前处于运行状态的数据保存在硬盘中,在休眠时可以完全断开电脑的电源,自动关闭显示器和硬盘的时间设置为多长时间比较合适应看你需要了。


    什么是休眠,为什么需要休眠?

    休眠,在广义上包括挂起到内存(STR待机)和挂起到硬盘(称STD)两种,而我们通常所指的休眠其实是STD。当电脑进入休眠状态时,电脑首先将内存中的状态复制到硬盘,然后关闭电源。此时电脑几乎和通常关机一样“安静”,你完全可以切断电源,因为保存到硬盘里面的数据不会由于断电而丢失

    说明Windows7休眠

    另外,尽管电脑硬件运行速度越来越快,但操作系统的体积也在不断膨胀,使得电脑开、关机时,启动、关闭的程序越来越多,花费时间也越来越漫长。因此如何让电脑能够快速启动、一开机就进入Windows,就成为用户关心的问题。

    以休眠的方式来恢复系统,想必是启动电脑的所有方式里最高效的一个,所以结合电脑软件硬件互相之间的相辅相成关系,使用休眠既可以保证在休眠过程中的低功耗性,也可以确保Windows系统的快速启动。


    何时才需要彻底关机?

    Windows 8休眠按钮

    与待机相比,休眠是不能通过外部设备来唤醒的,它和正常开机一样启动电脑。不过和开机相比,休眠后启动电脑无需一个一个进程地来启动,只须要将硬盘中的内存镜像读取到内存中即可。随着硬件和软件的升级,操作系统开始引入了高级电源管理,其作用就是在电脑闲置时关闭部分设备,将电脑进入等待休息状态,这样当需要重新使用电脑时,能够直接从等待休息状态尽快恢复到原先的工作状态,起到类似于快速启动的效果。同时不用电脑时还能节省不少电能。

    当然,偶尔您还是需要执行彻底关机,例如,当您打开系统以添加或更换某些硬件的时候。或者有的朋友觉得电脑在是用来了一段很长的时间之后,感觉电脑系统特别慢了,他们就会将系统重启一下。这种方法很有效,但是这个问题也许在Win8系统下,可能需要考虑的就不会太必要了。


    你选择关机还是休眠?

    人们倾向于关机是由于他们希望PC彻底“关闭”,不再消耗任何电量,以便延长电池使用时间或降低能源消耗。休眠也是一个不错的选择,在这种模式下也不会消耗电量,因此获得了很多人的青睐。

    但是,这种模式显然并不是适合所有人,因为我们听说许多人希望启动计算机后迎来一个“全新的开始”,而不是继续运行上一次会话中的全部事务。

    Windows8关机快捷方式制作

    在当今的PC上,睡眠/恢复是快速开/关转换的最佳选择,但在这种模式下仍会消耗少量电量以便保存RAM中的内容,虽然在经过良好优化的系统上只会消耗极少电量,但同样有可能耗尽电池电量。回顾一下我们目前使用手机的方式,您会发现我们很少会将其重新启动,并且始终会让手机处于类似睡眠的状态。其实这就是在传统的PC平台向手机等移动设备的待机方式,转变思维的一种必要形式。


    睡眠/休眠的注意事项

    通常,实际使用的空间要小很多,对于快速启动,使用的空间通常为物理RAM的大约10%-15%,但会根据具体的驱动器、服务或其他因素而有所不同。系统处理休眠文件的方式也与处理磁盘上其他文件的方式略有不同,例如,卷快照服务会忽略该文件(略微提升性能)。

    从提升的命令行提示符运行powercfg /hibernate off来禁用休眠并回收此空间。但是请注意,如果您选择这样做,则将彻底禁用休眠(包括一些非常实用的功能,例如,快速启动和混合睡眠),混合睡眠功能允许桌面系统同时进入睡眠和休眠状态,这样如果出现电源中断的情况,您仍可从休眠状态中恢复。

    通常来说,除非系统的磁盘空间极为有限,否则建议您保留默认值。这一全新的快速启动模式可使几乎所有系统受益,无论其安装的是旋转式硬盘驱动器(HDD)还是固态驱动器(SSD)都是如此,但对于安装高速SSD的新一代系统效果尤为明显。


    Windows睡眠/休眠的优劣势特点,刚刚我们已经几乎都谈到了,那么对于那么多条件和限定,您会选择休眠,还是选择关机?


    刨根问底 验明真相--新休眠睡眠机制

    经过前面详细的开关机原理分析讨论,我们基本上能得到结论。其实Windows 8开关机速度之快的奥秘,就在于关机直接的说就是关机的彻底程度,Windows8关机采用的是深度休眠模式。

    那么传统的操作系统所采用的彻底关机是什么模式?先来了解过程,然后我们再来总结Windows8开关机飞速的最终奥妙。


    传统操作系统启动过程:按下电源按钮后,PC的固件启动开机自检(POST)并加载固件设置。检测到有效的系统磁盘后,预启动过程结束;

    Win7关机过程

    传统操作系统关机过程:用户从“开始”菜单选择“关机”或按下电源按钮启动关机过程;或者应用程序通过调用ExitWindowsEx或InitiateShutdown等API启动关机过程。


    揭开Windows 8快速开关机的奥妙

    内核会话将不再被关闭

    与Windows 7中一样,Windows 8会关闭用户会话,但不再关闭内核会话,而是将其休眠。完全休眠包含大量正在由应用程序使用的内存页,相比之下会话0休眠数据要小得多,这将大大降低写入磁盘所需的时间。

    Win7/Win8系统关机集成对比测试(来源于网络)

    简而言之,休眠就是将系统状态和内存内容保存到磁盘上的一个文件(hiberfil.sys)中,然后在恢复时重新读取该文件,并将内容恢复到内存中。借助此项技术将启动时间显著缩短,因为在大多数系统中,读取休眠文件并重新初始化驱动程序的方式将大大加快启动速度(在测试过的大部分系统中,速度普遍提高了30-70%)。


    休眠恢复分段启动处理

    与执行完整系统初始化相比,恢复休眠的系统会话的工作量将大大减少,这是启动速度加快的原因之一。同时,我们添加的多阶段恢复功能可以并行利用多核系统的所有核心,将读取休眠文件和解压内容的工作分割处理,这是启动速度加快的另一个原因。这对于偏好休眠的各位读者也是一个好消息,因为该功能也会加快休眠的恢复速度。


    转载于中关村在线

    该用户从未签到

    沙发
    发表于 2012-11-30 02:32:11 | 只看该作者
    碉堡了,感谢分享。

    该用户从未签到

    板凳
    发表于 2012-11-30 02:33:14 | 只看该作者
    原来如此,难怪我说我WIN8开机怎么这么慢,原来开机快的都是休眠式开机。

    该用户从未签到

    地板
    发表于 2012-11-30 02:35:35 | 只看该作者
    技术贴必须顶!
  • TA的每日心情
    开心
    2016-12-9 12:32
  • 签到天数: 25 天

    [LV.4]偶尔看看III

    5#
    发表于 2012-11-30 02:44:40 | 只看该作者
    学习了~~~

    该用户从未签到

    6#
    发表于 2012-11-30 08:41:06 | 只看该作者
    潮人必备!  

    该用户从未签到

    7#
    发表于 2012-11-30 13:40:34 | 只看该作者
    继续顶起

    该用户从未签到

    8#
    发表于 2012-11-30 13:40:34 | 只看该作者
    金币怎么换东西啊

    该用户从未签到

    9#
    发表于 2013-4-7 18:48:12 | 只看该作者
    谢谢哦,辛苦辛苦!

    该用户从未签到

    10#
    发表于 2013-6-15 19:39:25 | 只看该作者
    我也想了解,请大家都说说
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    
    快速回复 返回顶部 返回列表