Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A verificação de bug KERNEL_MODE_HEAP_CORRUPTION tem um valor de 0x0000013A. Esta verificação de bug indica que o gerenciador de heap do modo kernel detetou corrupção em um heap.
Importante
Este artigo é para programadores. Se for um cliente que recebeu um código de erro de ecrã azul enquanto utiliza o computador, consulte Resolução de problemas de erros de ecrã azul.
KERNEL_MODE_HEAP_CORRUPTION parâmetros
| Parâmetro | Descrição |
|---|---|
| 1 | Tipo de corrupção detetada - consulte a lista a seguir. |
| 2 | Endereço da pilha que denunciou a corrupção. |
| 3 | Endereço em que a corrupção foi detetada. |
| 4 | Reservado |
Parâmetro 1 - Tipo de corrupção de pilha
0x3: Foi detetado um cabeçalho de entrada corrompido.
0x4: Vários cabeçalhos de entrada corrompidos foram detetados.
0x5: Foi detetado um cabeçalho de entrada corrompido em uma grande alocação.
0x6: Foi detetada uma corrupção com características consistentes com uma sobrecarga da memória intermédia.
0x7: Foi detetada uma corrupção com características consistentes com um buffer underrun.
0x8: Um bloqueio livre foi passado para uma operação que só é válida para blocos ocupados.
0x9: Um argumento inválido foi especificado para a operação atual.
0xA: Ocorreu um erro de heap interno relacionado ao tipo de alocação.
0xB: A pilha detetou um erro cujos recursos são consistentes com o uso de um bloco depois de liberá-lo.
0xC: A pilha errada foi especificada para a operação atual.
0xD: A pilha detetou uma lista livre corrompida. Isso pode ser o resultado de um erro de uso após liberação ou um estouro de buffer de um bloco adjacente.
0xE: A pilha detetou corrupção de lista em uma lista diferente da lista livre.
0xF: O chamador executou uma operação (como uma verificação gratuita ou de tamanho) que é ilegal em um bloco livre.
0x10: A pilha detetou um estado interno inválido durante a operação atual. Isso pode ser o resultado de um estouro de buffer.
0x11: A pilha detetou um estado interno inválido durante a operação atual. Isso pode ser o resultado de uma corrupção duplamente livre ou de pilha.
0x12: A pilha detetou um estado interno inválido durante a operação atual. Isso pode ser o resultado de um erro de uso após liberação ou um estouro de buffer de um bloco adjacente.
0x13: A API de heap foi passada para um identificador de heap NULL. Observe a pilha de chamadas para determinar por que um identificador incorreto foi fornecido à pilha.
0x14: A alocação de heap solicitada é maior do que o limite de alocação atual.
0x15: No processo de execução de uma solicitação de confirmação, foi determinado que a solicitação excederia o limite de confirmação atual.
0x16: Indica um erro de heap interno. Isso pode ser o resultado de um endereço incorreto ou corrupção de memória.
0x17: A pilha detetou que um bloco estava corrompido em uma lista livre de atrasos. Isso é provavelmente um erro de uso após liberação ou um estouro de buffer de um bloco adjacente.
Resolução
O !analyze extensão de depuração exibe informações sobre a verificação de bugs e pode ser útil para determinar a causa raiz.
A extensão !heap exibe informações de uso de heap, controla pontos de interrupção no gerenciador de heap, deteta blocos de heap vazados, procura por blocos de heap ou exibe informações de heap de página.
Para obter informações gerais sobre como solucionar problemas de verificações de bugs na tela azul, consulte Analisar dados de tela azul de verificação de bugs.