电脑常识文选 | QQ专区 | 硬件Diy | 电脑教程 | 电脑应用 | 网络应用 | Office | 操作系统 | 电脑学习 | 电脑知识库 | 网页制作 | 应用软件 | 电脑硬件
电脑故障 | 电脑网络 | 病毒防治 | 安全防护 | 电脑爱好者 | 电脑知识 | 软件应用 | 电脑医生 | cpu | 主板 | 硬盘 | 内存 | 显卡 | 显示器 | 键盘鼠标
本文相关内容
·快速打开网站有三法
·快速查看显卡BIOS版本信息
·快速重装Windows操作系统独家秘籍
·快速应对打印内存故障
·快速煲多媒体音箱的小窍门
·快速清除刻录盘上病毒的方法
·刻录机不刻盘故障实战排除
·刻录机选购该注意哪些?
·刻录盘片选购的注意事项
·刻录原理之光盘种类识别
·刻录时间偏长是怎么回事?
·刻录失败故障分析与解决
·刻录窍门,让DVD刻录胜券在握
·快来看!水货笔记本全接触之导购
·快门的学问,初学者应该怎样按快门 
·快速鉴别松下投影机行货、水货
·宽屏LCD的福音,让游戏画面不被拉伸的秘籍
·刻出真精彩,暑期刻录产品选购指南 
·宽带ADSL Modem防攻击秘技
·宽带路由器选购要点
·宽带路由器选购的误区
·宽带路由器,选择无线还是有线?
·宽带路由器常见故障巧排除
·宽带路由器常见故障排除技巧
·宽带问题不求人,ADSL网络故障解决
·宽带安装和使用问题集粹
·宽带常识和ADSL宽带问题
·宽带大提速,手把手教你轻松优化ADSL
·宽带共享上网全面指南
·宽带共享经典问题小集
  ★快速关机会导致数据损坏?

快速关机会导致数据损坏?

