O que é um Kernel Panic e o que isso significa?

13

Eu tenho este relatório:

Anonymous UUID:       Removed

Tue Aug 11 20:26:13 2015

*** Panic Report ***
panic(cpu 2 caller 0xffffff8028bc1cde): "launchd died\nState at Last Exception:\n\n"@/SourceCache/xnu/xnu-2782.20.48/bsd/kern/kern_exit.c:363

uuid info:
 0x7fff658c1000 uuid = <65dccb06-339c-3e25-9702-600a28291d0e>
 0x10f26f000    uuid = <7f885d63-b284-3471-b6e3-172489232c37>
 0x10f2c1000    uuid = <4396b358-725e-3ec0-bcbb-e4bf75fe1fb0>

RAX: 0x0000000002000001, RBX: 0x0000000000000006, RCX: 0x000000010ff8c0e8, RDX: 0x0000000000000000
RSP: 0x000000010ff8c0e8, RBP: 0x000000010ff8c190, RSI: 0x000000010ff8bf40, RDI: 0x0000000000000001
R8:  0x0000000000000000, R9:  0x000000010f2ae9f0, R10: 0x00007fff9899bb02, R11: 0x0000000000000206
R12: 0x0000000000000000, R13: 0x00007fff8e2f97e0, R14: 0x000000010ff8c5d0, R15: 0x000000010ff8c790
RFL: 0x0000000000000206, RIP: 0x00007fff9899995a, CS:  0x0000000000000007, SS:  0x0000000000000023

Thread  0xffffff803414bc50
    0x00007fff929c1f4b
    0x00007fff929c2068
    0x00007fff929bb554
    0x00007fff968a8a6c
    0x000000010f29d8f7
    0x00007fff97d71c13
    0x00007fff97d7488f
    0x00007fff97d82fe4
    0x00007fff8b16b637
    0x00007fff8b16940d
    0x0000000000000000

Thread  0xffffff80342d7108
    0x00007fff97d74a6a
    0x0000000000000000

Thread  0xffffff80341a8e28
      Could not read LR from frame at 0x000000010fd03dc8

Thread  0xffffff8034130798
    0x00007fff97d823ad
    0x0000000000000000

Thread  0xffffff8035ac05c0
    0x00007fff97d7c87e
    0x00007fff97d7562b
    0x00007fff97d75154
    0x00007fff97d76ecc
    0x00007fff97d746b7
    0x00007fff97d74453
    0x00007fff8b16b268
    0x00007fff8b16b1e5
    0x00007fff8b16941d
    0x0000000000000000

Thread  0xffffff803523de28
    0x000000010f28e28b
    0x000000010f28ceb9
    0x000000010f29d5ca
    0x000000010f29d82e
    0x00007fff97d71c13
    0x00007fff97d7c87e
    0x00007fff97d7562b
    0x00007fff97d75154
    0x00007fff97d76ecc
    0x00007fff97d746b7
    0x00007fff97d82fe4
    0x00007fff8b16b637
    0x00007fff8b16940d
    0x0000000000000000

Thread  0xffffff803d8442e0
    0x00007fff8b28ef1a
    0x0000000000000001
    0x00007fff658cd455
    0x00007fff8b3567b5
    0x00007fff929907e8
    0x00007fff8e2f97e0
    0x00007fff8e2fbddf
    0x00007fff97d71c13
    0x00007fff97d72e5e
    0x00007fff8e2fa0a7
    0x000000010f29a383
    0x00007fff97d71c13
    0x00007fff97d75365
    0x00007fff97d76ecc
    0x00007fff97d75154
    0x00007fff97d76ecc
    0x00007fff97d746b7
    0x00007fff97d82fe4
    0x00007fff8b16b637
    0x00007fff8b16940d
    0x0000000000000000

Mac OS version: 14D136
Kernel version: Darwin Kernel Version 14.3.0: Mon Mar 23 11:59:05 PDT 2015; root:xnu-2782.20.48~5/RELEASE_X86_64
Kernel UUID: 4B3A11F4-77AA-3D27-A22D-81A1BC5B504D
System model name: MacBookPro9,2 (Mac-6F01561E16C75D06)

O que é um pânico no kernel?

Jessa
fonte

Respostas:

22

Em geral, um pânico do kernel é definido pela Apple como "No UNIX, um pânico é um erro irrecuperável do sistema detectado pelo kernel".

No seu caso específico, o programa principal que inicia e interrompe todo o resto do sistema possui um erro irrecuperável em uma instância específica em um momento específico.

  • launchd é o componente com falha que precisa ser executado sempre.
  • O restante das informações precisaria ser analisado por um engenheiro, normalmente um empregado da Apple, que possui um profundo entendimento do nível mais baixo de código executado no processador.

As próximas etapas para você dependerão da frequência com que o erro ocorre e se a máquina pode iniciar automaticamente depois de desligada.

Você também pode revisar essas duas perguntas para obter mais detalhes sobre como solucionar problemas do seu computador daqui para frente, se desejar.

bmike
fonte
11

(Eu não sou um Mac, mas isso se aplica a muitos Unices) Um pânico no kernel é basicamente o equivalente do Unix à moderna Tela Azul da Morte do Windows - um erro irrecuperável detectado pelo kernel, ou seja, o núcleo do sistema operacional, o parte que gerencia coisas como tempo do processador, memória, acesso ao disco etc.

Isso pode ser causado por um problema que afeta o próprio kernel (incluindo hardware ou (muito menos provável no Mac que no Windows) problemas de driver) ou por (como neste caso) um erro que causa o initprocesso (no caso de Macs, este é launchd), responsável por (direta ou indiretamente) a execução de todos os outros processos em seu computador, saindo inesperadamente. Quando isso termina, efetivamente reduz tudo o que foi iniciado (ou seja, todos os outros processos do sistema), para que o kernel não tenha outra opção a não ser entrar em pânico.

Espero que isso ajude você a entender o conceito geral. Receio não poder ser mais específico, pois entraria em coisas específicas para Mac com as quais não estou familiarizado.

Muzer
fonte
7

As respostas já dadas estão completas e corretas. Como sua pergunta pode se resumir a "o que é um kernel" e "por que isso aconteceu", deixe-me tentar explicar o jargão.

O software no seu computador existe em níveis. Por exemplo, existe uma parte chamada sistema de janelas . Este não é um aplicativo que você executa, como o Safari, mas um software chamado por Safari para desenhar a janela na qual o Safari desenha páginas da web. O sistema de janelas, por sua vez, não fala diretamente com o hardware, mas conversa com um módulo de software de nível inferior que permite desenhar linhas na tela. Tudo o que você faz no seu computador passa por esses tipos de "níveis de abstração" até chegar ao software que fala diretamente com o seu hardware.

Seu kernel é o nível mais baixo de software. Ele fala diretamente com seu hardware e expõe tudo o que seu computador pode fazer a processos e módulos de nível superior.

A razão pela qual esses níveis são importantes é que quanto mais alto algo der errado, melhor o seu computador lida com isso. Se você tentar abrir um arquivo que não existe no Safari, o Safari fornecerá um erro amigável, que você poderá usar para corrigir o problema. Se algo der errado no sistema de janelas, as coisas podem começar a parecer engraçadas ou o ponteiro do mouse pode desaparecer subitamente.

Um pânico no kernel acontece quando algo dá errado no kernel. Como você pode imaginar, o comportamento resultante do seu computador é o mais hostil possível. O melhor que você pode esperar é que o computador pare e imprima uma série de informações de aparência obscura, como aconteceu no seu caso.

Pedro
fonte