注册表ControlSet001、ControlSet002、CurrentControlSet三个项的作用及关系

更新日期:2024-09-13 17:29

来源:互联网

  在注册表编辑的过程中,我们常常会看到HKEY_LOCAL_MACHINESYSTEM下存在着ControlSet001、ControlSet002和CurrentControlSet几个项。展开后发现它们的数据基本相似,那么这些项到底有什么作用呢?它们之间又有着怎样的关联呢?接下来我将详细分享相关知识。

注册表ControlSet001、ControlSet002、CurrentControlSet三个项的作用及关系

  【1】ControlSet001、ControlSet002以及CurrentControlSet包含了操作系统配置的关键信息,比如服务、驱动、系统控制和枚举信息等。它们是系统配置的重要组成部分。

  【2】ControlSet001默认是系统真实的配置信息。但为了避免混乱,Windows启动时会从ControlSet001复制一份副本作为当前操作系统的配置信息,即CurrentControlSet。我们所做的任何配置更改都会直接写入CurrentControlSet中,在重新启动过程中,Windows会使用CurrentControlSet的内容覆盖ControlSet001,以确保两者的一致性。

  【3】每次操作系统成功启动(成功登录)后,它会将CurrentControlSet和ControlSet001中的数据复制到ControlSet002中。这样,ControlSet002就成为了“最近一次成功启动的配置信息”。在启动Windows前按下F8键会调出菜单,其中就包括这个选项。

  系统注册表中通常只包含这三个控件组:Current、001和002。但这种顺序和数量并非固定不变。在使用“最近一次正确配置”后,系统会将002视为真实配置信息,而将存在问题的001备份封存起来。系统会不断更新控件组,以保持配置的完整性。

  系统注册表中的另一个关键子项是select,其中包含了几个整数键:Current代表本次启动所使用的控件组,Default代表下次启动将使用的控件组,LastKnownGood代表选择“最近一次正确配置”时将使用的控件组,Failed代表系统保存失败启动数据的控件组等。

  我们更深入地了解了系统注册表的知识,希望这些信息对您有所帮助。