Schermata blu di errore

schermata di crash di sistema di windows
(Reindirizzamento da BSOD)

Una schermata blu di errore (detta in inglese Blue Screen o Blue Screen of Death, ossia schermata blu della morte, indicato anche con la sigla BSoD) è il nome dato comunemente alla schermata di colore blu mostrata da un computer con un sistema operativo Microsoft Windows quando si verifica un errore di sistema critico che non può essere risolto autonomamente.

"Epidemia" di schermate blu di errore.

Descrizione

modifica
 
Black Screen of Death su Windows 11

Ci sono due schermate di errore indicate come schermate blu, una delle quali (su Windows NT) notevolmente più grave dell'altra (su Windows 9x).

In una forma o nell'altra, la schermata blu della morte è ed è stata presente in tutti i sistemi Windows a partire da Windows 1.0. È simile alla schermata nera di errore di OS/2, di cui svolge la stessa funzione. Nelle prime anteprime di Windows Vista è stata accompagnata da una schermata rossa di errore, usata per gli errori del boot loader.

A partire dalla build 14997 di Windows 10 esiste una variante verde della BSoD, la GSoD (Green Screen of Death, schermata verde della morte), presente esclusivamente nelle versioni beta del sistema operativo.[1]

Nella prima versione di Windows 11 la schermata di errore inizialmente non era più di colore blu ma era diventata nera; molto probabilmente era stato scelto proprio questo colore perché l'iniziale del colore in inglese è la stessa e quindi si poteva continuare ad utilizzare l'acronimo BSoD, con la "B" che significava "Black" anziché "Blue". Il pubblico non ha tuttavia gradito questa scelta, quindi Microsoft ha deciso di far tornare blu la schermata con il successivo aggiornamento del sistema operativo.

Tipologie

modifica

Windows 1.0

modifica

Anche la prima versione in assoluto di Windows possedeva una sua Blue Screen of Death.

Questa Blue Screen of Death non era formattata ed era piena di caratteri grafici incomprensibili e non interpretabili in alcun modo. L'errore che la produceva era solitamente causato dall'uso di una versione non supportata di MS-DOS, e per l'utente, a seguito del problema, non era possibile in alcun modo recuperare i dati ed il lavoro svolto.

Windows NT

modifica
 
Una grossa schermata blu a Las Vegas
 
Un Blue Screen of Death su un PC
 
Windows NT 3.51 in italiano

In Windows NT le schermate blu compaiono quando si genera un errore non risolvibile, solitamente causato dal tentativo di eseguire un'operazione assolutamente non valida, nel kernel o in un driver eseguito a livello del kernel. L'unica cosa che si può fare in questo caso è riavviare il computer, a meno che nel pannello di controllo non sia disabilitato il riavvio automatico in caso di errore di sistema. Come risultato sono altamente probabili perdite di dati, visto che per l'utente non è possibile salvare eventuali dati non ancora memorizzati sul disco rigido.

Le schermate blu sono conosciute come blue screen nella documentazione del Windows Resource Kit, e a volte sono chiamate bug check nella documentazione del Software development kit e del Driver development kit di Windows. Il testo sulla schermata d'errore contiene il codice dell'errore, come anche il suo nome simbolico (ad esempio 0x0000007E, SYSTEM_THREAD_EXCEPTION_NOT_HANDLED) insieme a quattro valori che dipendono dall'errore fra parentesi, per aiutare gli sviluppatori a risolvere il problema. A seconda del codice di errore, può essere mostrato l'indirizzo a cui si riferisce l'errore e il driver che è stato caricato a quell'indirizzo. In Windows NT e 2000, la seconda e la terza sezione della schermata contengono rispettivamente informazioni su tutti i driver caricati e una copia dello stack. Le informazioni sui driver sono posizionate in tre colonne; la prima elenca il base address del driver, la seconda la data di creazione del driver (come timestamp Unix) e la terza il nome del driver.[2].

