Travando e reinicializando o computador de destino
Ao executar a depuração do kernel, você pode fazer com que o computador de destino pare de responder (ou seja, travar ou verificar bugs) emitindo o comando .crash (Forçar Falha do Sistema). Esse comando faz com que o computador de destino pare de responder imediatamente. O depurador gravará um arquivo de despejo no modo kernel se você tiver habilitado despejos de memória. (Para obter mais informações sobre esses arquivos, consulte Criando um arquivo de despejo no modo kernel.)
Para reiniciar o computador de destino, use o comando .reboot (Reinicializar computador de destino).
Se você quiser que o computador de destino crie um arquivo de despejo de memória e reinicie, execute o comando .crash , seguido pelo comando .reboot . Se você quiser apenas reiniciar, o comando .crash não é necessário.
Nos estágios iniciais do processo de inicialização, a conexão entre o computador host e o computador de destino é perdida. Nenhuma informação sobre o computador de destino está disponível para o depurador.
Depois que a conexão é interrompida, o depurador fecha todos os arquivos de símbolo e descarrega todas as extensões do depurador. Neste ponto, todos os pontos de interrupção serão perdidos se você estiver executando KD ou CDB. No WinDbg, você pode salvar o workspace atual. Essa ação salva todos os pontos de interrupção.
Se você quiser encerrar a sessão de depuração neste ponto, use o comando CTRL+B (no KD) ou clique em Sair no menu Arquivo (no WinDbg).
Se você não sair do depurador, a conexão será restabelecida após a conclusão do processo de inicialização suficiente. Símbolos e extensões são recarregados neste ponto. Se você estiver executando o WinDbg, o workspace do modo kernel será recarregado.
Você pode dizer ao depurador para entrar automaticamente no computador de destino durante o processo de reinicialização em dois momentos possíveis:
Quando o primeiro módulo do kernel é carregado na memória
Quando o kernel é inicializado
Para definir um ponto de interrupção automático quando o primeiro módulo do kernel for carregado, use a opção de linha de comando -d.
Você também pode alterar o estado de interrupção depois que o depurador estiver em execução:
Controle a carga inicial do módulo e os pontos de interrupção de inicialização do kernel, como todas as exceções e eventos. Você pode invadir o depurador quando esses eventos ocorrerem ou ignorá-los. Você também pode fazer com que um comando especificado seja executado automaticamente quando esses pontos de interrupção forem atingidos. Para obter mais informações, consulte Controlando exceções e eventos.
Use as teclas de atalho CTRL+K no KD, as teclas de atalho CTRL+ALT+K no WinDbg e o comando Debug | Conexão do Kernel | Comando Cycle Initial Break no WinDbg para alterar o estado de interrupção. Sempre que você usa esses comandos, o depurador alterna entre três estados: sem interrupção automática, interrupção na inicialização do kernel e interrupção no primeiro carregamento do módulo do kernel. Esse método não pode ativar os dois pontos de interrupção automáticos ao mesmo tempo.