首先说说ControlSet几组控制之间的关系。

     注册表HKLM\system注意 注册表项包含windows启动的三个控件组(额外还可能存在一个备份控件组)。在初始状态下。它们各自是ControlSet001
ControlSet002以及CurrentControlSet。这些控件组中包括了操作系统配置的信息,比方服务、驱动、系统控制、枚举信息等等。

默认情况下,ControlSet001是系统真实的配置信息。可是为了避免序号混乱,windows启动时会从ControlSet001复制一份副 本,作为操作系统当前的配置信息。也就是CurrentControlSet

我们对于计算机配置所作的改动都是直接写入到
CurrentControlSet,在重新启动过程中。windows会用CurrentControlSet的内容覆盖掉ControlSet001。以 保证这两个控件组一致。

     当操作系统每成功启动一次(指成功登录),它都将CurrentControlSetControlSet001中的数据拷贝到
ControlSet002中。这样,ControlSet002就成了“近期一次成功启动的配置信息”(非常熟悉吧?在启动windows前按下F8所调 出的菜单中有这个选项)。所以我们一般系统注冊表中都仅仅是有这三个控件组,而且序号都是current、001和002。(此后均用简称

     可是,这个顺序和数目不是一成不变的。改变就发生在使用过“近期一次的正确配置”之后。这个时候,系统会把002当作系统真实的配置信息。而001这个存 在问题的控件组会被备份封存起来。系统启动时会从002复制副本到current。启动成功后又会把002和current的信息复制一份到一个新的控件 组作为新的“近期一次的正确配置”,也就是003。这个时候系统就存在4个控件组:current、002、003和备份的001,这里的001是一个存 在问题的组,除非我们想把系统恢复到上次使用“近期一次正确配置”之前的状态,否则001的内容将不再被使用。

HKLM\system注冊表项中另一个select的子项,当中有几个整数键,各自是:

“Current”数据项目表示 Windows XP 在这次启动过程中使用的控件组。  

“Default”数据项目表示 Windows XP 在下次启动时将使用的控件组。它与这次启动使用的控件组同样。  

“LastKnownGood ”数据项目表示您在启动过程中选择“近期一次的正确配置”时 Windows XP 将使用的控件组。  

“Failed”数据项表示 Windows XP 在当中保存失败启动产生的数据的控件组。 此控件组在用户第一次调用“近期一次的正确配置”选项之前并不实际存在。  

相应上面。系统默认时其顺序是:001、001、002、无;

第一次使用“lastknowngood”后:002、002、003、001

第二次使用“lastknowngood”后:003、003、004、002(之前的备份001被002覆盖掉,001组消失)

第三次使用“lastknowngood”后:004、004、001、003(002被003覆盖,而当004要生成新的“lastknowngood”时。001正好可用,于是001重生。002消失)

     等等,第四次1、1、2、4,第五次2、2、3、1…………

版权声明:本文博客原创文章,博客,未经同意,不得转载。

注册表 ControlSet001、ControlSet002以及CurrentControlSet的更多相关文章

  1. 卸载oracle删除注册表脚本

    一.前言 在我们操作系统中,有时要卸载oracle数据库,每一次都要去删除win下的注册表,为了方便删除注册表的信息,下面通过一种删除注册表快捷的脚本. 二.脚本信息 Windows Registry ...

  2. 完全卸载mysql 停止服务、卸载相关程序、删除注册表

    本节主要介绍了完全卸载mysql的具体步骤包括停止服务.卸载相关程序.删除注册表等等   1. 停止服务MySQL 2. 卸载mysql相关的程序 3. 删除注册表(运行->regedit),m ...

  3. Oracle11g的注册表清理

    每次卸载了oracle总是有一堆注册表没有清理,麻烦,特地在网上找了一个较为完整的,全文复制过来,存自己这里,如下: <<< Windows Registry Editor Vers ...

  4. 10#Windows注册表的那些事儿

    引言 用了多年的Windows系统,其实并没有对Windows系统进行过深入的了解,也正是由于Windows系统不用深入了解就可以简单上手所以才有这么多人去使用.笔者是做软件开发的,使用的基本都是Wi ...

  5. 我的天$删除注册表$安装mysql最后一步不能启动服务的解决办法

    我是照着参考资料一步一步删除的,只是我的Win7 64位的电脑比较犟,硬是要我重启电脑才能成功!强烈建议最好是重启电脑再装! 使用MySQL都有过重装的经历,要是重装MySQL基本都是在最后一步通不过 ...

  6. 在防火墙的例外中注册程序(Windows7和XP),改写注册表

    在写程序的时候,经常遇到被防火墙拦截的情况,尤其是一些网络程序,不管是对外访问还是外部连接,都会被拦截. 在大多情况下,Windows会静默拦截外部对内的连接访问,而内部对外的访问会提示用户信息. 现 ...

  7. 彻底删除mysql服务(清理注册表)

    由于安装某个项目的执行文件,提示要卸载MySQL以便它自身MySQL安装,然后我禁用了MYSQL服务,再把这个文件夹删除后,发现还是提示请卸载MYSQL服务. 解决步骤: 1.以管理员身份运行命令提示 ...

  8. [转帖]Windows注册表内容详解

    Windows注册表内容详解 来源:http://blog.sina.com.cn/s/blog_4d41e2690100q33v.html 对 windows注册表一知半解 不是很清晰 这里学习一下 ...

  9. 彻底删除mysql服务(清理注册表)

    前言 由于安装某个项目的执行文件,提示要卸载MySQL以便它自身MySQL安装,然后我禁用了MYSQL服务,再把这个文件夹删除后,发现还是提示请卸载MYSQL服务. ----------------- ...

随机推荐

  1. Web服务器Raspkate的RESTful API

    基于轻量型Web服务器Raspkate的RESTful API的实现 在上一篇文章中,我们已经了解了Raspkate这一轻量型Web服务器,今天,我们再一起了解下如何基于Raspkate实现简单的RE ...

  2. Android规范发展

    一.Android 编码规范 1.java 代码中不出现中文.最多凝视中能够出现中文 2.局部变量命名.静态成员变量命名 仅仅能包括字母,单词首字母出第一个外,都为大写,其它字母都为小写 3.常量命名 ...

  3. kindeditor-网页文字编辑

    实例下载地址:http://download.csdn.net/download/l294333475/7941759 <!DOCTYPE html PUBLIC "-//W3C//D ...

  4. 3Dmax+blend+WPF综合运用

    原文:3Dmax+blend+WPF综合运用 赛后总结 本人小菜,WPF刚入门,只是写一下最近的项目心得.欢迎各位前辈们前来拍砖指正,感激不敬!先申明,小弟我入门仓促,很多东西也是一知半解,所以很多问 ...

  5. Windows Server 2012 R2在桌面上显示计算机/网络图标

    原文 Windows Server 2012 R2在桌面上显示计算机/网络图标 从Windows2012开始,微软取消了服务器桌面个性化选项,如何重新调出配置界面,可以使用微软命令调出.具体方法如下: ...

  6. Oracle在不同的语言环境结果to_date错误的问题

    我写了一个存储过程,它使用了功能,有一些功能to_date(dateFrom, 'yyyy/mm/dd').执行发现数据插入错误后,数据插入"0001/9/14". 感觉莫名其妙, ...

  7. 《深入了解mybatis原则》 MyBatis架构设计和案例研究

    MyBatis这是现在很流行ORM框架,这是非常强大.事实上现却比較简单.优雅. 本文主要讲述MyBatis的架构设计思路,而且讨论MyBatis的几个核心部件.然后结合一个select查询实例.深入 ...

  8. MFC调试小技巧

    今天看acl源码的时候看到一个函数AllocConsole().百度一下感觉这个函数对于调试非常不错,当然对于MFC里面的调试信息,我都是用TRACE打印自己感兴趣的消息的,而且仅仅有在DEBUG里面 ...

  9. Nginx得知——Hello World模

     Hello World HTTP模 1.构造config ngx_addon_name=ngx_http_mytest_module HTTP_MODULES="$HTTP_MODUL ...

  10. cocos2dx-3.0(13)------SpriteBatchNode与SpriteFrameCache渲染速度

    大家都知道一个游戏里面会有大量的图片,每一个图片渲染是须要时间的,以下分析两个类来加快渲染速度,加快游戏执行速度          一.SpriteBatchNode          1.先说下渲染 ...