Condividi tramite


Controllo bug 0x109: CRITICAL_STRUCTURE_CORRUPTION

Il controllo dei bug CRITICAL_STRUCTURE_CORRUPTION ha un valore pari a 0x00000109. Ciò indica che il kernel ha rilevato codice kernel critico o danneggiamento dei dati.

Importante

Questo articolo è destinato ai programmatori. Se si è un cliente che ha ricevuto un codice di errore della schermata blu durante l'uso del computer, vedere Risolvere gli errori della schermata blu.

parametri CRITICAL_STRUCTURE_CORRUPTION

Parametro Descrizione

1

Prenotato

2

Prenotato

3

Prenotato

4

Tipo dell'area danneggiata. Vedere la tabella seguente più avanti in questa pagina.

Il valore del parametro 4 indica il tipo di area danneggiata.

Parametro 4 Tipo di area danneggiata, tipo di danneggiamento o tipo di azione eseguita che ha causato il danneggiamento

0x0

Un'area dati generica

0x1

Modifica di una funzione

0x2

Tabella dispatch interrupt del processore (IDT)

0x3

Tabella del descrittore globale del processore (GDT)

0x4

Danneggiamento di un elenco di processi di tipo 1

0x5

Danneggiamento di un elenco di processi di tipo 2

0x6

Modifica di routine di debug

0x7

Modifica critica di MSR

0x8

Tipo oggetto

0x9

Processore IVT

0xA

Modifica di una funzione del servizio di sistema

0xB

Un'area dati di sessione generica

0xC

Modifica di una funzione di sessione o con estensione pdata

0xD

Modifica di una tabella di importazione

0xE

Modifica di una tabella di importazione di sessione

0xf

Ps Modifica callout Win32

0x10

Modifica della routine dell'opzione di debug

0x11

Modifica dell'allocatore IRP

0x12

Modifica del dispatcher di chiamata driver

0x13

Modifica del dispatcher di completamento IRP

0x14

Modifica dealloatore IRP

0x15

Registro di controllo del processore

0x16

Modifica del registro di controllo a virgola mobile critica

0x17

Modifica APIC locale

0x18

Modifica del callout delle notifiche del kernel

0x19

Modifica dell'elenco dei moduli caricati

0x1A

Danneggiamento dell'elenco dei processi di tipo 3

0x1B

Danneggiamento dell'elenco dei processi di tipo 4

0x1C

Danneggiamento dell'oggetto driver

0x1D

Modifica dell'oggetto callback esecutivo

0x1E

Modifica della spaziatura interna del modulo

0x1F

Modifica di un processo protetto

0x20

Un'area dati generica

0x21

Mancata corrispondenza dell'hash di pagina

0x22

Mancata corrispondenza dell'hash della pagina della sessione

0x23

Caricare la modifica della directory di configurazione

0x24

Modifica della tabella delle funzioni invertita

0x25

Modifica della configurazione della sessione

0x26

Registro di controllo del processore esteso

0x27

Danneggiamento del pool di tipo 1

0x28

Danneggiamento del pool di tipo 2

0x29

Danneggiamento del pool di tipo 3

0x101

Danneggiamento generale del pool

0x102

Modifica di win32k.sys

Causa

Esistono in genere tre cause diverse per questo controllo dei bug:

  1. Un driver ha accidentalmente o deliberatamente modificato codice o dati critici del kernel. Microsoft Windows Server 2003 con Service Pack 1 (SP1) e versioni successive di Windows per computer basati su x64 non consentono l'applicazione di patch al kernel, tranne tramite patch ad accesso frequente microsoft autorizzato.

  2. Uno sviluppatore ha tentato di impostare un normale punto di interruzione del kernel usando un debugger del kernel non collegato all'avvio del sistema. I normali punti di interruzione (bp) possono essere impostati solo se il debugger è collegato all'ora di inizio. I punti di interruzione del processore (ba) possono essere impostati in qualsiasi momento.

  3. Si è verificato un danneggiamento dell'hardware. Ad esempio, il codice del kernel o i dati potrebbero essere stati archiviati in memoria che non sono riusciti.

Risoluzione

L'estensione di debug !analyze visualizza informazioni sul controllo dei bug e può essere utile per determinare la causa radice.

Per iniziare, esaminare l'analisi dello stack usando il comando k, kb, kc, kd, kp, kP, kv (Display Stack Backtrace). È possibile specificare il numero del processore per esaminare gli stack in tutti i processori.

È anche possibile impostare un punto di interruzione nel codice che conduce a questo codice di arresto e tentare di eseguire un singolo passaggio avanti nel codice di errore.

Per altre informazioni, vedere gli argomenti seguenti:

Analisi del dump di arresto anomalo del sistema usando i debugger di Windows (WinDbg)

Se non si è dotati di usare il debugger Windows per lavorare su questo problema, è possibile usare alcune tecniche di risoluzione dei problemi di base.

  • Controllare l'accesso di sistema Visualizzatore eventi per ulteriori messaggi di errore che potrebbero aiutare a identificare il dispositivo o il driver che causa questo controllo del bug.

  • Se un driver viene identificato nel messaggio di controllo dei bug, disabilitare il driver o rivolgersi al produttore per verificare la presenza di aggiornamenti dei driver.

  • Eseguire lo strumento Diagnostica memoria windows per testare la memoria. Nella casella di ricerca del pannello di controllo digitare Memoria e quindi selezionare Diagnostica dei problemi di memoria del computer. Dopo l'esecuzione del test, usare il Visualizzatore eventi per visualizzare i risultati nel log di sistema. Cercare la voce MemoryDiagnostics-Results per visualizzare i risultati.

  • È possibile provare a eseguire la diagnostica hardware fornita dal produttore del sistema.

  • Verificare che qualsiasi nuovo hardware installato sia compatibile con la versione installata di Windows. Ad esempio, puoi ottenere informazioni sull'hardware necessario in Specifiche di Windows 10.

  • Per altre informazioni generali sulla risoluzione dei problemi, vedere Analizzare i dati della schermata blu di controllo dei bug.