Diagnostika a řešení bluescreenu, 1. část

Původně jsem zamýšlel tento článek pojmenovat „Kamarádíme se s bluescreenem“, ale rychle jsem si to rozmyslel, protože bez ohledu na to, jak je člověk zběhlý v jejím řešení, modrá smrt1 vždy byla a bude velkou nepříjemností. Každopádně mým cílem je demystifikovat blue screen, že to není něco, čemu rozumí jen hrstka lidí v Redmondu a běžný smrtelník s tím nemůžeme nic udělat.

Nejprve bych chtěl trochu setřást démonickou auru, jakou si BS vysloužil, a proto uvádím zjednodušeně pár poznámek:

  • Blue screen může vyvolat jen chyba jádra systému nebo jiných programů v tzv. kernel space. (typicky se jedná o ovladače zařízení, ale také třeba antiviry)
  • Microsoft průběžně zpřísňuje podmínky testování a certifikování driverů. Proto situace v novějších Windows už není tak tristní, jak bývala.
  • Příčinou chyby, která vyvolá blue screen, bývá dnes obvykle problém s hardwarem.
  • Blue screen efektivně chrání naše data před poškozením, když se systém dostane do neočekávaného stavu.
  • Blue screen není specialita Windows (vyjma charakteristické barevnosti). Linux (a tím pádem i Mac OS) má Kernel panic.

Teď když máme za sebou teorii, pojďme se podívat, jak má být systém nastavený, abychom měli šanci zjistit, co se při blue screenu pokazilo. Windows se totiž snaží při vzniku bluescreenu posbírat spoustu informací aby napomohl jeho řešení, ovšem má to několik podmínek. Jednak musí být povolen stránkovací soubor a za druhé musí být povolené vytváření výpisů paměti při selhání systému (vytváření tzv. memory dumpů, nebo jen dumpů). Obojí je naštěstí ve výchozím stavu nastaveno tak, že „nějaký“ (podle verze Windows a podle velikosti RAM) dump při bluescreenu dostaneme a ten pro účely tohoto seriálu bude stačit, ale pokud si nejste jisti zda máte výchozí nastavení, nebo si chcete prostě zaexperimentovat, níže popíšu, jak se dostat k obojímu. Vy ostatní zatím počkejte na další díl, ve kterém se už do dumpů podíváme.

Nastavení stránkovacího souboru

Stránkovací soubor (pagefile) je pro Windows takovým virtuálním rozšířením operační paměti a rozhodně se vyplatí mít nějaký vytvořený. Snad jen v případě, kdy trpíte na diskový prostor (počítač s jediným malým SSD) a zároveň máte dostatek RAM (podle využití ale dejme tomu 12GB+), bych uvažoval o jeho zakázání. Ovšem pokud chcete zkoumat bluescreeny, tak se bez pagefilu neobejdete. V okamžiku selhání systému si totiž Windows nemohou dovolit dělat žádné úkony navíc (vytvořit soubor), protože s každou operací vzniká riziko poškození dat. Sáhne tudíž na jediné místo, které má kdykoliv pod kontrolou a v kterém může cokoliv přepsat – do stránkovacího souboru.

Na nastavení stránkovacího souboru je v systému utilitka C:\Windows\System32\SystemPropertiesAdvanced.exe

Nastavení stránkovacího souboru

Obrázek 1 – Nastavení stránkovacího souboru

Stačí mít pagefile jakkoliv aktivovaný (řízený systémem nebo vlastní velikost), aby zvládal ukládat základní dumpy. Tady bych si ještě dovolil poznámku, že automaticky spravovaný pagefile funguje dobře ve Windows 8, ale pokud máte starší systém, není od věci si nastavit jeho velikost ručně. Ve Win7 a starších Windows měl totiž minimální velikost rovnou velikosti RAM, což je už u 8GB systémů přehnané. Nezapomeňte ale dostatečně nafouknout maximální velikost.

Povolení výpisů paměti při selhání systému

Jak už jsem zmínil dříve, Windows umí dělat různé úrovně výpisů paměti. Liší se v objemu dat (a tak i potřebné velikosti pagefile). Windows 8 navíc lze nechat automaticky rozhodnout jaký dump má vytvořit.

  • Zkrácený výpis paměti (minidump); pagefile s minimální velikostí (16MB) je naprosto dostatečná.
  • Výpis paměti jádra (kernel dump); pagefile stačí 1GB (nelze ale určit jednoznačně předem).
  • Kompletní výpis paměti (complete dump); pagefile musí být alespoň velikosti RAM + asi 100MB navíc.

Ale ať už si vyberete jakoukoliv úroveň (vyjma deaktivace), bude to stačit, protože budeme v dalším díle analyzovat minidumpy, které Windows vytvoří jako bonus, i když chcete podrobnější výpisy.

Nastavení můžete změnit opět v utilitce C:\Windows\System32\SystemPropertiesAdvanced.exe

Nastavení výpisů paměti

Obtázek 2 – Nastavení výpisů paměti


1 Dovolím si libovolně používat termíny bluscreen, bugcheck, modrá smrt a zkratky BS a BSOD kterými myslím vždy to kritické zastavení Windows obvykle doprovázené modrou obrazovkou a vždy následované restartem systému. Autoritativní zdroje o tom mluví nejčastěji jako o „Stop Error“ nebo „Bug Check“.

1 komentář: „Diagnostika a řešení bluescreenu, 1. část

  1. Pingback: Diagnostika a řešení bluescreenu, 2. část | Hello world

Zanechat odpověď

Vyplňte detaily níže nebo klikněte na ikonu pro přihlášení:

Logo WordPress.com

Komentujete pomocí vašeho WordPress.com účtu. Odhlásit /  Změnit )

Google photo

Komentujete pomocí vašeho Google účtu. Odhlásit /  Změnit )

Twitter picture

Komentujete pomocí vašeho Twitter účtu. Odhlásit /  Změnit )

Facebook photo

Komentujete pomocí vašeho Facebook účtu. Odhlásit /  Změnit )

Připojování k %s