Select the product you need help with
Como depurar as mensagens de erro "Stop 0xC2" ou "Stop 0x000000C2"ID do artigo: 265879 - Exibir os produtos aos quais esse artigo se aplica. Para obter uma versão deste artigo para o Microsoft Windows XP, consulte 314492
(http://support.microsoft.com/kb/314492/PT-BR/
)
. Sumário Este artigo descreve como depurar mensagens de erros de parada C2.
Mais Informações O Windows 2000 contém muitos recursos internos que aperfeiçoam o processo de alocação de pool. Uma quantidade de novos códigos de parada foram adicionados para ajudá-lo a localizar drivers que não funcionam corretamente. Devido a estes recursos adicionais, você pode localizar a principal causa de um mau funcionamento de um driver por uma simples depuração. O seguinte procedimento descreve como depurar um erro de parada 0xC2. Primeiro, verifique a documentação da parada. Por exemplo: BAD_POOL_CALLER (0xC2) O processo atual está fazendo uma solicitação de pool inválida. Normalmente isto está em um nível IRQL inválido ou liberando duplamente a mesma alocação, etc. 1 - Tipo de violação de pool em que o chamador é culpado. 6 - O endereço de pool que está sendo liberado já está livre. 7 - O endereço de pool que está sendo liberado já está livre. 8 - O parâmetro 2 é a IRQL em alocação, o parâmetro 3 é o tipo de pool. 9 - O parâmetro 2 é a IRQL em liberação, o parâmetro 3 é o tipo de pool. Parâmetro 1 = 0x1, 0x2 ou 0x4: O cabeçalho do pool foi corrompido Parâmetro 2 = Ponteiro para o cabeçalho do pool Parâmetro 3 = Primeira parte do conteúdo do cabeçalho do pool Parâmetro 4 = 0 Parâmetro 1 = 0x6: Tentativa de liberar o pool que já estava livre Parâmetro 2 = Reservado (__LINE__) Parâmetro 3 = Ponteiro para o cabeçalho do pool Parâmetro 4 = Conteúdo do cabeçalho do pool Parâmetro 1 = 0x7: Tentativa de liberar o pool que já estava livre Parâmetro 2 = Reservado (__LINE__) Parâmetro 3 = Ponteiro para o cabeçalho do pool Parâmetro 4 = 0 Parâmetro 1 = 0x8: Tentativa de alocar pool em um IRQL inválido Parâmetro 2 = IRQL atual Parâmetro 3 = Tipo de pool Parâmetro 4 = Tamanho da alocação Parâmetro 1 = 0x9: Tentativa de liberar pool em um IRQL inválido Parâmetro 2 = IRQL atual Parâmetro 3 = Tipo de pool Parâmetro 4 = Endereço de pool Parâmetro 1 = 0x40: Tentativa de liberar o endereço de usermode para pool de Kernel Parâmetro 2 = Endereço de inicialização Parâmetro 3 = Inicialização do espaço de endereço de sistema Parâmetro 4 = 0 Parâmetro 1 = 0x41: Tentativa de liberar um pool não paginado e não alocado endereço Parâmetro 2 = Endereço de inicialização Parâmetro 3 = Quadro de página física Parâmetro 4 = Quadro de página física mais alto Parâmetro 1 = 0x50: Tentativa de liberar um endereço de pool não paginado e não alocado Parâmetro 2 = Endereço de inicialização Parâmetro 3 = Iniciar o recuo nas páginas a partir do início do pool paginado Parâmetro 4 = Tamanho em bytes de pool paginado Parâmetro 1 = 0x99: Tentativa de liberar pool com endereço inválido (ou com cabeçalho do pool corrompido) Parâmetro 2 = Endereço sendo liberado Parâmetro 3 = 0 Parâmetro 4 = 0 E:\bin>i386kd -z K:\DOWNLOAD\memory.dmp Loading Dump File [K:\DOWNLOAD\memory.dmp] Full Kernel Dump File ... 0: kd> !reload GOOD HOUSEKEEPING DONE HERE 0: kd> dd kibugcheckdata l8 DUMPING THE ERROR 8047fba0 000000c2 00000007 00000b68 815bade0 8047fbb0 815bade8 e1007000 00000000 818988c0 0: kd> kv DUMPING STACK ChildEBP RetAddr Args to Child bdce0348 be11dc84 e1fff000 a08d0008 000007f8 banshee!vH3ImageTransferMm32 bdce037c be116f18 be85fd78 00000001 bdce03dc banshee!vMmXferNative bdce03ac be113eec e1fff000 e25e2a38 bdce03dc banshee!vPutBits bdce03e8 a008e47f e1ff86f8 e25e2a38 e1fef908 banshee!DrvCopyBits bdce0430 a008e899 be113d40 bdce04d8 e1ff86f8 win32k!OffCopyBits bdce04e4 a008e4d1 e1ff86f8 e25e2a38 00000000 win32k!SpBitBlt Parâmetro 1 = 0x7: Tentativa de liberar o pool que já estava livre. Mas a pilha mostra que a placa de vídeo está em processo de gravação e por isso deve continuar investigando. Primeiro, é necessário determinar se este computador é um multiprocessador. 0: kd> ~1 SWITCH PROC 1: kd> kv DUMPING STACK ChildEBP RetAddr Args to Child bde81b7c 8046894d 815bade8 00000000 be03bb2b ntkrnlmp!ExFreePoolWithTag bde81b88 be03bb2b 815bade8 be03ca94 815bade8 ntkrnlmp!ExFreePool 00000128 00000000 00000000 00000000 00000000 BADDRIVER A seguir, defina o driver: 1: kd> !drivers Resumo do driver de sistema carregado Base Tamanho do código Tamanho dos dados Nome do driver Hora de criação 80400000 139f40 (1255 kb) 4f3c0 (316 kb) ntoskrnl.exe Ter 07 dez 14:05:26 1999 80062000 ffe0 ( 63 kb) 3d60 ( 15 kb) hal.dll Ter 02 nov 20:14:22 1999 ed410000 1760 ( 5 kb) 1000 ( 4 kb) BOOTVID.dll Qua 03 nov 20:24:33 1999 ed49c000 1b00 ( 6 kb) 680 ( 1 kb) gameenum.sys Sab 25 set 14:35:57 1999 ed080000 a000 ( 40 kb) 20c0 ( 8 kb) VIDEOPRT.SYS Sab 06 nov 16:55:20 1999 bfdcf000 1d480 ( 117 kb) 7520 ( 29 kb) mga64m.sys Seg 29 nov 20:47:46 1999 bfdbc000 11600 ( 69 kb) 1600 ( 5 kb) el90xnd5.sys Sex 29 out 17:54:34 1999 ed090000 3a60 ( 14 kb) 5980 ( 22 kb) banshee.sys Sex 29 out 19:00:56 1999 ed5df000 2e0 ( 0 kb) 4a0 ( 1 kb) audstub.sys Sab 25 set 14:35:33 1999 ed370000 33e0 ( 12 kb) a40 ( 2 kb) raspti.sys Sex 08 out 16:45:10 1999 ed0c0000 c5e0 ( 49 kb) 20e0 ( 8 kb) parallel.sys Sex 22 out 18:00:54 1999 ed5e0000 580 ( 1 kb) 540 ( 1 kb) swenum.sys Sab 25 set 14:36:31 1999 be552000 72a60 ( 458 kb) 13c40 ( 79 kb) mga64d.dll Ter 30 nov 04:33:19 1999 be113000 36f00 ( 219 kb) 7a20 ( 30 kb) banshee.dll Ter 30 nov 04:31:18 1999 be031000 FFFF ( FF kb) FFFF ( F kb) BADDRIVER.sys Seg 30 fev 23:22:43 2000 TOTAL: 7f8dc0 (8163 kb) 172140 (1480 kb) ( 0 kb 0 kb) Propriedades | Traduções deste artigo
|


Voltar para o início








