As Entradas de Tabela de Página Livres estão no limite crítico

[Este tópico pretende solucionar um problema específico acarretado pela ferramenta Exchange Server Analyzer. Você deve aplicá-lo apenas a sistemas em que a ferramenta Exchange Server Analyzer tenha sido executada e estejam passando por esse problema específico. A ferramenta Exchange Server Analyzer, disponível como download gratuito, coleta remotamente dados de configuração de cada servidor da topologia e analisa automaticamente os dados. O relatório resultante detalha problemas importantes de configuração, problemas potenciais e configurações de produto diferentes do padrão. Ao seguir estas recomendações, você poderá atingir melhor desempenho, escalabilidade, confiabilidade e tempo de operação. Para obter mais informações sobre a ferramenta ou para baixar as últimas versões, consulte "Microsoft Exchange Analyzers" em https://go.microsoft.com/fwlink/?linkid=34707.]  

Tópico modificado em: 2009-09-14

A ferramenta Analisador do Microsoft® Exchange Server consulta a classe WMI (Instrumentação de Gerenciamento do Microsoft Windows) Win32_PerfRawData_PerfOS_Memory para determinar o valor atual do objeto FreeSystemPageTableEntries. Se o valor de FreeSystemPageTableEntries for menor ou igual a 5000, será exibido um erro.

O Microsoft Windows Server™ 2003 e o Windows 2000 Server podem especificar diretamente até 4 gigabytes (GB) de espaço de endereçamento de memória, independentemente da quantidade de RAM física que está instalada. Do ponto de vista do processo, cada elemento do endereço virtual conceitualmente refere-se a um byte de memória física. É responsabilidade do VMM (Gerenciador de Memória Virtual), em conjunto com a MMU (unidade do gerenciador de memória) do processador, converter ou mapear cada endereço virtual em um endereço físico correspondente. O VMM executa o mapeamento dividindo a RAM em quadros de página de tamanho fixo, criando PTEs para armazenar informações sobre esses quadros de página e mapeando-os. As PTEs do sistema são pequenos buffers de memória no modo kernel que são usados para fazer a comunicação com o subsistema de E/S e a rede. Cada PTE representa um quadro de página e contém as informações necessárias para o VMM localizar uma página.

Em um sistema baseado em x86 que usa um tamanho de página igual a 4 KB, o número máximo de PTEs necessárias para mapear 2 GB de espaço de endereçamento é 524.288 (2 GB/4 KB). Em um sistema similar usando a opção de /3GB, o número de PTEs necessários para mapear 3 GB de espaço de endereçamento é 786.432 (3 GB/4 KB). Em um sistema típico, esse espaço é usado como a seguir:

  • Um máximo de 50.000 PTEs (aproximadamente 195 MB de espaço de endereçamento) são reservadas para uso geral.
  • O restante é usado para mapear o cache de sistema, hiperespaço, pool paginado, pool não paginado, área de despejo de memória e assim por diante.

Esse tamanho de pool da PTE é automaticamente determinado na inicialização do sistema baseado na quantidade de memória física do sistema. Esta sondagem é espremida entre a sondagem paginada e a não paginada, que também cresce com a quantidade de memória física no sistema.

O pool da PTE do sistema pode tornar-se muito usado e muito fragmentado. Isso pode levar a situações em que um driver não pode ser carregado. Além disso, se o pool da PTE do sistema for reduzido completamente, outras partes do sistema serão prejudicadas, resultando na não criação de threads, em paralisações do sistema e possíveis falhas do sistema.

Um computador do Exchange Server íntegro deve ter ao menos 8,000 PTEs de sistema disponíveis o tempo todo. Se o número de PTEs livres no sistema cair abaixo de 8.000 mas permanecer superior a 5.000, o aviso descrito em As PTEs (entradas de tabela de página) livres estão no limite de aviso será exibido. Quando o número de PTEs livres do sistema cai abaixo de 5.000, esse erro é exibido.

Para resolver esse problema, você pode usar o procedimento a seguir para configurar o valor do Registro SystemPages corretamente para o sistema operacional do computador do Exchange Server. Quando você está executando o Exchange Server 2003 Service Pack 1 (SP1) no Windows Server 2003 com 1 GB ou mais de RAM, é recomendável que você defina a chave de Registro SystemPages como zero. Essa recomendação contrasta com a recomendação para o Windows 2000 Server, que é definir SystemPages como um valor decimal 31000.

Depois de executar o procedimento a seguir, você deverá monitorar o número de PTEs do sistema livres. Isso é possível por meio do monitoramento do contador de desempenho das Entradas de Tabela de Página Livres | Memória com o Monitor do Sistema Windows (também conhecido como Monitor de Desempenho). Se depois de executar a mudança do Registro, o número de PTEs do sistema livres permanecer baixo, você deve verificar o seguinte para garantir que seu computador do Exchange Server esteja com a configuração ideal:

  • Drivers   Um driver que não funciona corretamente é uma das causas mais comuns de PTEs de sistema baixas. Verifique com o fabricante do hardware para garantir que você está usando os drivers mais recentes em todo o seu hardware. Além disso, pode haver oportunidades para rebaixar para um driver mais básico. Por exemplo, os computadores que executam aplicativos baseados em servidor como o Exchange Server geralmente não precisam de drivers de vídeo muito avançados com todos os recursos. Em vez disso, um driver mais básico geralmente é suficiente. A troca de um driver de vídeo avançado por um driver de vídeo básico deve aumentar o número de PETs de sistema livres.
  • Configuração do sistema Se seu sistema Windows Server 2003 tem 1 GB ou mais de memória física instalada, você deve verificar se o arquivo Boot.ini está configurado corretamente com as opções /3GB e /USERVA=3030 como descrito no artigo 823440 da Base de Dados de Conhecimento da Microsoft, "Uso da opção /3GB no Exchange Server 2003 em um sistema com o Windows Server 2003" (https://go.microsoft.com/fwlink/?linkid=3052&kbid=823440) e o artigo 810371 da Base de Dados de Conhecimento, "XADM: Usando a Opção /Userva nos Servidores Exchange com base em Windows Server 2003 " (https://go.microsoft.com/fwlink/?linkid=3052&kbid=810371).
  • Logs de eventos    Marque o log de eventos do aplicativo no servidor Exchange para obter erros e avisos, especialmente os eventos 9582 (erros e avisos), 9665 (aviso) e 12880 (erro) do MSExchangeIS. A presença do evento 9665 também pode indicar que SystemPages não está configurado para um desempenho ideal. Para obter mais informações sobre esses eventos, consulte o artigo 325044 da Base de Dados de Conhecimento, "COMO: Troubleshoot Virtual Memory Fragmentation in Exchange 2003 and Exchange 2000" (em inglês) (https://go.microsoft.com/fwlink/?linkid=3052&kbid=325044).
importantImportante:
Este artigo contém informações sobre como editar o Registro. Antes de editar o Registro, verifique se entendeu como restaurá-lo, caso ocorra algum problema. Para obter informações sobre como restaurar o Registro, exiba o tópico da Ajuda "Restaurar o Registro" no Regedit.exe ou no Regedt32.exe.

Para corrigir esse erro em um computador que executa o Windows 2000 Server

  1. Abra um editor de Registro, como o Regedit.exe ou o Regedt32.exe.

  2. Navegue para: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

  3. No painel direito, clique duas vezes em SystemPages.

  4. No campo Dados do valor, digite o valor decimal 31.000 (31.000 é a representação decimal do hexadecimal 7918. Regedit.exe usa como padrão os valores hexadecimais) e clique em OK.

  5. Feche o editor de Registro e reinicie o computador para que a alteração entre em vigor.

Para corrigir esse erro em um computador que executa a versão de lançamento original do Windows Server 2003

  • Revise as informações no artigo 894067 da Base de Dados de Conhecimento da Microsoft, "A ferramenta Desempenho não mostra precisamente as PTEs livres do sistema disponíveis no Windows Server 2003" (https://go.microsoft.com/fwlink/?linkid=3052&kbid=894067), para determinar as PTEs livres do sistema.

Para corrigir esse erro em um computador que executa o Windows Server 2003 SP1

  1. Abra um editor de Registro, como o Regedit.exe ou o Regedt32.exe.

  2. Navegue para: HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

  3. No painel direito, clique duas vezes em SystemPages.

  4. No campo Dados do valor, digite 0 e clique em OK.

  5. Feche o editor de Registro.

  6. Clique com o botão direito em Meu Computador e clique em Propriedades. A caixa de diálogo Propriedades do Sistema será exibida.

  7. Clique em Avançado.

  8. Na área Inicialização e Recuperação, clique em Configurações. A caixa de diálogo Inicialização e Recuperação será exibida.

  9. Na área Inicialização do sistema, clique em Editar. Isso abrirá o arquivo Boot.ini do Windows no Bloco de Notas.

  10. Revise a seção [Sistemas Operacionais].

    1. Se a opção /3GB existir mas não a opção /USERVA=3030, adicione a opção /USERVA=3030 à linha de inicialização para que ela seja configurada como /3GB /USERVA=3030.
    2. Se as opções /3GB /USERVA=3030 já estiverem configuradas, altere o valor da opção /USERVA para /USERVA=2970.
  11. Salve as alterações e feche o Bloco de Notas.

  12. Clique em OK duas vezes para fechar as caixas de diálogo abertas e reinicie o computador para que as alterações entrem em vigor.

Antes de editar o Registro e para obter informações sobre como editá-lo, consulte o artigo 256986 da Base de Dados de Conhecimento da Microsoft, "Descrição do Registro do Microsoft Windows" (https://go.microsoft.com/fwlink/?linkid=3052&kbid=256986).

Para obter mais informações sobre como otimizar a memória do Exchange Server, consulte os artigos a seguir na Base de Dados de Conhecimento: