一个 control set 包含系统配置信息,例如设备驱动和服务。在查看注册表时,可能会看到多个 control sets。一些是其他的拷贝或者镜像,一些是单独的。
control sets 在 HKEY_LOCAL_MACHINE\SYSTEM
子键下,可能有多个 control sets,具体取决于更改系统设置的频率或选择的设置出现问题的频率。通常会有以下四个
\ControlSet001
\ControlSet002
\CurrentControlSet
\Clone
ControlSet001
可能是启动时最后使用的控制集。
ControlSet002
可能是最后一次已知的良好的控制集,或者是上次成功启动 Windows NT 的控制集。
CurrentControlSet
子项实际上是指向其中一个 ControlSetXXX
键的指针。
Clone
是 CurrentControlSet
的克隆,每次启动计算机时都会通过内核初始化进程创建它。
为了更好地理解这些控件集的使用方式,需要了解另一个子项 Select
。
Select
子项也在 SYSTEM
子键下面,Select
子键包含以下名称
Current
Default
Failed
LastKnownGood
这些值中的每一个都包含 REG_DWORD
数据类型,并特指一个控制集。例如,如果 Current
值设置为 0x1
,则 CurrentControlSet
指向 ControlSet001
。类似地,如果 LastKnownGood
设置为 0x2
,则最后一个已知良好控制集是 ControlSet002
。Default
值通常与 Current
一致,Failed
指的是无法成功启动 Windows NT 的控制集。
最有价值和最可靠的控制集是 CurrentControlSet。如果需要修改注册表中的系统设置,CurrentControlSet
是最好的选择,因为知道它是正确的控制集。并且如果修改损害了系统配置,仍然可以使用最后一次已知的良好控制集进行引导。
如果不确定在控制集下的何处查找特定参数,可以使用注册表编辑器的“查看”菜单下的“查找键”选项。每个控制集包含两个子项:Control
和 Services
。Control
包含各种系统信息,例如页面文件的大小和位置。Services
包含设备驱动程序信息,例如文件系统驱动程序、内核驱动程序以及每个设备的状态信息。
参考链接
- https://web.archive.org/web/20150217152952/http://support.microsoft.com/kb/100010