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

更新日期:2024-06-26 20:33

来源:互联网

在注册表编辑时,我们经常会在HKEY_LOCAL_MACHINE\SYSTEM下看到ControlSet001、ControlSet002、CurrentControlSet等几个项。展开后发现它们的数据相似,那么这几个项到底有什么作用呢?它们又有什么关联呢?让我们来详细探讨一下。

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

ControlSet001、ControlSet002以及CurrentControlSet的作用是什么呢?这些控件组包含了操作系统配置的信息,比如服务、驱动、系统控制、枚举信息等等。

那么,ControlSet001、ControlSet002以及CurrentControlSet之间是如何关联的呢?在默认情况下,ControlSet001是系统真实的配置信息。为了避免混乱,Windows在启动时会从ControlSet001复制一份副本作为当前的配置信息,即CurrentControlSet。我们对计算机配置所做的改动都直接写入到CurrentControlSet中,在重新启动过程中,Windows会用CurrentControlSet的内容覆盖掉ControlSet001,以保证这两个控件组一致。每次操作系统成功启动一次(成功登录),它都会将CurrentControlSet和ControlSet001中的数据拷贝到ControlSet002中,这样ControlSet002就成了“近期一次成功启动的配置信息”。

在系统注册表中通常只有这三个控件组,序号分别为Current、001和002。但是,使用“近期一次正确配置”后会发生改变。系统会把ControlSet002当作真实的配置信息,而存在问题的ControlSet001会被备份封存起来。这样系统就会存在四个控件组:Current、002、003和备份的001。这种变化会持续下去,使得控件组的顺序和数目不断变化。

除了上述内容,系统注册表中还有一个select的子项,包含几个整数键:“Current”表示WindowsXP在这次启动过程中使用的控件组,“Default”表示下次启动时将使用的控件组,“LastKnownGood”表示选择“近期一次正确配置”时将使用的控件组,“Failed”表示保存失败启动数据的控件组。这些信息可以帮助我们更好地理解系统注册表的知识。

通过以上内容的润色,希望能够帮助读者更清晰、更具体地理解ControlSet001、ControlSet002和CurrentControlSet之间的关系,以及系统注册表的运行机制。