Você pode receber uma mensagem de erro "Parar 0x0000000A" quando um processador é retomado de um estado ocioso C1

Este artigo fornece uma solução alternativa para a mensagem de erro "Parar 0x0000000A" quando um processador é retomado de um estado ocioso C1.

Aplica-se a: Windows Server 2003
Número de KB original: 908369

Sintomas

Quando um processador em um computador baseado no Microsoft Windows Server 2003 é retomado de um estado ocioso C1, o computador pode parar de responder. Além disso, você pode experimentar um ou mais dos seguintes sintomas:

  • O computador é reiniciado automaticamente.

  • Depois de fazer logon, você receberá a seguinte mensagem de erro:

    Microsoft Windows
    O sistema se recuperou de um erro grave.
    Um log desse erro foi criado.
    Conte à Microsoft sobre esse problema.
    Criamos um relatório de erro que você pode enviar para nos ajudar a melhorar o Microsoft Windows. Trataremos este relatório como confidencial e anônimo.
    Para ver quais dados esse relatório de erro contém, clique aqui.

    Se a mensagem de erro ainda aparecer e se você quiser ver os dados que o relatório de erro contém, clique no link Clique aqui na parte inferior da caixa de mensagens. Em seguida, você verá informações de assinatura de erro semelhantes às seguintes:

    BCCode : 000000A BCP1 : 0f6ff8c0 BCP2 : 000000ff BCP3 : 0000000 BCP4 : 8074867e OSVer : 5_2_3718 SP : 0_0 Produto : 272_3

  • Você recebe a seguinte mensagem de erro "Parar" em uma tela azul:

    Um problema foi detectado e o Windows foi desligado para evitar danos ao computador.
    Informações técnicas:
    STOP: 0x0000000A (0x0f6ff8c0, 0x000000ff, 0x00000000, 0x8074867e)
    IRQL_Not_Less_Or_Equal

  • Uma mensagem de erro semelhante à seguinte é registrada no log de eventos do Sistema:

    Data: data
    Fonte: System ErrorTime: time
    Categoria: (102)
    Digite: Erro
    ID do Evento:1003
    Usuário: N/A
    Computador: computador
    Descrição: código de erro 000000A, parâmetro1 0f6ff8c0, parameter2 000000ff, parameter3 000000000, parameter4 8074867e. Para obter mais informações, consulte Centro de Ajuda e Suporte em https://support.microsoft.com.Data:0000: 53 79 73 74 65 6d 20 45 System E0008: 72 72 6f 72 20 20 45 72 rror Er0010: 72 6f 72 20 63 6 64 65 ror code0018: 20 30 30 30 30 30 30 30 35 00000 0A0020: 30 20 20 50 61 72 61 6d 0 Param0028: 65 74 65 72 73 20 66 66 eters ff0030: 66 66 66 66 64 31 2c

Observação

  • Os sintomas de um erro "Parar" variam de acordo com as opções de falha do sistema do computador. Para obter mais informações, clique no número do artigo a seguir para exibir o artigo na Base de Dados de Conhecimento da Microsoft: 307973 Como configurar as opções de falha e recuperação do sistema no Windows
  • Os quatro parâmetros incluídos nas informações de assinatura de erro variam de acordo com a configuração do computador.
  • Nem todos os erros de "Parar 0x0000000A" são causados pelo problema que este artigo descreve.

Motivo

Esse problema ocorre devido a um bug de processador em algumas CPUs.

Os bytes de instrução são lidos no cache de instruções em blocos de tamanho fixo (linhas de cache). Quando os bytes que compõem uma instrução cruzam um limite de linha de cache, os bytes de instrução ocupam várias linhas de cache adjacentes. Se ocorrer um erro específico do processador, o processador poderá ler na segunda parte da instrução da linha de cache errada para execução. Esse comportamento causa uma instrução incorreta.

O arquivo Ntkrnlmp.exe incluído no hotfix 840987 inclui uma sequência de instruções que revelam esse bug.

Observação

Esse problema ocorre somente quando o processador está lidando com uma IPI (interrupção de interprocessador) que faz com que o processador seja retomado do estado ocioso C1.

Solução alternativa

Importante

Esta seção, método ou tarefa contém etapas que descrevem como modificar o Registro. Entretanto, sérios problemas poderão ocorrer caso você modifique o Registro incorretamente. Portanto, siga essas etapas cuidadosamente. Para mais proteção, faça o backup do registro antes de modificá-lo. Em seguida, você poderá restaurar o registro se ocorrer um problema. Para obter mais informações sobre como fazer backup e restaurar o Registro, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft:
322756 Como fazer o backup e a restauração do Registro no Windows

Para contornar esse problema, evite que o processador insira o estado ocioso C1. Para fazer isso, siga estas etapas:

  1. Inicie o Editor do Registro. Para fazer isso, clique em Iniciar, clique em Executar, digite regedt32 e clique em OK.

  2. Localize e clique na seguinte subchave do Registro: HKEY_LOCAL_MACHINE\System\CurrentControlset\Control\Session Manager\Power

  3. Clique em Editar, aponte para Novo, clique em Valor DWORD e digite IdleFrom0IdlePercent.

  4. Clique com o botão direito do mouse em IdleFrom0IdlePercent e clique em Modificar. Na caixa de diálogo Editar Valor DWORD , digite um número que seja mais de 100 na caixa de dados Valor , clique em Decimal em Base e clique em OK.

    Observação

    As duas subchaves de registro a seguir controlam quando o Windows faz com que o processador insira um estado ocioso C1: HKEY_LOCAL_MACHINE\System\CurrentControlset\Control\Session Manager\Power\IdleFrom0DelayHKEY_LOCAL_MACHINE\System\CurrentControlset\Control\Session Manager\Power\IdleFrom0IdlePercent
    Por exemplo, suponha que você tenha definido o valor IdleFrom0IdlePercent como 10 e o valor IdleFrom0Delay como 5. Nesse caso, o sistema deve estar 10% ocioso em um período de 5 microssegundos antes que a CPU insira o estado ocioso C1. Portanto, se você definir o valor IdleFrom0IdlePercent como um número superior a 100, a CPU nunca entrará no estado ocioso C1.

Status

A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".