找回密码
 立即注册

QQ登录

只需一步,快速开始

教程经验总索引TVMW5/小日本5 索引【视频转换】小日本4/TE4XP 索引【视频转换】TAW4 / TDA3 索引【DVD打包软件】
Nero 索引DVD-Lab 索引【DVD打包软件】编解码器 索引 【必读】固顶帖011号
查看: 3294|回复: 0

关于ControlSet001、ControlSet002 和 CurrentControlSet 的区别

[复制链接]

9333

威望

820

金钱

1万

贡献

管理员

自由的灵魂

积分
100460
主题
5590
回帖
26311
注册时间
2003-4-10
最后登录
2024-11-24
发表于 2009-2-4 17:34:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
并非原创,不过这文章已经给很多人改过名字了,也不晓得谁才是真正的主人, 不过得感谢这个人,呵呵.刚好想了解这方面的信息里找到了它:

      早想写点关于注册表的东西,苦于这方面比较枯燥,加上本人水平不高,怕写不好被人拍砖。不过有些好玩的小知识还是可以写写的,不会那么枯燥。积少成多,希望可以持续下去。
1.先说一下ControlSet几个控件组之间的关系。
     在注册表HKLM\system注册表项中包括用于windows启动的三个控件组(额外还可能存在一个备份控件组),在初始状态下,它们分别是ControlSet001、ControlSet002以及CurrentControlSet。这些控件组中包含了操作系统配置的信息,比如服务、驱动、系统控制、枚举信息等等。
     默认情况下,ControlSet001是系统真实的配置信息,但是为了避免序号混乱,windows启动时会从ControlSet001复制一份副本,作为操作系统当前的配置信息,也就是CurrentControlSet。我们对于计算机配置所作的修改都是直接写入到CurrentControlSet,在重启过程中,windows会用CurrentControlSet的内容覆盖掉ControlSet001,以保证这两个控件组一致。
     当操作系统每成功启动一次(指成功登录),它都将CurrentControlSet和ControlSet001中的数据复制到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…………
     根据上面的介绍,大概有个深入了解了吧?想一想,如果我们想把failed还原,该怎么做?嘿嘿。
IsaacZ的发言中如果提到任何字母缩写或专有名词,在本论坛中一般都能搜索到。点此立即搜索点拨论坛。如有搜索不到的,请尝试搜索百度百科,或者跟帖提问。
发帖前请注意看置顶帖。如果你发现自己的问题没有得到回答,说明你的问题提错了地方或者提问前未先阅读版规。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|点拨论坛 |网站地图

GMT+8, 2024-11-25 07:51 , Processed in 0.081617 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表