Di default, Windows crea un file con una copia della memoria quando viene prodotta una schermata blu. A seconda della versione del sistema operativo, possono esserci diversi formati in cui questo file può essere salvato, che vanno dal "minidump" di 64K al "dump completo", che è una copia dell'intero contenuto della RAM fisica al momento dell'errore. Il file risultante può essere analizzato successivamente usando un kernel debugger. È necessario un debugger per ottenere una traccia dello stack e spesso anche per stabilire la vera causa del problema, poiché le informazioni sullo schermo sono limitate e potrebbero portare a errori nell'interpretazione.

Windows può anche essere configurato anche per inviare informazioni di debug a un kernel debugger in esecuzione su un altro computer (Windows XP permette anche di eseguire un kernel debugging in locale). Di conseguenza, se si presenta un errore da schermata blu mentre il kernel debugger è attivo, Windows fermerà l'esecuzione e farà sì che il debugger "irrompa", invece di mostrare il BSoD. Il debugger può quindi essere usato per esaminare i contenuti della memoria e determinare l'origine del problema. Windows Debugger è un software freeware[3].

Windows include una caratteristica che può essere usata per causare manualmente un blue screen, a proprio rischio e pericolo. Per abilitarla, l'utente deve aggiungere un preciso valore nel registro di sistema di Windows; una volta fatto ciò, un BSoD appare quando l'utente preme due volte il tasto BLOC SCORR tenendo contemporaneamente premuto il tasto CTRL di destra[4]. Questo è utile principalmente per ottenere un dump della memoria quando il computer si trova in un determinato stato; in quanto tale, viene usato in genere come supporto nella risoluzione dei blocchi di sistema.

Un BSoD può anche essere causato da un errore critico del boot loader, quando il sistema operativo non riesce ad accedere alla partizione di avvio per un errore del disco o per problemi simili. In questi casi il codice d'errore è STOP 0x0000007B (INACCESSIBLE_BOOT_DEVICE) e non ci può però essere alcun dump della memoria. Data l'impossibilità di riavviare in queste situazioni, la correzione del problema può richiedere addirittura un riavvio tramite il CD-ROM di Microsoft Windows.

In Windows Vista e 7 è possibile causare uno schermo blu anche semplicemente terminando da Gestione attività Windows (CTRL+ALT+CANC) il processo denominato "csrss.exe" oppure il processo "wininit.exe".

ReactOS

modifica
 
ReactOS 0.4.0

Anche ReactOS, un'implementazione libera di un sistema operativo compatibile con Windows NT, implementa una sua schermata blu simile a quella di Windows NT.

Windows 9x/Me

modifica
 
BSoD in WIndows 3.1.
 
BSoD in Windows 9x/Me.

La schermata blu della morte è presente anche in Windows 95, 98 e Me. In questi è spesso meno grave, ma più frequente; è principalmente un modo usato dai driver virtuali per segnalare gli errori all'utente. È indicata internamente con il nome di "_VWIN32_FaultPopup". Le schermate blu in Windows 9x/Me danno all'utente la possibilità di riavviare il sistema ed anche, a differenza di quanto accade in Windows NT, di tornare a ciò che si stava facendo per tentare di fare altre operazioni. In ogni caso le schermate blu non sono mai mostrate senza motivo, di solito indicano comunque un problema che non può essere risolto senza riavviare il computer, quindi dopo la comparsa di una schermata blu il sistema è di solito instabile o con ritardi nelle risposte ai comandi dell'utente.

La causa più frequente delle schermate blu in Windows 9x/Me è la presenza di versioni incompatibili di alcune DLL. Questo problema è indicato talvolta come inferno delle DLL o, in inglese, DLL hell. Windows carica una DLL nella memoria quando essa è richiesta da un'applicazione; se cambia la versione della DLL richiesta, al successivo caricamento la DLL presente in memoria sarà diversa da quella che l'applicazione si aspetta, e ciò produce la schermata di errore. Queste incompatibilità aumentano con l'invecchiare e l'aumentare del software installato, e questo è uno dei motivi principali per cui una copia di Windows appena installata è più affidabile di una in servizio da tempo.

