Comprendre HKLM\SYSTEM \CurrentControlSet dans Windows

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet est une clé importante du registre Windows qui contient les informations matériels, services et éléments de configuration de Windows.

Sa structure est un peu spécifique.

Voici un descriptif du contenu des clés HKEY_LOCAL_MACHINE\SYSTEM\Chttps://www.malekal.com/wp-content/uploads/2010/11/Registre_SYSTEM_Hardware_Profiles2.jpgurrentControlSet.

Le fonctionnement de CurrentControlSet

Cette emplacement du registre Windows possède beaucoup de sous-clés.
Beaucoup sont liés à des aspects matériels ou de fonctionnement des services Windows.

A noter la clef suivante définit les chemins des ruches (hivelist) du registre Windows : HKEY_CURRENT_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist

Control\hivelist stocke les chemins des ruches du registre windows

La page suivante les aborde de manière plus en détails : Les ruches du registre Windows

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum

Elle contient la liste des clefs des périphériques Plug and Play qui sont associées à des drivers.
Certaines de ces informations sont accessibles depuis le gestionnaire de périphériques de Windows.

La clé Hkey_Local_Machine\System\Enum stocke les données matériels de Windows

On trouve alors des sous-clés liés aux différents matériels.
Par exemple, Display stocke les données de configuration de l'écran.
La clé USB contient les données des HUBS USB.
Bien entendu, il est plus simple d'utiliser le gestionnaire de périphériques pour lister le matériel de son PC.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\CurrentControlSet\Services

Contient les informations relatifs aux Services Windows.

Pour plus d'informations, se reporter à la page : Processus et Services Windows

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles

Contient les informations relatives aux profils matériels, ces derniers peuvent configurer depuis :

Le panneau de configuration => Système => onglet Matériel et en bas boutons "Profils Matériels".

Clé Hkey_Local_Machine\System\Hardware_Profiles et le profil matériel

Au démarrage on choisit alors le profil matériel sur lequel on souhaite booter.

Clé Hkey_Local_Machine\System\Hardware_Profiles et le profil matériel

Les Jeux de Control (ControlSet)

Il existe des jeux de Control qui permettent d'assurer le succès du démarrage de Windows.
Ce système offre l'option "Dernière bonne configuration connue" lorsque l'on appuie sur la touche F8 avant le logo Windows.

La clef HKEY_LOCAL_MACHINE\SYSTEM\Select définit le jeu de ControlSet à travers les clefs suivantes :

  • Current : qui désigne le ControlSet utilisé
  • Failed : le ControlSet endommagé, c'est le Control utilisé avant de de basculer sur celui du "dernière bonne configuration connue"
  • LastKnownGood : définit le ControlSet fonctionnel et qui sera utilisé par l'option "dernière bonne configuration connue.

Dans la capture d'écran ci-dessus, on voit que

  • le ControlSet utilisé est le 1 (donc ControlSet001)
  • celui de la dernière bonne configuration connue est ControlSet003.
  • Enfin CurrentControlSet est une copie de HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003
ControlSet dans le registre Windows

Démarrons Windows sur "Dernière bonne configuration connue"

ControlSet dans le registre Windows

On observe que le CurrentControlSet est devenu le ControlSet003 (Current étant à 3) et que le ControlSet001 (Ancien Current) est marqué en Failed.
Enfin une copie du ControlSet003 à été faite en ControlSet002 et est utilisé en LastKnownGood.

Le ControlSet002 sera mis à jour par rapport au ControlSet003 à chaque fois que le démarrage de Windows aura réussi.

ControlSet dans le registre Windows

Dans Windows 10, ce système ne semble plus présent du fait que la touche F8 ne fonctionne plus mais surtout que ce dernier entre en réparation.
Cela donne accès aux options de dépannage et de récupération.

ControlSet dans le registre Windows

En tous les cas, au démarrage de Windows 10, l'option de démarrage sur la dernière configuration connue n'existe plus.

Windows 10 ne propose plus l'option "dernière configuration connue"