Quelles sont les différences entre les multiples ControlSets dans le registre Windows?

11

Il y a plusieurs branches avec "ControlSet" dans leurs noms sous HKEY_LOCALMACHINE\SYSTEM.

Quelles sont les différences fondamentales entre la façon dont Windows utilise ces 3 touches?

HKLM\System\ControlSet001
HKLM\System\ControlSet002
HKLM\System\CurrentControlSet
Moab
la source

Réponses:

8

Microsoft le dit mieux dans KB100010

Pour en revenir à Windows (je pense 95), vous pouvez définir n'importe quel pilote / composant matériel pour fonctionner uniquement dans un certain mode de réglage, qui était sélectionnable par l'utilisateur au démarrage.

Par défaut, vous avez

\ ControlSet001 - Dernier démarrage

\ ControlSet002 - Bons paramètres connus

\ CurrentControlSet - Démarrage actuel

Éditer --

Il semble que cela n'ait été retiré que récemment, je ne l'ai jamais utilisé depuis 95, cependant, j'ai trouvé un bon site qui peut vous le montrer à partir de Windows XP .

Depuis les propriétés du système:

entrez la description de l'image ici

Et depuis le gestionnaire de périphériques:

entrez la description de l'image ici

William Hilsum
la source
Win95, vous êtes vieux ....; -> Je suis vieux mais j'ai commencé avec W98SE, puis peu de temps après XP, j'ai raté le bon vieux temps.
Moab
@Moab - -1 si je peux ... je ne suis pas si vieux! ... je viens de commencer avec des ordinateurs très jeunes!
William Hilsum
3
Oui, il devrait y avoir des votes négatifs pour des commentaires comme le mien ....
Moab
1
@Moab - mis à jour avec un très bon lien et des photos!
William Hilsum
4

Windows conserve au moins deux ControlSetentrées dans le Registre. Vous aurez probablement ControlSet001et un (ou peut-être les deux) ControlSet002ou ControlSet003.

Il n'y a pas de différence significative entre ceux-ci; ils contiennent des informations vitales sur le matériel, les services et les autres paramètres système de votre système nécessaires au démarrage et à l'exécution du système, et sont généralement identiques.

L' CurrentControlSetélément est le plus facile à décrire: il est simplement mappé sur celui que ControlSet###vous utilisez actuellement, tout comme le HKEY_CURRENT_USERmappage sur l'utilisateur de la HKEY_USERSbranche actuellement actif. Naturellement, toutes les modifications apportées CurrentControlSetseront écrites dans l'ensemble auquel elles sont mappées.

La raison pour laquelle vous disposez de plusieurs jeux de contrôles est que lorsque vous modifiez le fonctionnement du système, en particulier le matériel, il est possible que cela ne fonctionne pas. S'il n'y avait qu'une seule copie des informations nécessaires pour démarrer, et qu'elle échoue, alors vous auriez des ennuis car cela nécessiterait beaucoup de travail (et au moins un système d'exploitation séparé, sinon un système entier) pour essayer de réparer les choses . Au lieu de cela, des modifications sont apportées à un jeu de contrôles, et si Windows ne peut pas démarrer correctement, vous pouvez redémarrer à l'aide de l'autre jeu de contrôles pré-modification. De cette façon, au moins, vous vous remettez rapidement en marche pour pouvoir utiliser le système (et Internet) pour déterminer quel était le problème.

Lorsque vous ne parvenez à démarrer correctement, les modifications sont écrites à l'autre copie, gardant ainsi à jour (je crois qu'il arrive à l' arrêt ou à un moment donné, il suffit de ne pas immédiatement après un démarrage apparemment réussi car il peut ou peut ne pas avoir effectivement réussi).

Certaines personnes interprètent à tort les deux ensembles de contrôle comme étant «l'un normal» et «l'un de secours». Cela est vrai dans un sens, mais en réalité, vous pouvez démarrer à partir de l'un ou l'autre. Il n'y a pas d'ensemble primaire ou secondaire et ils peuvent être cyclés. En d'autres termes, si vous l'avez utilisé normalement ControlSet001, puis ControlSet002/003que vous avez échoué , vous pouvez maintenant l'utiliser normalement jusqu'à la prochaine fois que vous avez échoué et à quel moment vous devez revenir en arrière.

Synetech
la source