Gérer le magasin de composants

« Pourquoi WinSxS est-il si grand ? » a été demandé par de nombreux utilisateurs Windows. Bien que cette question ait été abordée dans les billets de blog, cette rubrique aborde un peu plus en détail les concepts sous-jacents au magasin de composants (en particulier le dossier WinSxS), puis fournit des liens vers des rubriques qui mettent en évidence les moyens de mieux gérer la taille du dossier WinSxS.

La réponse courte est que le dossier WinSxS n’est pas aussi volumineux qu’il peut apparaître à première vue, car les calculs de taille peuvent inclure des fichiers binaires Windows situés ailleurs, ce qui rend le dossier WinSxS plus grand qu’il ne l’est réellement.

Magasin de composants Windows et dossier WinSxS

Le dossier WinSxS se trouve dans le dossier Windows, par exemple c:\Windows\WinSxS. Il s’agit de l’emplacement des fichiers du Magasin de composants Windows. Le magasin de composants Windows est utilisé pour prendre en charge les fonctions nécessaires à la personnalisation et à la mise à jour de Windows. Voici quelques exemples d’utilisation des fichiers du magasin de composants Windows :

  • L’utilisation de Windows Update pour installer de nouvelles versions de composant. Cela permet de maintenir la sécurité et la mise à jour des systèmes.

  • Activation ou désactivation des fonctionnalités Windows.

  • Ajout de rôles ou de fonctionnalités à l’aide de Gestionnaire de serveur.

  • Déplacement de systèmes entre différentes éditions de Windows.

  • Récupération du système en cas d’endommagement ou d’échecs de démarrage

  • Désinstallation des mises à jour problématiques

  • Exécution de programmes à l’aide d’assemblys côte à côte

Le magasin de composants Windows a été introduit pour la première fois dans Windows XP pour prendre en charge les assemblys côte à côte. À compter de Windows Vista, le magasin de composants a été amélioré pour suivre et traiter tous les composants qui composent le système d’exploitation. Ces différents composants du système d’exploitation effectuent le suivi d’objets tels que des fichiers, des répertoires, des clés de Registre et des services. Des versions spécifiques des composants sont ensuite collectées ensemble dans des packages. Les packages sont utilisés par Windows Update et DISM pour mettre à jour Windows. Les composants et packages utilisés dans une installation windows sont traités par le magasin de composants Windows. La détermination de la taille du magasin de composants Windows est compliquée par le fait que de nombreux fichiers sont utilisés par Windows à partir de répertoires en dehors du magasin de composants Windows à l’aide d’une technique appelée liaison matérielle. Dans ce cas, les fichiers d’une version de composant apparaissent à la fois à l’intérieur et à l’extérieur du Magasin de composants Windows. En utilisant la liaison matérielle , Windows peut sembler conserver plusieurs copies du même fichier sans réellement prendre l’espace supplémentaire pour plusieurs copies.

Un lien physique est un objet de système de fichiers qui permet à deux fichiers de faire référence au même emplacement sur le disque. Cela signifie que plusieurs fichiers peuvent faire référence aux mêmes données et que les modifications apportées à ces données dans un fichier sont répercutées dans les autres fichiers. Cela complique les notions de taille de répertoire, comme cela peut être vu dans l’exemple suivant :

  1. Le répertoire A comporte trois fichiers : 1.txt, 2.txt et 3.txt

  2. Le répertoire B contient un fichier : 4.txt

  3. Les fichiers 1.txt et 2.txt sont liés en dur et contiennent 1 Mo de données.

  4. Les fichiers 3.txt et 4.txt sont également liés en dur et contiennent 2 Mo de données.

Exemple de liens physiques

Dans cet exemple, vous pouvez voir que les liens physiques permettent à plusieurs fichiers de faire référence au même jeu de données.

Quelle est la taille du répertoire A ?

La réponse dépend de ce que vous prévoyez de faire avec le répertoire A :

  1. Si vous lisez les fichiers dans le répertoire A, la taille de tous les fichiers lus correspond à la somme de chaque taille de fichier. Dans cet exemple, ce serait 4 Mo.

  2. Si vous copiez tous les fichiers du répertoire A vers un nouvel emplacement, la quantité de données copiées correspond à la somme de toutes les données liées en dur à partir des fichiers. Dans cet exemple, ce serait 3 Mo.

  3. Si vous essayez de libérer de l’espace en supprimant le répertoire A, vous verrez uniquement une réduction de la taille des fichiers qui sont liés en dur uniquement par le répertoire A. Dans cet exemple, cela équivaut à une économie de 1 Mo.

Revenez à la question de l’espace utilisé par le magasin de composants Windows, et en particulier le dossier WinSxS. La troisième réponse dans l’exemple de répertoire A correspond le plus étroitement à la quantité d’espace supplémentaire utilisée. Les fichiers liés en dur au reste du système sont requis pour les opérations système. Ils ne doivent donc pas être comptés, et les fichiers liés à plusieurs emplacements dans le magasin de composants doivent uniquement avoir la taille stockée sur disque.

Gestion du magasin de composants Windows

Vous pouvez utiliser de nouvelles fonctionnalités dans Windows 8.1 et Windows Server 2012 R2 pour gérer le magasin de composants Windows :

Déterminer la taille réelle du dossier WinSxS

Nettoyer le dossier WinSxS

Réduire la taille du magasin de composants dans une image Windows hors connexion

Où est allé mon espace ? (publication de blog)

En savoir plus sur les liens physiques

Billet de blog sur les métafichiers NTFS