BSOD

Z Multimediaexpo.cz

Modrá obrazovka smrti

Modrá obrazovka smrti (BSoD, Blue screen of death) je slangové označení chybového hlášení, které operační systém Microsoft Windows zobrazí v situaci, kdy došlo k závažné systémové chybě, ze které není schopen se zotavit. Toto chybové hlášení se zobrazí přes celou obrazovku, bílým písmem na modrém pozadí (odtud název).

Obrazovka smrti byla v té či oné podobě přítomna ve všech operačních systémech řady Windows od Windows 2.0. V OS/2 jí odpovídá Černá obrazovka smrti. V operačním systému Linux je pro kritickou chybu jádra používáno hlášení kernel panic („zpanikaření“ jádra) nebo oops.

Obsah

Typy obrazovek smrti

Windows XP/2000/NT

Ve Windows NT, Windows 2000 a Windows XP označuje modrá obrazovka smrti (oficiálně označená jako „stop error“) nastane v situaci, kdy kernel zaznamená chybu, ze které se nelze zotavit. To je nejčastěji způsobeno tím, že některý ovladač nezpracuje vyhozenou výjimku nebo provede neplatnou operaci. V dané situaci je jedinou možností restart počítače, což může vést ke ztrátě dat, neboť Windows nebyly správně ukončeny.

Chybová zpráva „Stop“ obsahuje kód chyby a její symbolický název (např. 0x0000001E, KMODE_EXCEPTION_NOT_HANDLED) a čtyři hodnoty blíže určující chybu. Zobrazena je také adresa, na které problém nastal, a označení příslušného ovladače. Ve Windows NT a 2000 je dále uveden seznam všech načtených ovladačů (obsahující bázovou adresu ovladače, datum vytvoření ovladače a jeho název) a výpis zásobníku.

Windows lze nastavit tak, aby podrobné ladící informace poslaly přes COM rozhraní na kernel debugger na jiném počítači. Z omezených informací na obrazovce totiž jen těžko lze spolehlivě určit příčiny chyby.

Ve Windows XP SP1 a nižší lze manuálně vyvolat BSOD vytvořením klíče DWORD s názvem CrashOnCtrlScroll a hodnotou 1 v systémovém registru na adrese HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters a následným podržením klávesy Ctrl stisknutím klavesy Scroll Lock dvakrát.

Windows Me/9x

Modrá obrazovka smrti se také vyskytuje na operačních systémech Windows 95, 98 a Me. Zde je méně závažná, zato častější. V těchto operačních systémech je BSoD hlavním způsobem, jakým VxD může oznámit chybu uživateli (interně je označována jménem „_VWIN32_FaultPopup“). Při zobrazení modré obrazovky má na Windows 9x uživatel možnost volby – buď restartovat počítač, nebo se pokusit pokračovat. BSoD však pochopitelně znamená závažné potíže, takže možnost pokračování často nefunguje buď vůbec, nebo je poté systém nestabilní.

Nejčastější příčinou BSoD jsou zde nekompatibilní verze DLL knihoven, což je někdy označováno jako „DLL peklo“ (DLL hell). V případě, že je v systému nainstalována jiná verze dané DLL knihovny, než kterou program očekává, může to způsobit nestabilní chování. Tyto problémy postupně rostou tím, jak se do Windows instaluje nový software, což je příčinou toho, že nově přeinstalované Windows jsou stabilnější.

Na Windows 95 a 98 dojde k BSoD také tehdy, když se systém pokusí přistoupit k souboru c:\con\con. Tento fakt lze zneužít i vzdáleně, např. tím, že se na webové stránce odkáže na tento soubor, což může vést k tomu, že počítač uživatele, který takovou stránku zobrazí, havaruje. Pro tuto chybu již Microsoft vydal opravu (záplatu) [1].

K BSoD také může dojít v situaci, kdy uživatel vysune výměnné médium ve chvíli, kdy se z něj čte.

Na operačních systémech Windows NT, 2000 a XP už tento druh modré obrazovky smrti nenastává. V případě některé ze zmíněných chyb příslušný program zhavaruje, ale je operačním systémem ukončen, aniž by ovlivnil zbytek systému.

Vzhled

Obvyklý vzhled modré obrazovky smrti jsou bílá (RGB 255, 255, 255) písmena na modrém pozadí (RGB 0, 0, 170). Nastavením v souboru system.ini však lze nastavit libovolné jiné barvy z palety CGA.

