¿Cuáles son las diferencias entre los múltiples ControlSets en el registro de Windows?

11

Hay varias ramas con "ControlSet" en sus nombres debajo HKEY_LOCALMACHINE\SYSTEM.

¿Cuáles son las diferencias fundamentales entre la forma en que Windows usa estas 3 teclas?

HKLM\System\ControlSet001
HKLM\System\ControlSet002
HKLM\System\CurrentControlSet
Moab
fuente

Respuestas:

8

Microsoft lo dice mejor en KB100010

Volviendo a Windows (creo que 95), puede configurar cualquier controlador / componente de hardware para que funcione solo en un cierto modo de configuración, que fue seleccionable por el usuario al inicio.

Por defecto, tienes

\ ControlSet001 - Último arranque

\ ControlSet002 - Configuraciones buenas conocidas

\ CurrentControlSet - Arranque actual

Editar -

Parece que esto se sacó recientemente, personalmente nunca lo he usado desde 95, sin embargo, encontré un buen sitio que puede mostrarlo desde Windows XP .

De las propiedades del sistema:

ingrese la descripción de la imagen aquí

Y del administrador de dispositivos:

ingrese la descripción de la imagen aquí

William Hilsum
fuente
Win95, eres viejo ....; -> Soy viejo pero comencé con W98SE, luego, poco después de XP, perdí los buenos días.
Moab
@Moab - -1 si puedo ... ¡no soy tan viejo! ... ¡recién comencé con computadoras muy jóvenes!
William Hilsum
3
Sí debe haber por votos para comentarios como el mío ....
Moab
1
@Moab - ¡actualizado con un muy buen enlace e imágenes!
William Hilsum
4

Windows mantiene al menos dos ControlSetentradas en el registro. Es probable que tenga ControlSet001y uno (o posiblemente ambos) de ControlSet002o ControlSet003.

No hay diferencia significativa entre estos; contienen información vital sobre el hardware, los servicios y otras configuraciones del sistema necesarias para arrancar y ejecutar el sistema, y ​​generalmente son idénticos.

El CurrentControlSetelemento es el más fácil de describir: simplemente está mapeado en el que ControlSet###esté usando actualmente, al igual que el HKEY_CURRENT_USERmapeo a cualquier usuario de la HKEY_USERSsucursal que esté actualmente activo. Naturalmente, cualquier cambio que realice CurrentControlSetse escribirá en el conjunto al que está asignado.

La razón por la que tiene múltiples conjuntos de control es que cuando realiza un cambio en el funcionamiento del sistema, especialmente en el hardware, existe la posibilidad de que no funcione. Si solo hubiera una copia de la información requerida para arrancar, y falla, entonces estaría en problemas porque requeriría mucho trabajo (y al menos un sistema operativo separado, si no un sistema completo) para tratar de arreglar las cosas. . En cambio, se realizan cambios en un conjunto de control, y si Windows no puede iniciarse correctamente, puede reiniciar utilizando el otro conjunto de control previo al cambio. De esa forma, al menos, volverá a funcionar rápidamente para poder utilizar el sistema (e Internet) para descubrir cuál era el problema.

Cuando no logras arrancar correctamente, los cambios se escriben en la otra copia, lo que mantiene al día (creo que sucede en el apagado o en algún momento, simplemente no inmediatamente después de un arranque aparentemente exitosa, ya que puede o no tener en realidad ha sido exitoso).

Algunas personas interpretan erróneamente los dos conjuntos de control como el "normal" y el "de respaldo". Esto es cierto en cierto sentido, sin embargo, en realidad, puede estar arrancando desde cualquiera. No hay un conjunto primario o secundario, y se pueden reciclar. En otras palabras, si usó normalmente ControlSet001, tuvo un inicio fallido, ahora puede estar utilizando ControlSet002/003normalmente hasta la próxima vez que tenga un inicio fallido, momento en el que volvería a cambiar.

Synetech
fuente