Le Registre est la base de données centralisée des configurations de Windows NT
et des applications. Il stocke des informations sur les paramètres d'optimisation,
la configuration des périphériques et les préférences des utilisateurs.
Il existe de nombreux ouvrages et articles, utiles pour apprendre comment s'organise
l'agencement logique du Registre, où sont stockés les paramètres de configuration
spécifiques, quelles valeurs ces paramètres peuvent contenir et ce qui se passe
quand on les modifie. Mais tous ces documents n'expliquent pas comment NT gère
physiquement le Registre.
En d'autres termes comment NT et Windows 2000 organisent le Registre sur le disque,
comment ils localisent et récupèrent les informations et quelles mesures ils emploient
pour protéger cette base de données si vitale à leur fonctionnement.Cet article
va expliquer comment le Gestionnaire de configurations - le sous-système du kernel
qui met en oeuvre le Registre - organise les fichiers du Registre sur le disque,
comment il gère le Registre lorsque des applications ou d'autres composants de
l'OS lisent et changent les clés et les valeurs du Registre.
Enfin, nous évoquerons les mécanismes dont le Gestionnaire de configurations se
sert pour maintenir constamment le Registre dans un état récupérable, même en
cas de crash du système pendant une modification. Pour tirer le plus grand parti
de cet article, vous devez vous familiariser avec l'organisation logique du Registre,
y compris les concepts de clé racine, sous-clé et valeurs.
Si vous ne maîtrisez pas ces notions, je vous conseille de lire d'abord l'article
" Entrez dans le Registre de Windows NT " de notre numéro de septembre 1997.
Sur le disque, le Registre n'est pas simplement un grand fichier,
mais un ensemble discontinu de fichiers baptisés ruches
Voyage au coeur du Registre
Sur le disque, le Registre n’est pas simplement un grand fichier, mais un ensemble
discontinu de fichiers baptisés ruches. Chaque ruche contient une arborescence
du Registre possédant une clé servant de racine (c’est-à -dire de point de départ).
Les sous-clés et leurs valeurs résident sous la racine. On pourrait penser que
NT stocke chaque clé racine que l’on voit en exécutant l’un des éditeurs de Registre
(regedit ou regedt32) dans une ruche distincte, mais ce n’est pas le cas.
Il n’y a pas de corrélation directe entre les clés affichées par regedit et le
contenu des ruches comme le montre le tableau 1.
En fait, aucune des clés racines ne correspond aux ruches. Le tableau 2 énumère
les ruches du Registre et leurs noms de fichiers sur disque. Notez que les noms
n’ont pas d’extensions. L’absence de fichiers correspondants signifie que les
clés racines logiques sont des objets sans représentation sur le disque. Le Gestionnaire
de configurations crée les clés racines en reliant les ruches les unes aux autres
pour donner la structure de Registre affichée par regedit.
Les tableaux 1 et 2 montrent que certaines ruches sont non persistantes (ou volatiles)
et n’ont pas de fichiers associés.
Le système crée et gère entièrement ces ruches dans la mémoire ; elles sont donc
de nature provisoire. Le système crée des ruches volatiles chaque fois qu’il boote.
La ruche HKEY_LOCAL_MACHINE\HARDWARE, qui stocke des informations sur les périphériques
physiques et les ressources qui leur sont affectées, en est un exemple. L’affectation
des ressources et la détection du matériel ont lieu à chaque réinitialisation
du système, il est donc logique de ne pas stocker ces données sur le disque.Le
coeur du Registre est la ruche HKEY_LOCAL_MACHINE\SYSTEM. En particulier la sous-clé
\CurrentControlSet\Control de cette ruche contient des paramètres que le Gestionnaire
de configurations utilise pour initialiser le Registre.
Lorsque le Gestionnaire de configurations initialise des ruches et a besoin de
localiser leurs fichiers, il se réfère à la valeur HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist.Un
type de clé particulier, connu sous le nom de lien symbolique, permet au Gestionnaire
de configurations de relier des ruches pour organiser le Registre. Un lien symbolique
est une clé qui redirige le Gestionnaire de configurations vers une autre clé.
Par exemple la clé HKEY_LOCAL_MACHINE\SAM est un lien symbolique vers la clé qui
est à la racine de la ruche SAM.
Téléchargez cette ressource
Livre blanc Sécurité et Stockage des documents
Découvrez dans ce livre blanc Kyocera les outils logiciels qui permettent une approche holistique et efficace de la collecte, du stockage, de la gestion et de la sécurisation des documents en entreprise.