我最近下载了一款快速关机的软件,这款软件非常厉害,几乎眨眼工夫就将电脑关闭了。很多人说这个软件可能会破坏数据,但他们又没有说出相应的依据……
快速关机是否会导致数据损坏(上)
读者来信:“我最近下载了一款快速关机的软件,这款软件非常 厉害,几乎眨眼工夫就将电脑关闭了。很多人说这个软件可能会 破坏数据,但他们又没有说出相应的依据。我现在很矛盾,有了 一个好东西,却又不敢用。董师傅,希望你能给一个权威的说法 ,以消除我的疑惑。”
不光是赵凯读者提到的软件能实现快速关机,而且采用 一些技巧也可以达到同样的目的,但这样操作究竟会带来什么后 果呢?这次被师傅邀请到“话题馆”参与讨论的是对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个阶段,这也是最后一个阶段。
网友评论