Função KeBugCheck (ntddk.h)
A rotina KeBugCheck reduz o sistema de maneira controlada quando o chamador descobre uma inconsistência irrecuperável que corromperia o sistema se o chamador continuasse a ser executado.
Sintaxe
void KeBugCheck(
[in] ULONG BugCheckCode
);
Parâmetros
[in] BugCheckCode
Especifica um valor que indica o motivo do bug marcar.
Retornar valor
Nenhum
Comentários
Um bug marcar é um erro detectado pelo sistema que causa um desligamento imediato e controlado do sistema. Vários componentes do modo kernel executam a verificação de consistência em tempo de execução. Quando esse componente descobre uma inconsistência irrecuperável, ele faz com que um bug marcar seja gerado.
Sempre que possível, todos os componentes do modo kernel devem registrar um erro e continuar a ser executados, em vez de chamar KeBugCheck. Por exemplo, se um driver não puder alocar os recursos necessários, ele deverá registrar um erro para que o sistema continue a ser executado; ele não deve gerar um bug marcar.
Um driver ou outro componente do modo kernel deve chamar essa rotina apenas em casos de um erro fatal e irrecuperável que possa corromper o próprio sistema.
KeBugCheck pode ser útil nos estágios iniciais do desenvolvimento de um driver ou enquanto ele está em teste. Nessas circunstâncias, o BugCheckCode passado para essa rotina deve ser distinto daqueles códigos já em uso pelo Windows ou por seus drivers. Para obter uma lista desses códigos, consulte Códigos de verificação de bugs.
No entanto, mesmo durante o desenvolvimento do driver, essa rotina é apenas de utilitário limitado, pois resulta em um desligamento completo do sistema. Um método de depuração mais eficaz é anexar um depurador de kernel ao sistema e, em seguida, usar rotinas que enviam mensagens para o depurador ou invadem o depurador. Para obter mais informações, consulte Usando o código de depuração em um driver.
Quando um bug marcar é inevitável, a maioria dos componentes do sistema chama KeBugCheckEx, que fornece mais informações sobre a causa de tal inconsistência do que KeBugCheck.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Universal |
Cabeçalho | ntddk.h (inclua Ntddk.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Qualquer nível |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de