Vai al contenuto

Kernel panic

Da Wikipedia, l'enciclopedia libera.
Fotografia di un monitor visualizzante un messaggio di kernel panic.
Linux kernel panic under QEMU.

In informatica un kernel panic è un'azione intrapresa da un sistema operativo Unix o Unix-like volta a identificare un errore fatale interno.[1][2][3] L'equivalente sui sistemi Windows è la schermata blu di errore.[4] Il termine deriva dalla funzione panic() contenuta nell'header sys/system.h.[5]

Le cause di un kernel panic possono essere varie.[6]

Le principali sono:

Inoltre, quella che segue è un'implementazione della fase finale di inizializzazione del kernel Linux all'interno della funzione kernel_init()

tatic int __ref kernel_init(void *unused)
{

         ...

        /*
         * We try each of these until one succeeds.
         *
         * The Bourne shell can be used instead of init if we are
         * trying to recover a really broken machine.
         */
        if (execute_command) {
                if (!run_init_process(execute_command))
                        return 0;
                pr_err("Failed to execute %s.  Attempting defaults...\n",
                        execute_command);
        }
        if (!run_init_process("/sbin/init") ||
            !run_init_process("/etc/init") ||
            !run_init_process("/bin/init") ||
            !run_init_process("/bin/sh"))
                return 0;

        panic("No init found.  Try passing init= option to kernel. "
              "See Linux Documentation/init.txt for guidance.");
}

I kernel panic si verificano in Linux come in altri sistemi Unix-like; tuttavia, errori gravi ma non fatali possono generare un altro tipo di condizione di errore, nota come kernel oops. In questo caso, il kernel normalmente continua a funzionare dopo aver terminato il processo responsabile. Poiché un oops può causare l'indisponibilità di alcuni sottosistemi o risorse, può successivamente portare a un vero e proprio kernel panic.

Su Linux, un kernel panic fa lampeggiare i LED della tastiera come indicazione visiva di una condizione critica.

A partire da Linux 6.10, è stato introdotto drm_panic, che consente ai driver DRM di supportare la visualizzazione di una schermata di panic per informare l'utente che si è verificato un kernel panic. Questo permette la comparsa della schermata anche se era in esecuzione un server grafico al momento del panic.

Da Linux 6.12, drm_panic è stato esteso per permettere la codifica del traceback come codice QR.

Kernel XNU  (macOS,iOS,WatchOS,IPadOS e tvOS)

[modifica | modifica wikitesto]

Quando si verifica un kernel panic in Mac OS X dalla versione 10.2 alla 10.7, il computer mostra un messaggio multilingue che informa l’utente della necessità di riavviare il sistema. Prima della versione 10.2, veniva visualizzato un messaggio di panic in stile Unix più tradizionale(esempio il messaggio “we are hanging here”che significa che il computer ha dovuto terminare tutti i processi,cioè bloccare completamente il computer per evitare danni alla memoria); a partire dalla versione 10.8 (da OS X 10.8 a MacOS 26), invece, il computer si riavvia automaticamente e il messaggio viene mostrato solo successivamente come avviso ignorabile,quest’ultimo contenente i dettagli del crash. Il formato del messaggio varia a seconda della versione.

Se si verificano cinque nuovi kernel panic entro tre minuti dal primo, il Mac mostrerà un segnale di divieto per trenta secondi e poi si spegnerà; questa situazione è nota come “kernel panic ricorrente”(o in inglese recurring kernel panic prevention).

Android(kernel Linux)

[modifica | modifica wikitesto]

Gestione in Android e dispositivi mobili

[modifica | modifica wikitesto]

Il sistema operativo Android, essendo basato sul Kernel Linux, eredita i medesimi meccanismi di protezione in caso di errore fatale del sistema. Quando si verifica un kernel panic, il dispositivo interrompe immediatamente l'esecuzione di tutti i processi attivi e congela lo stato del sistema operativo per prevenire danni sia software (corruzione del file system) sia fisici ai componenti hardware.

I fattori principali che possono scatenare un kernel panic su Android includono:

  • Surriscaldamento critico: interviene come misura di sicurezza termica estrema per evitare danni irreversibili ai circuiti integrati del System on a Chip (SoC).
  • Incompatibilità a livello di kernel: causata da moduli software non ufficiali, modifiche tramite permessi di root o kernel personalizzati (custom kernel) incompatibili con l'hardware.
  • Errori negli aggiornamenti di sistema: firmware corrotti, partizioni di avvio danneggiate o interruzioni durante la fase di flashing del sistema operativo.
  • Script o malware avanzati: codice malevolo progettato per sfruttare vulnerabilità di tipo privilege escalation (exploit) direttamente nello spazio del kernel.

Upload Mode (Samsung)

[modifica | modifica wikitesto]

Nei dispositivi prodotti da Samsung Electronics, il verificarsi di un kernel panic attiva spesso una specifica modalità diagnostica proprietaria definita Upload Mode[7]. In questa schermata (caratterizzata solitamente da testo su sfondo nero), il dispositivo interrompe il normale avvio e si predispone al dump (scaricamento) dei log della memoria RAM[8]. Questa modalità permette ai tecnici o agli utenti avanzati di estrarre i registri di arresto del sistema (panic log) tramite appositi strumenti software per PC al fine di diagnosticare la causa esatta del crash.


  1. Se il Mac si riavvia in modo inatteso o mostra un messaggio che indica che si è riavviato o spento a causa di un problema, su Apple Support. URL consultato il 21 maggio 2018.
  2. Che cos'è il Kernel Panic, su medium.com. URL consultato il 21 maggio 2018.
  3. Matt Welsh, Matthias Kalle Dalheimer e Lar Kaufman, Linux. La guida. URL consultato il 21 maggio 2018.
  4. (EN) Don’t Panic! Everything You Need To Know About Kernel Panics, su MakeUseOf. URL consultato il 21 maggio 2018.
    «A kernel panic, or its equivalent in the Windows world of a stop error or the dreaded Blue Screen of Death (BSOD)»
  5. (EN) Kernel Panic Solutions, su me-linux.blogspot.it. URL consultato il 21 maggio 2018.
  6. Kernel-Panic identificare un errore fatale interno, su Linuxiano. URL consultato il 21 maggio 2018 (archiviato dall'url originale il 22 maggio 2018).
  7. Why my device is giving the error "Kernel Panic Upload Mode"?, su Android Stack Exchange.
  8. How to Fix Kernel Panic Upload Mode Error on Samsung, su iTechify.

Voci correlate

[modifica | modifica wikitesto]

Altri progetti

[modifica | modifica wikitesto]
  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica