> Tech > Stockage stable

Stockage stable

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Pour s'assurer qu'une ruche de Registre persistante conserve un état stable, le Gestionnaire de configurations se sert de ruches de jpurnalisation. Chaque ruche persistante possède une ruche journal associée portant le même nom de base accompagné d'une extension .log.

Par exemple, si vous regardez dans votre répertoire \winnt\system32\config,

Stockage stable

vous
verrez, entre autres, les fichiers system.log, sam.log. Lors de l’initialisation
d’une ruche, le Gestionnaire de configurations alloue un groupe de bits de chacun
512 octets, ou secteur, de la ruche. Ce groupe est baptisé dirty sector array
(grappe de secteurs modifiés), parce qu’un bit on dans la grappe signifie que
le système a modifié le secteur correspondant de la ruche en mémoire et doit le
réécrire dans le fichier de la ruche. (Un bit off signifie que le secteur correspondant
est à  jour dans la ruche en mémoire).

Lors d’une opération de création d’une nouvelle clé ou valeur ou de modification
de clé ou de valeur existante, le Gestionnaire de configurations note les secteurs
qui changent dans la dirty sector array de la ruche. Puis il planifie une opération
d’écriture différée, ou hive sync. Le thread système de l’opération d’écriture
différée de la ruche se réveille 5 secondes après la demande de synchronisation
de la ruche et copie les secteurs modifiés de toutes les ruches de la mémoire
dans les fichiers ruches du disque. Ainsi le système met à  jour en même temps
toutes les modifications du Registre qui ont lieu entre le moment où la synchronisation
d’une ruche est demandée et celui où elle a lieu.
Après la synchronisation d’une ruche, la synchronisation suivante ne peut pas
avoir lieu avant un délai de 5 secondes.Si l’écriture différée se contentait d’écrire
tous les secteurs modifiés d’une ruche dans le fichier ruche, en cas de défaillance
du système en plein milieu de l’opération, le fichier ruche serait altéré et irrécupérable.

Pour empêcher cela, l’écriture différée commence par transférer la grappe de secteurs
modifiés de la ruche et tous les secteurs modifiés, dans le fichier journal de
la ruche en augmentant sa taille si nécessaire. Puis elle met à  jour un numéro
de séquence dans le bloc de base de la ruche et écrit les secteurs modifiés dans
la ruche. A la fin de l’écriture différée, elle met à  jour un deuxième numéro
de séquence dans le bloc de base.

Ainsi si le système a un problème pendant les opérations d’écriture dans la ruche,
à  la réinitialisation suivante le Gestionnaire de configurations remarquera que
les deux numéros de séquence du bloc de base de la ruche ne se correspondent pas.
Le Gestionnaire de configurations peut mettre à  jour la ruche avec les secteurs
modifiés dans le fichier journal de la ruche pour transférer la ruche. La ruche
est alors à  jour et cohérente.

Pour protéger davantage encore l’intégrité de la ruche SYSTEM si vitale, le Gestionnaire
de configurations conserve un miroir passif de la ruche SYSTEM sur le disque.
Si vous regardez votre répertoire \winnt\system32\config, vous verrez trois fichiers
avec le nom de base System : System, System.log et System.Alt. System.Alt est
la ruche alternative.
Chaque fois qu’une synchronisation de ruche vide les secteurs modifiés dans la
ruche SYSTEM, elle met également à  jour la ruche System.Alt. Si le Gestionnaire
de configurations détecte que la ruche SYSTEM est altérée, lors de l’initialisation
du système, il tente de charger la ruche de remplacement.

Téléchargez cette ressource

Préparer l’entreprise aux technologies interconnectées

Préparer l’entreprise aux technologies interconnectées

Avec la « quatrième révolution industrielle », les environnements hyperconnectés entraînent de nouveaux risques en matière de sécurité. Découvrez, dans ce guide Kaspersky, comment faire face à cette nouvelle ère de vulnérabilité.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010