Windows 95, 98 and Me používají textový režim s rozlišením 80×25 a písmo podobné fontu Fixedsys. Windows NT používají textový režim 80×50 při rozlišení 720×400. Ve Windows XP je použit font Lucida Console.

Příklady

Následují příklady modrých obrazovek smrti. Přesný vzhled se může na konkrétních počítačích lišit.

Windows XP

A problem has been detected and Windows has been shut down to prevent damage to your computer.

PFN_LIST_CORRUPT

If this is the first time you've seen this error screen, restart your computer. If this screen appears again, follow these steps:

Check to make sure any new hardware or software is properly installed. If this is a new installation, ask your hardware or software manufacturer for any Windows updates you might need.

If problems continue, disable or remove any newly installed hardware or software. Disable BIOS memory options such as caching or shadowing. If you need to use Safe Mode to remove or disable components, restart your computer, press F8 to select Advanced Startup Options, and then select Safe Mode.


Technical information:
*** STOP: 0x0000004e (0x00000099, 0x00000000, 0x00000000, 0x00000000)


Beginning dump of physical memory Physical memory dump complete. Contact your system administrator or technical support group for further

assistance.

Windows NT4/2000

*** STOP: 0x0000000A (0x00000000, 0x00000002, 0x00000000, 8038c510)

IRQL_NOT_LESS_OR_EQUAL*** Address 8038c510 has base at 8038c000 - Ntfs.sys

CPUID:AuthenticAMD irq1:1f SYSVER 0xf0000565

Dll Base DateStmp - Name               Dll Base DateStmp - Name 80100000 336546bf - ntoskrnl.exe       80010000 33247f88 - hal.dll 80000100 334d3a53 - atapi.sys          80007000 33248043 - SCSIPORT.SYS 802ab000 33013e6b - epst.mpd           802b5000 336016a2 - Disk.sys 802b9000 336015af - CLASS2.SYS         8038c000 3356d637 - Ntfs.sys 802bd000 33d844be - Floppy.sys         803e4000 33d84553 - viaide.sys f9328000 31ec6c8d - Siwvid.sys         f95c9000 31ec6c99 - Null.SYS f9468000 31ed868b - KSecDD.sys         f95cb000 335e60cf - Beep.SYS f9348000 335bc82a - i8024prt.sys       f95cb000 3373c39d - ctrl2cap.SYS f947c000 31ec6c94 - kbdclass.sys       f9474000 3324806f - mouclass.sys f9370000 33248011 - VIDEOPORT.SYS      fe9d7000 3370e7b9 - NDIS.SYS f9480000 31ec6c6d - vga.sys            f93b0000 332480dd - Msfs.SYS f90f0000 332480d0 - Npfs.sys           fe957000 3356da41 - ati.sys a0000000 335157ac - win32k.sys         fe914000 334ea144 - ati.dll fe0c9000 335bd30e - Fastfat.SYS        fe110000 31ec6c9b - Parport.SYS fe108000 31ec6c9b - Serial.sys         f93b4000 31ec7c9d - ParVdm.SYS f9050000 332480ab - Parallel.sys       

Address  dword dump   Build [1314]                             - Name 801afc24 80149905 80149905 ff8e6b8c 80129c2c ff8e6b94 8025c000 - Ntfs.SYS 801afd24 80129c2c 80129c2c ff8e6b94 00000000 ff8e6b94 80100000 - ntoskrnl.exe 801afd34 801240f2 80124f02 ff8e6cf4 ff8e6d60 ff8e6c58 80100000 - ntoskrnl.exe 801afd54 80124a16 80124a16 ff8e6f60 ff8e6c3c 8015ac7e 80100000 - ntoskrnl.exe 801afd64 8015ac7e 8015ac7e ff8e6cf4 ff8e6f60 ff8e6c58 80100000 - ntoskrnl.exe 801afc70 80129bda 80129bda 00000000 80088000 80106f60 80100000 - ntoskrnl.exe

Restart and set the recovery options in the system control panel or the /CRASHDEBUG system start option. If this message reappears, contact your system administrator or technical support group.

Windows 95/98/ME

 Windows 

   A fatal exception 0E has occurred at 0157:BF7FF831. The    current application will be terminated.

   *  Press any key to terminate the current application.    *  Press CTRL+ALT+DEL to restart your computer.  You will       lose any unsaved information in all applications.

                    Press any key to continue

Externí odkazy