In Windows 95 e 98 compare una schermata blu se si tenta di accedere al file "C:\con\con", che per tale motivo a volte veniva inserito come malware scaricato da alcuni siti web per mandare volutamente in crash la macchina dell'utente. Microsoft ha distribuito una patch per evitare ciò[5].

In Windows 9x/Me compare una schermata blu anche se l'utente espelle un supporto di memoria di massa rimovibile (come un CD-ROM o un floppy disk) mentre esso viene letto e/o scritto. Questo è particolarmente frequente usando Microsoft Office, quando si lavora su file salvati su supporti esterni e si rimuove il supporto prima di chiudere il programma. I software Microsoft Office creano sempre un file temporaneo (che viene aggiornato continuamente) nella stessa cartella in cui si trova il documento che si sta modificando, e tale file viene poi eliminato automaticamente quando il programma viene chiuso, quindi se si chiude il programma dopo l'estrazione del disco la cancellazione del file fallisce, in quanto il file non viene più trovato, e tale errore causa la schermata blu.

Questo tipo di schermata blu non è più presente in Windows NT a partire da 2000. In tale sistema operativo, in caso di errori meno gravi del software, il programma andrà in crash ugualmente ma non si porterà con sé l'intero sistema operativo, grazie a una gestione della memoria migliore. In questi sistemi, le schermate blu appaiono solo in caso di crash dell'intero sistema operativo.

Windows CE

modifica
 
Windows CE 5.0

Una semplice versione delle schermate blu è presente in Windows CE, ma non in Windows CE per Pocket PC. Le schermate blu in Windows CE 3.0 sono simili a quelle di Windows 95 e 98.

Installazioni di Windows

modifica

A volte si verificano errori critici che portano a schermate blu anche durante le installazioni di Windows, e spesso questo non permette di portare a termine l'installazione. Questi errori vengono spesso alla luce a causa di un processore con un bug o per qualche problema a livello hardware o firmware (hardware troppo vecchio, BIOS non aggiornato ecc.).

Display

modifica

