当前位置: 首页 > 图文教程 > 操作系统 > Windows > 快速关机会导致Windows数据损坏吗?

Windows
Windows Vista系统局域网的FTP服务器的打造
Vista下jusched.exe进程与禁用
修改注册表通过自动更新安装Vista SP2 RC
Internet Explorer 8(IE8)简体中文版de 卸载
解析Windows Vista系统中的“远程桌面”用法
UC2008聊天室在Vista系统下的立体声混音设置方法
解决催化剂8.11驱动bug导致Vista x64双卡交火蓝屏问题
丢失的Windows Vista系统声音的找回
控制Windows Vista下窗口动画速度的办法
浅谈微软和苹果各自的字体平滑,反锯齿,和次像素渲染技术
完整版的Windows Vista系统开机加速全攻略
在Vista系统下.NET开发者应该考虑的五个安全问题
Vista系统下硬盘IDE模式安装后开启AHCI的方法
让Windows Vista的资源管理器加上标题的方法
Windows Vista系统下彻底屏蔽Office正版增值计划的提示
Windows下玩转Tab 键提升电脑操作效率
Windows中盘符的管理与应用
图解Windows Vista下java环境变量的配置
AMD Fusion游戏工具在Intel平台上的运行
自己动手轻松制作闪游浏览器个性酷靓皮肤

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 154 ::
收藏到网摘: n/a

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

  不光是赵凯读者提到的软件能实现快速关机,而且采用一些技巧也可以达到同样的目的,但这样操作究竟会带来什么后果呢?这次被师傅邀请到“话题馆”参与讨论的是对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步使用的时间相同。

  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步使用的时间相同。