Gerenciar o Repositório de Componentes

"Por que o WinSxS é tão grande?" foi solicitado por muitos usuários do Windows. Embora essa pergunta tenha sido discutida em postagens de blog, este tópico entra em um pouco mais de detalhes sobre os conceitos por trás do repositório de componentes (especificamente a pasta WinSxS) e fornece links para tópicos que realçam maneiras de gerenciar melhor o tamanho da pasta WinSxS.

A resposta curta é que a pasta WinSxS não é tão grande quanto pode aparecer à primeira vista porque os cálculos de tamanho podem incluir binários do Windows localizados em outro lugar, o que faz com que a pasta WinSxS pareça maior do que realmente é.

O repositório de componentes do Windows e a pasta WinSxS

A pasta WinSxS está localizada na pasta Windows, por exemplo , c:\Windows\WinSxS. É o local para arquivos do Repositório de Componentes do Windows. O Repositório de Componentes do Windows é usado para dar suporte às funções necessárias para a personalização e atualização do Windows. Aqui estão alguns exemplos de como os arquivos do Repositório de Componentes do Windows são usados:

  • Usando Windows Update para instalar novas versões de componente. Isso mantém os sistemas seguros e atualizados.

  • Habilitar ou desabilitar recursos do Windows.

  • Adicionar funções ou recursos usando Gerenciador do Servidor.

  • Movendo sistemas entre diferentes Edições do Windows.

  • Recuperação do sistema de falhas de corrupção ou inicialização

  • Desinstalando atualizações problemáticas

  • Executando programas usando assemblies lado a lado

O Repositório de Componentes do Windows foi introduzido pela primeira vez no Windows XP para dar suporte a assemblies lado a lado. A partir do Windows Vista, o repositório de componentes foi aprimorado para acompanhar e atender a todos os componentes que compõem o sistema operacional. Esses diferentes componentes do sistema operacional rastreiam objetos como arquivos, diretórios, chaves do Registro e serviços. As versões específicas dos componentes são coletadas juntas em pacotes. Os pacotes são usados por Windows Update e DISM para atualizar o Windows. Os componentes e pacotes usados em uma instalação do Windows são processados pelo Repositório de Componentes do Windows. Determinar o tamanho do Repositório de Componentes do Windows é complicado pelo fato de que muitos dos arquivos são usados pelo Windows de diretórios fora do Repositório de Componentes do Windows usando uma técnica conhecida como vinculação rígida. Nesses casos, os arquivos de uma versão de componente aparecem dentro e fora do Repositório de Componentes do Windows. Usando a vinculação rígida , o Windows pode parecer manter várias cópias do mesmo arquivo sem realmente ter o espaço adicionado para várias cópias.

Um link rígido é um objeto do sistema de arquivos que permite que dois arquivos se refiram ao mesmo local no disco. Isso significa que mais de um arquivo pode se referir aos mesmos dados e as alterações a esses dados em um arquivo são refletidas nos outros arquivos. Isso complica as noções de tamanho do diretório, como pode ser visto usando o seguinte exemplo:

  1. O diretório A tem três arquivos: 1.txt, 2.txt e 3.txt

  2. O diretório B tem um arquivo: 4.txt

  3. Os arquivos 1.txt e 2.txt são vinculados e contêm 1 MB de dados.

  4. Os arquivos 3.txt e 4.txt também são vinculados e contêm 2 MB de dados.

exemplo de links rígidos

Neste exemplo, você pode ver que os links rígidos permitem que vários arquivos se refiram ao mesmo conjunto de dados.

Agora, qual é o tamanho do diretório A?

A resposta depende do que você planeja fazer com o diretório A:

  1. Se você ler os arquivos no diretório A, o tamanho de todos os arquivos lidos será a soma de cada tamanho de arquivo. Neste exemplo, seriam 4 MB.

  2. Se você copiar todos os arquivos do diretório A para um novo local, a quantidade de dados copiados será a soma de todos os dados vinculados aos arquivos. Neste exemplo, seriam 3 MB.

  3. Se você estiver tentando liberar espaço excluindo o diretório A, verá apenas uma redução de tamanho para os arquivos vinculados somente pelo diretório A. Neste exemplo, isso equivale a uma economia de 1 MB.

Volte à questão de quanto espaço é usado pelo Repositório de Componentes do Windows e, especificamente, a pasta WinSxS. A terceira resposta no diretório Um exemplo, corresponde mais de perto quanto espaço extra é usado. Arquivos vinculados ao restante do sistema são necessários para operações do sistema, portanto, eles não devem ser contados e arquivos vinculados a vários locais dentro do repositório de componentes devem ter o tamanho armazenado apenas no disco contado.

Gerenciando o Repositório de Componentes do Windows

Você pode usar novos recursos em Windows 8.1 e Windows Server 2012 R2 para gerenciar o Repositório de Componentes do Windows:

Determinar o tamanho real da pasta WinSxS

Limpar a pasta WinSxS

Reduzir o tamanho do repositório de componentes em uma imagem offline do Windows

Para onde foi meu espaço? (publicação de blog)

Mais sobre links rígidos

Postagem no blog de Metafiles do NTFS