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

Windows
Windows Server 2008-打印服务器平台
为你的Windows 7减肥
小块头有大能耐:Windows系统记事本的实用技巧
win7快捷键大集合
Windows 7的安全功能介绍
以win7为例谈NTFS的高级特性和应用
教你用好你的任务管理器
怎样才能在安装系统后不安应用软件
怎样拿出已坏c盘里的重要文件
如何有效利用系统中自带的记事本功能
应用程序总是不能完全卸载怎么办?
Windows7升级限制比Windows Vista宽松
解决Windows7系统玩不了QQ游戏的问题
Windows任务栏中图标突然不见了怎么办
Windows 7变得更加安全
winXP远程控制技术汇总
Windows7系统的Powershell命令
字体下载:网页设计中的手写字体
Windows 2008的高级安全防火墙功能
Windows 2008数据执行保护功能应用

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 71 ::
收藏到网摘: 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步使用的时间相同。