添加记录: 硬件专题  类别: 电脑知识  发布日期: 2006.09.21

  安徽赵凯读者来信:“我最近下载了一款快速关机的软件,这款软件非常厉害,几乎眨眼工夫就将电脑关闭了。很多人说这个软件可能会破坏数据,但他们又没有说出相应的依据。我现在很矛盾,有了一个好东西,却又不敢用。董师傅,希望你能给一个权威的说法,以消除我的疑惑。”

  不光是赵凯读者提到的软件能实现快速关机,而且采用一些技巧也可以达到同样的目的,但这样操作究竟会带来什么后果呢?这次被师傅邀请到“话题馆”参与讨论的是对Windows系统颇有研究、荣获2004年微软最有价值专家的张康宗先生。

  从平常的经验可以看出,执行了关机操作后电脑不会立即断电,Windows还会有一系列的动作如关闭打开的程序等,那么从执行关机命令到最终断电是一个什么样的过程呢?

  Windows的正常关机涉及到多个组件和多个过程。我们来看一下它的基本过程。

  ①用户发起关机指令后,发起关机指令的程序会通知Windows子系统CSRSS.EXE,CSRSS.EXE收到通知后会和Winlogon.EXE做一个数据交换,接着由Winlogon.EXE通知CSRSS.EXE开始关闭系统的流程。

  ②CSRSS.EXE收到Winlogon.EXE的通知后,会依次查询拥有顶层窗口的用户进程,让这些用户进程退出。如果某一个用户进程在一个默认的超时时间5000毫秒(可以通过修改注册表键值HKEY_CURRENT_USERControl PanelDesktop HungAppTimeout设定超时时间)内没有退出的话,Windows会显示一个结束任务对话框用于询问用户是否结束这个任务。默认情况下这个对话框会一直显示而不会自动关闭。

  对于控制台程序来说,基本情况类似,只不过Windows使用HKEY_CURRENT_USERControl PanelDesktop WaitToKillAppTimeout来设置超时时间。

  ③接着是轮到终止系统进程了。系统进程包括SMSS.EXE、Winlogon.EXE、Lsass.EXE等。Windows在终止系统进程的时候并不像终止用户进程那样如果无法在规定时间内终止则提示用户,而是跳过这个进程,去执行下一个系统进程的终止操作。使用的超时时间和第2步使用的时间相同。

  上述3个步骤是整个Windows关机过程中最耗费时间的一段,大多数关机缓慢的原因都是因为这3个步骤引起的。完成前3个步骤后,进入关机操作的第4个阶段,这也是最后一个阶段。

  ④Winlogon.EXE调用一个原生API函数NtShutdownSystem()来命令系统执行后面的扫尾工作。在这个阶段里,Windows执行子系统会完成最后的关机操作,例如:设备驱动在这个阶段里完成一些驱动设定的特殊操作;也是在这个阶段,配置管理系统将被修改过的注册表数据回写到磁盘里面。等除了电源管理以外的全部子系统完成退出以后,电源管理完成最后的操作:如重启、关机等。

  看来Windows关机过程还挺复杂的。我也试用了刘凯读者所说的软件SuperFast Shutdown(http://www.xp-smoker.com/installations/superfast.zip),确实会让关机速度加快。另外我们知道按Ctrl键的同时,再单击任务管理器窗口中的菜单“关机→关闭”命令时,系统也会被快速关闭。它们又是如何实现快速关机的目的呢?

  我分析了一下SuperFast Shutdown,它是用Visual Basic编写的。经过分析后得出一个令人惊讶的结论:SuperFast Shutdown首先使用RtlAdjustPrivilege()提升自己的权限,然后直接调用NtShutdownSystem() 函数来完成关机过程。也就是说它跳过了最为耗费时间的前3个步骤而直接进入第4个步骤,因此能够很快关机。

  利用Ctrl键配合任务管理器的快速关机技巧类似于SuperFast Shutdown的原理,即通过省略一些步骤来加快关机的速度。

  原来它们之所以能快速关机是因为投机取巧,跳过了一些步骤。我记得当初使用Ctrl键配合任务管理器的关机技巧时,关机速度是快了,不过却出现过Office各组件中的个性设置丢失等莫名其妙的问题,这些问题和快速关机有关吗?

  毫无疑问,利用前面的方法快速关机很容易导致你所说的那些问题。这是因为在前3个步骤中,有一个让进程正常退出的过程。大多数软件在编写的时候会把一些设置保存在自己私有的内存空间里面,当软件关闭的时候才把这些设置回写到特定的地方,如注册表或某个配置文件里。

  而关机操作的第4步并没有提供一种途径能够让这些设置被记录下来,因为这个阶段Windows认为前面所有必须经过的流程已经完成,剩下的就是Windows核心组件的退出问题了。在这种情况下,使用快速关机导致软件设置丢失等现象也就不足为怪了。

  实际上Windows本身的关机速度已经很快了,关机速度变慢的多数问题都出在用户安装的程序上,由于一些设计不好的应用程序或驱动程序的问题,造成了关机上的延迟。

  因此要加快关机速度,正确的做法是尽量减少应用程序等对关机过程的影响,如关闭一些无用的自启动程序等,而借助SuperFast Shutdown或一些技巧执行非常规的关机操作尽量不要使用,毕竟数据的安全性比节省的那几十秒钟重要得多。


上一篇:快速关机的5种方法 下一篇:快速关机会导致Windows数据损坏吗?

电脑常识文选风云榜
声卡音箱 | 软驱光驱 | 打印机 | 机箱电源 | BIOS | 操作系统 | 局域网 | 浏览器 | 网卡 | 电脑死机

电脑常识文选 © 2006 版权所有

提示:本站致力于电脑使用常识,电脑故障排除,计算机使用小窍门的分享与传播,内容仅供参考,按此操作责任自负。