Per default il colore delle scritte è bianco (colore EGA 0x0F; colore HTML #FFFFFF) su sfondo blu (colore EGA 0x01; colore HTML #0000AA), con informazioni su alcuni valori correnti della memoria e i valori dei registri. Per utenti con problemi di vista, Microsoft ha introdotto un'utility che permette di cambiare le impostazioni nel system.ini dei codici di colore che BSoD usa, scegliendo tra i 16 della tavolozza EGA.

Windows 95, 98 e Me usano la modalità testo 80×25. Il tipo di carattere è identico al Fixedsys. Il BSoD in Windows NT usa la modalità testo 80×50. La risoluzione dello schermo è 720×400. Il BSoD da Windows 2000 alla versione 7 usa il tipo di carattere Lucida Console, mentre da Windows 8 si utilizza il carattere Segoe UI, con una riduzione delle informazioni tecniche precedentemente presenti, compensate dall'aggiunta di un QR Code che consente di accedere direttamente ad una pagina del sito Microsoft contenente approfondimenti e soluzioni sull'errore appena accaduto.

Altre schermate d'errore (SoD)

modifica
  • Un altro "orribile" schermo della morte è quello nero, ben noto ai giocatori di Nintendo. Lo schermo nero della morte segnala un errore nella connessione per il multiplay in Wi-Fi, specialmente nel Nintendo DS, dove in tale eventualità tutti e due gli schermi del DS diventano totalmente neri e il sistema si blocca. Uno schermo blu di errore invece appare solo nel gioco Animal Crossing: Wild World. Sempre sul DS, se si estrae la cartuccia di un gioco mentre si è in PictoChat, si ha un Pink Screen of Death (PSoD) e gli schermi diventano rosa, con il blocco del gioco. Se si toglie una qualsiasi cartuccia di gioco dal Nintendo 3DS mentre si gioca appare invece una schermata nera con scritte bianche che richiede di premere il tasto HOME.
  • Un Red Screen appare su alcune console Atari (tra le quali vi sono l'Atari 2600 e l'Atari Jaguar, special modo nel suo add-on CD) quando si riscontra un problema interno o un errore di caricamento della cartuccia.
  • Sul Gameboy Advance, se si toglie la cartuccia di un gioco mentre è in esecuzione, si presenta un Blue Screen of Death (lo schermo diventa blu e il sistema si blocca) o si vede un'immagine del gioco bloccato e la console emette un suono.
  • Sulla PlayStation Portable, quando la directory di sistema "flash1:\" risulta danneggiata, si vede un BSoD, che chiede in 9 lingue di "Premere il tasto O per ripristinare le impostazioni iniziali", unico sistema per uscire dal blocco. C'è anche un RSoD, rosso, molto raro, che compare quando ad essere danneggiata è la directory "flash0:/". Un errore da RSoD è molto grave, ma comunque risolvibile.
  • Nell'RPC Sega Phantasy Star Online un problema critico di avvio può causare un Frozen Screen of Death, uno "schermo congelato", detto anche FSoD. Il FSoD può causare all'utente la perdita nel gioco di tutti o quasi tutti gli oggetti in suo possesso o in casi gravi anche alla perdita di tutti i dati nella memory card.
  • Un Blue Screen su un telefono cellulare Samsung Z150 riporta il messaggio: "Can't make blue screen due to memory crash. Please press * to download Ramdump." ("Impossibile generare uno schermo blu a causa di un errore di memoria. Prego premere * per scaricare Ramdump").
  • Alcuni decoder con display, in seguito a un errore di sistema grave, si resettano da soli, e durante il ripristino il display continua a lampeggiare. Il decoder viene riportato alle impostazioni iniziali (tranne per i codici PIN). Questo è conosciuto come DigiBox Display of Death (DBDoD).
  • I computer Amiga mostrano come messaggio di errore critico il Guru meditation.
  • Il Nintendo (NES) è conosciuto per il suo Grey Screen of Death. Questo schermo grigio è generato dal sistema di protezione 10NES e si presenta quando viene inserita la cartuccia di un gioco non originale o quando i contatti della cartuccia inserita sono sporchi o corrosi.[6]
  • In VMK, quando fallisce il caricamento dello schermo iniziale, è alta la probabilità di imbattersi in un Black Screen of Death.
  • Nel server ESX di VMWare, quando è presente un errore fatale nel kernel, appare un Purple Screen Of Death (PSOD), di colore viola.
  • Nei sistemi unix-like, in caso di errori irreversibili, il sistema entra in kernel panic, mostrando a video informazioni di debugging.
  • Su Linux, quando Compiz o Beryl vanno in crash, viene mostrato un White Screen of Death, bianco.
  • Nel browser Google Chrome, quando una pagina web non viene caricata correttamente o ci sono degli errori nella lettura del codice HTML di tale pagina, appare una schermata di colore violastro chiamata Sad Tab Of Death (che in italiano significa "scheda triste della morte").
  • Sui TV Grundig dotati di menu OSD, se viene impostato il codice di sicurezza, all'accensione viene mostrata una schermata per l'inserimento del codice. Questa schermata viene chiamata TKoD (Three Keys of Death), letteralmente Tre Chiavi della Morte, oppure Security System.
  • Oltre ad avere più di un SOD, le console PlayStation 3 e Xbox 360 hanno anche delle segnalazioni luminose che segnalano i malfunzionamenti. La PS3 ha una spia gialla chiamata Yellow Light Of Death (YLOD), letteralmente "luce gialla della morte", mentre l'Xbox 360 ha un cerchio luminoso di colore rosso attorno al tasto di accensione, chiamato Red Ring Of Death (RROD), letteralmente "anello rosso della morte", composto da quattro spie che si illuminano in numero e maniera diversa a seconda del problema verificatosi. Sulla Xbox 360, dopo la comparsa del "Red Ring of Death", compare una schermata nera con delle scritte che spiegano le cause del RRoD.
  • Nella prima PlayStation, quando nelle console non modificate (che leggono quindi solo dischi originali) si inserisce un disco non originale oppure un disco che non è un gioco per PlayStation, appare una schermata rossa che chiede di inserire un disco supportato. Essa appare anche nella PlayStation 2, seppur con una grafica diversa.

Schermate blu nell'industria IT

modifica

Gli amministratori di sistema spesso usano to bluescreen oppure to BSoD (che si potrebbe tradurre "bluschermare" e "BSoDare") come comuni verbi, per esempio in frasi come: "Il server ha appena BSoDato", "Oh, fantastico, sta per BSoDare", oppure "Windows 2000 non bluscherma tanto quanto faceva NT 4."

Anche i sistemi integrati Microsoft Windows NT Embedded e Windows XP Embedded hanno le schermate blu.[7] Esempi tipici sono i telefoni pubblici, i bancomat e le bacheche elettroniche.

Il malware WinNuke è in grado di lanciare un attacco telematico che fa andare in BSoD un sistema Windows 95 sfruttando un suo bug, poi corretto con un'apposita patch fornita in seguito.

Riferimenti conosciuti

modifica
  • Dato che il BSoD è spesso oggetto di scherzi e battute, è stato anche introdotto in altri sistemi operativi all'interno di alcuni normalissimi salvaschermo. Microsoft ha anche inserito un riferimento al BSoD come un easter egg all'interno del browser Internet Explorer (dalla versione 4 alla 7). Digitando "about:mozilla" nella barra degli indirizzi si causa la visualizzazione di una pagina blu, vuota. Ciò è stato comunque rimosso con il Service Pack 2 e Windows Vista, ma la pagina blu può ancora essere visualizzata digitando invece "res://mshtml.dll/about.moz", che si può impostare su about:mozilla modificando le stringhe di IE nel registro di sistema. Questo comando è la maniera standard di richiamare Il Libro di Mozilla, un altro uovo di Pasqua nella famiglia di browser Netscape/Mozilla.
  • Molti negozi on-line vendono delle magliette blu che mostrano un BSoD, ed esso appare comunemente in molti videogiochi e fumetti on-line.
  • In Advance Wars: Dual Strike, Black Hole CO Jugger parla in termini molto tecnici e dice spesso "schermata blu" ("blue screen of death").
  • Uno degli effetti della (in)sanità mentale in Eternal Darkness: Sanity's Requiem causa un'apparizione improvvisa di BSoD durante le battaglie o le scene di tensione. Queste apparizioni durano solo pochi secondi, poi lo schermo lampeggia in bianco e ritorna al gioco in corso.
  • Nel gioco Halo 2, nella mappa multigiocatore Zanzibar, l'apertura del cancello dal pannello di controllo causa la visualizzazione, sul pannello stesso, di una parodia di una schermata blu.
  • Nel videogioco per PlayStation Metal Gear Solid, quando Mantis, uno dei boss da affrontare, urla "Black Out!", si hanno 5 secondi di Black Screen of Death, con, in alto a destra, la scritta "HIDEO" (riferita al creatore del videogioco, Hideo Kojima) in verde, nello stile dei menu su schermo dei televisori a tubo catodico.
  • Nel cartone animato Jimmy Neutron, nell'episodio Insonnia a retroville, compare la schermata blu.
  • Nel videogioco dei Simpson, superato il livello finale, compare scherzosamente una BSoD, subito strappata da Bart.
  • Nel film 1408, mentre il protagonista sta parlando con la moglie per videoconferenza, vengono attivati degli Sprinkler (spruzzini antincendio) e sul computer appare uno schermo blu della morte.
  • Da Mac OS X Leopard in poi i PC disponibili in rete vengono visualizzati come monitor beige che mostrano un BSoD.
  • In Half-Life, alcuni piccoli schermi mostrano uno BSoD, come nella zona di accesso al settore C (nel capitolo Materiali anomali). Anche Portal 2, nei livelli successivi al capitolo 6, mostrano nei schermi della zona ascensore il BSoD.
  • Compare nel mensile Focus numero 212 a pagina 69.
  • Nel videogioco Phoenix Wright: Ace Attorney - Trials and Tribulations compare un'azienda informatica col nome Schermate Blu, che in inglese diventa Blue Screen.
  • Nel videogioco SWAT4 per PC, tutti i monitor di tutte le missioni sono in BSoD.
  • Nel cartone animato Lo straordinario mondo di Gumball, quando Gumball visita per la prima volta Internet, sviene per il troppo carico di informazioni che sta "imparando" e gli compare scherzosamente il BSoD.
  • Nel videogioco Portal 2 il BSoD compare all'entrata di alcuni livelli puzzle.
  • Nel videogioco The Sims 4, quando un computer si rompe, compare una BSoD identica a quella di Windows 7 con le scritte nella lingua del gioco, il simlish.

Altre versioni

modifica

Codice di esempio

modifica

Di seguito è riportato del codice di esempio in c++ che causa la schermata blu:

#include <windows.h>

//Libreria
#pragma comment(lib, "ntdll.lib")

extern "C" NTSTATUS NTAPI RtlAdjustPrivilege(ULONG Privilege, BOOLEAN Enable, BOOLEAN CurrentThread, PBOOLEAN OldValue);
extern "C" NTSTATUS NTAPI NtRaiseHardError(LONG ErrorStatus, ULONG NumberOfParameters, ULONG UnicodeStringParameterMask,
	PULONG_PTR Parameters, ULONG ValidResponseOptions, PULONG Response);

void BlueScreen() {
	BOOLEAN bl;
	ULONG Response;
	RtlAdjustPrivilege(19, TRUE, FALSE, &bl); // Enable SeShutdownPrivilege
	//STATUS_ASSERTION_FAILURE 0xC0000420
	NtRaiseHardError(STATUS_ASSERTION_FAILURE, 0, 0, NULL, 6, &Response); // Shutdown
}

int main() {
	BlueScreen();
	return 0;
}
  1. ^ Le schermate verdi della morte (GSOD) arrivano su Windows 10, in Hardware Upgrade. URL consultato il 22 settembre 2017 (archiviato dall'url originale il 23 settembre 2017).
  2. ^ Microsoft Corporation (29 ottobre 1996), Microsoft Windows NT Workstation Resource Kit, prima edizione, Microsoft Press, ISBN 1-57231-343-9
  3. ^ Debugging Tools for Windows - Overview Archiviato il 17 febbraio 2011 in Internet Archive., Microsoft Corporation
  4. ^ Windows permette di generare un file Memory.dmp tramite tastiera, Microsoft Corporation
  5. ^ Patch per la vulnerabilità "DOS Device in Path Name" Archiviato il 5 febbraio 2005 in Internet Archive., Microsoft TechNet
  6. ^ The best way to fix your NES, su levelskip.com. URL consultato il 9 novembre 2016 (archiviato dall'url originale il 10 novembre 2016).
  7. ^ Microsoft Mirth, su pixelbeat.org. URL consultato il 4 marzo 2006 (archiviato dall'url originale l'11 febbraio 2006).

Voci correlate

modifica

Altri progetti

modifica

Collegamenti esterni

modifica
  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica