注册表 ControlSet001、ControlSet002以及CurrentControlSet 详解
注册表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的内容将不再被使用。
转载自:(https://blog.csdn.net/yangowen/article/details/129062138)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义