Share to: share facebook share twitter share wa share telegram print page

Kernel panic

Pânico do Linux, causado por uma falha no hardware de disco rígido.

Kernel panic, em português Pânico do núcleo, é uma situação em que sistemas operacionais Unix e tipo Unix encontram um erro do qual não é possível recuperar-se de modo seguro. No sistema operacional Windows a mesma situação é apresentada com a Tela azul da morte (em inglês: Blue Screen of Death).

Há uma rotina no código fonte do Linux e dos sistemas BSD chamada panic(), que trata uma situação de pânico do núcleo. Ela é projetada para mostrar uma mensagem no console, gravar uma imagem da memória do núcleo no disco para depuração após a falha e então aguardar o sistema ser reiniciado manualmente, ou reiniciar automaticamente. A informação fornecida para a tela é técnica, e é direcionada aos desenvolvedores de software e administradores de sistema para que possam diagnosticar o problema.

Fontes comuns de pânicos do núcleo são tentativas do sistema operacional ler endereços de memória não permitidos, ou falhas no hardware. Outro motivo é a existência de um erro no próprio sistema. Em muitos casos esta situação é induzida pelo próprio sistema, que pode continuar a operação, mesmo depois de violações de memória terem ocorrido. No entanto, nesta situação o estado do sistema é instável, e mais do que arriscar brechas de segurança ou corrupção de dados, é preferível terminar a operação para evitar mais danos, e facilitar o diagnóstico do erro.

O pânico do núcleo foi incluído numa versão inicial do Unix e demonstrou uma grande diferença de filosofia entre o Unix e o Multics. O desenvolvedor do Multics Tom van Vleck, relembra uma discussão com o desenvolvedor do Unix Dennis Ritchie:

Eu comentei com o Dennis que facilmente metade do código que eu estava escrevendo no Multics era para recuperação de erros. Ele disse: "Deixamos tudo isso de fora. Se houver um erro, temos uma rotina chamada panic, que quando é chamada, trava a máquina e você grita lá no corredor, 'Ei, reinicie.'"[1]

A função original permaneceu essencialmente inalterada desde a quinta edição do Unix até o Unix 32V baseado no VAX apenas emitindo uma mensagem de erro sem mais informações, deixando o sistema num looping infinito. Na medida em que o Unix foi melhorado, a função panic() foi aprimorada para exibir várias informações úteis para depuração no console.

Ver também

Referências

Ícone de esboço Este artigo sobre informática é um esboço. Você pode ajudar a Wikipédia expandindo-o.
Kembali kehalaman sebelumnya