Partilhar via


0x109 de Verificação de Bugs: CRITICAL_STRUCTURE_CORRUPTION

O bug CRITICAL_STRUCTURE_CORRUPTION marcar tem um valor de 0x00000109. Isso indica que o kernel detectou um código de kernel crítico ou dados corrompidos.

Importante

Este artigo é para programadores. Se você for um cliente que recebeu um código de erro de tela azul ao usar o computador, consulte Solucionar erros de tela azul.

Parâmetros de CRITICAL_STRUCTURE_CORRUPTION

Parâmetro Descrição

1

Reservado

2

Reservado

3

Reservado

4

O tipo da região corrompida. (Consulte a tabela a seguir mais adiante nesta página.)

O valor do Parâmetro 4 indica o tipo de região corrompida.

Parâmetro 4 Tipo de região corrompida, tipo de corrupção ou tipo de ação tomada que causou a corrupção

0x0

Uma região de dados genérica

0x1

Uma modificação de função

0x2

Uma tabela de expedição de interrupção do processador (IDT)

0x3

Uma GDT (tabela de descritor global) do processador

0x4

Uma lista de processos tipo 1 corrompida

0x5

Uma lista de processos tipo 2 corrompida

0x6

Uma modificação de rotina de depuração

0x7

Uma modificação crítica do MSR

0x8

Tipo de objeto

0x9

Um processador IVT

0xA

Modificação de uma função de serviço do sistema

0xB

Uma região de dados de sessão genérica

0xC

Modificação de uma função de sessão ou .pdata

0xD

Modificação de uma tabela de importação

0xE

Modificação de uma tabela de importação de sessão

0xF

Modificação de texto explicativo do PS Win32

0x10

Modificação de rotina do comutador de depuração

0x11

Modificação do alocador IRP

0x12

Modificação do dispatcher de chamada de driver

0x13

Modificação do dispatcher de conclusão do IRP

0x14

Modificação do desalocador IRP

0x15

Um registro de controle do processador

0x16

Modificação crítica do registro de controle de ponto flutuante

0x17

Modificação da APIC local

0x18

Modificação do texto explicativo de notificação do kernel

0x19

Modificação da lista de módulos carregados

0x1A

Lista de processos do tipo 3 corrompida

0x1B

Lista de processos do tipo 4 corrompida

0x1C

Corrupção de objeto de driver

0x1D

Modificação de objeto de retorno de chamada executivo

0x1E

Modificação do preenchimento do módulo

0x1F

Modificação de um processo protegido

0x20

Uma região de dados genérica

0x21

Incompatibilidade de hash de página

0x22

Incompatibilidade de hash de página de sessão

0x23

Modificação do diretório de configuração de carga

0x24

Modificação invertida da tabela de funções

0x25

Modificação de configuração de sessão

0x26

Um registro de controle de processador estendido

0x27

Tipo 1 pool corrompido

0x28

Pool do tipo 2 corrompido

0x29

Pool do tipo 3 corrompido

0x101

Corrupção geral do pool

0x102

Modificação de win32k.sys

Causa

Geralmente, há três causas diferentes para esse bug marcar:

  1. Um driver modificou inadvertidamente ou deliberadamente o código ou os dados críticos do kernel. O Microsoft Windows Server 2003 com Service Pack 1 (SP1) e versões posteriores do Windows para computadores baseados em x64 não permitem que o kernel seja corrigido, exceto por meio de hot patches autorizados originados pela Microsoft.

  2. Um desenvolvedor tentou definir um ponto de interrupção normal do kernel usando um depurador de kernel que não estava anexado quando o sistema foi iniciado. Pontos de interrupção normais (bp) só poderão ser definidos se o depurador estiver anexado na hora de início. Os pontos de interrupção do processador (ba) podem ser definidos a qualquer momento.

  3. Ocorreu uma corrupção de hardware. Por exemplo, o código do kernel ou os dados podem ter sido armazenados na memória com falha.

Resolução

A extensão de depuração !analyze exibe informações sobre o bug marcar e pode ser útil para determinar a causa raiz.

Para iniciar, examine o rastreamento de pilha usando o comando k, kb, kc, kd, kp, kP, kv (Display Stack Backtrace). Você pode especificar o número do processador para examinar as pilhas em todos os processadores.

Você também pode definir um ponto de interrupção no código que leva a esse código de parada e tentar avançar um único passo para o código de falha.

Para obter mais informações, consulte estes tópicos:

Análise de despejo de memória usando os depuradores do Windows (WinDbg)

Se você não estiver equipado para usar o depurador do Windows para trabalhar nesse problema, poderá usar algumas técnicas básicas de solução de problemas.

  • Verifique a Visualizador de Eventos de Logon do Sistema para obter mensagens de erro adicionais que possam ajudar a identificar o dispositivo ou driver que está causando esse bug marcar.

  • Se um driver for identificado na mensagem de verificação de bug, desative o driver ou verifique com o fabricante as atualizações de driver.

  • Execute a ferramenta Diagnóstico de Memória do Windows para testar a memória. Na caixa de pesquisa do painel de controle, digite Memória e selecione Diagnosticar problemas de memória do computador. Depois que o teste for executado, use o Visualizador de eventos para exibir os resultados no log do sistema. Procure a entrada MemoryDiagnostics-Results para exibir os resultados.

  • Você pode tentar executar o diagnóstico de hardware fornecido pelo fabricante do sistema.

  • Confirme se qualquer novo hardware instalado é compatível com a versão instalada do Windows. Por exemplo, você pode obter informações sobre o hardware necessário em Especificações de Windows 10.

  • Para obter informações adicionais de solução de problemas gerais, consulte Dados da Tela Azul.