Problema de desempenho devido à contenção de CmpRegistryLock

Importante: Este artigo contém informações sobre como modificar o registro. Antes de modificar o registro, certifique-se de fazer um backup e certifique-se de que compreende como restaurar o registro se ocorrer um problema. Para obter informações sobre como fazer backup, restaurar e editar o registro, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:
256986 descrição do registro do Microsoft Windows

Sintomas

Quando usuários de serviços de Terminal interativo de 50 a 100 estão conectados e outros usuários dos serviços de Terminal forem logon ou logoff ao mesmo tempo, seu computador pode parar de responder por cerca de 10 a 30 segundos. A frequência desse sintoma é variável, mas pode ocorrer 10 - 20 vezes por dia. Quando esse problema ocorre, o mouse e o teclado não responder, mas o computador está respondendo na rede (para comandos ping e net use ) e no console.
Importante: Você pode determinar se você está enfrentando esse problema executando o Perfmon.exe localmente. Perfmon.exe mostrar uma série de intervalos de "inatividade do sistema", quando todos os contadores soltar como zero (0). Durante esse intervalo, você pode perceber atividade do disco intenso do sistema. Esse comportamento não é específico para qualquer modelo ou fabricante de um computador e pode afetar todas as instalações do Windows 2000, especialmente aqueles que usam os serviços de Terminal. Os serviços de terminal é um "acionador" esse problema de desempenho, devido ao tamanho total das seções do registro que estão associados a todas as sessões de serviços de Terminal estão em andamento. Esse problema pode ocorrer quando há bastante memória disponível.

Causa

Esse problema de desempenho pode ser causado por uma diminuição causada pelo número de entrada/saída no disco do sistema durante a operação de liberação do registro. Os intervalos de "inatividade do sistema" consulte em Perfmon.exe ocorrem devido à contenção do CmpRegistryLock, que protege contra escritores do registro (por exemplo, Perfmon.exe e Explorer.exe) durante a operação de liberação de hive.


Observação: essa diminuição de entrada/saída foi observada que para ocorrer mesmo se o computador tiver muita memória disponível. Se seu computador não tem memória suficiente, desempenho pode ser degradado substancialmente antes que você possa ver a lentidão de entrada/saída.

Resolução

Para resolver esse problema, obtenha o service pack mais recente para o Windows 2000. Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de Conhecimento Microsoft:
260910 como obter o Service Pack mais recente do Windows 2000
A versão em inglês desta correção deve ter os seguintes atributos de arquivo ou posteriores:

   Date       Time   Size       File name
-----------------------------------------
18-April-02 0:46 5.0.2195.53241,687,296 Ntkrnlmp.exe
18-April-02 0:47 5.0.2195.53241,686,976 Ntkrnlpa.exe
18-April-02 0:47 5.0.2195.53241,707,584 Ntkrpamp.exe
18-April-02 0:46 5.0.2195.53241,665,024 Ntoskrnl.exe


Aviso: se você usar o Editor do Registro incorretamente, poderá causar sérios problemas que talvez exijam a reinstalação do sistema operacional. A Microsoft não garante que você conseguirá resolver problemas resultantes do uso incorreto do Editor do registro. Use o Editor do registro por seu próprio risco.

Você pode usar a seguinte chave do registro para reduzir a frequência de liberação do registro para que as modificações no registro podem acumular antes da liberação. Para fazer isso, execute as seguintes etapas:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager
  1. Inicie o Editor do registro (Regedt32.exe).
  2. Localize e clique na seguinte chave no registro:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager
  3. No menu Editar , clique em Adicionar chavee, em seguida, adicione o seguinte valor de registro:
    Nome da chave: Gerenciador de configurações
  4. Clique na chave do Configuration Manager .
  5. No menu Editar , clique em Adicionar valore adicione o seguinte valor do registro:
    Nome do valor: RegistryLazyFlushInterval
    Tipo de dados: REG_DWORD
    Base: Decimal
    Dados do valor: tempo em segundos (o valor padrão é 5).
  6. Feche o Editor do registro.
Observação: A configuração padrão para o valor de RegistryLazyFlushInterval é igual ao utilizado no Windows 2000 e versões anteriores do Windows.

Ajuste de desempenho

Uma redução do número de operações de liberação do registro, por um fator de 2-3, foi medida para os valores de 30 a 60 segundos neste intervalo.

Sugestão de ajuste

Execute um teste de comparação com o intervalo definido para 30 segundos e, em seguida, 60 segundos. Se o desempenho observado é praticamente o mesmo, selecione o valor de 30 segundos. Se a diferença observada de desempenho for importante, selecione um valor mais alto é de cerca de 60 segundos. Observe que não há aprimoramentos de desempenho percebido quando você usar um intervalo maior do que 60 segundos.

Solução alternativa

Para contornar esse problema, use um dos seguintes métodos.

  • Melhorar o desempenho de gravação de disco do sistema e ativar o cache de gravação.
  • Se possível, reduza o tamanho dos perfis de usuário.

Status

A Microsoft confirmou que este é um problema nos produtos Microsoft que estão listados no início deste artigo. Esse problema foi corrigido primeiro no Windows 2000 Service Pack 3.

Mais informações

Para obter informações adicionais sobre como obter um hotfix para o Windows 2000 Datacenter Server, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:

265173 programa Datacenter e produto Windows 2000 Datacenter Server
Para obter informações adicionais sobre como instalar diversos hotfixes com apenas uma reinicialização, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:

296861 usar o QChain.exe para instalar diversos Hotfixes com uma reinicialização
Propriedades

ID do Artigo: 317357 - Última Revisão: 20 de fev de 2017 - Revisão: 1

Comentários