Craftcom > Windows > Windows Vista > Kernel > Zotavení
Verze pro tisk
Zotavení

Enhanced Crash Support

Může se stát, že špatně napsaný ovladač, chyba hardwaru nebo systému způsobí v kernel-mode vrstvě chybu, ze které se bez resetu systém nezotaví. V takovém případě systém zastaví činnost, zobrazí známou modrou obazovku smrti (BSOD) a vypíše obsah paměti na disk do speciálního souboru. Tyto soubory jsou užitečné, protože po restartu může služba Microsoft Online Crash Analysis (OCA) analyzovat příčinu pádu systému. Nebo jej může uživatel analyzovat sám pomocí Microsoft Debugging Tools for Windows.
Nicméně v předchozích verzích Windows nebylo možné vypsat obsah paměti, dokud Session Manager (%Systemroot%\System32\Smss.exe) neinicializoval stránkovací soubory. To znamená, že pokud chyba nastala dříve, obsah paměti se nevypsal a analýza byla mnohem obtížnější.
Windows Vista zavádí podporu výpisu paměti hned po inicializaci ovladačů potřebných k nabootování a to je ještě před načtením ovladačů pro samotný systém. Zkrátí se tak doba, po kterou může vzniknout chyba bez možnosti výpisu obsahu paměti. Vista navíc neukládá paměť po 4KB blocích jako v předchozích systémech, ale po 64KB což zrychlí samotný výpis více než 10x.
Vylepšené je i chování při pádu aplikace. Dříve když spadla aplikace, byla spuštěna chybová rutina, která dále spustila Microsoft Application Error Reporting (AER, %Systemroot%\System32\Dwwin.exe) a zobrazil se dialog s informací, že došlo k chybě a zeptal se, zda chcete poslat zprávu o chybě Microsoftu. Pokud byl ale během chyby poškozen zásobník hlavního threadu procesu, chybová rutina selhala, kernel proces ukončil a žádný dialog se nezobrazil.
Windows Vista přesunula obsluhu chyby mimo kontext havarovaného procesu do služby s názvem Windows Error Reporting (WER). Tato služba je implementována jako knihovna (%Systemroot%\System32\Wersvc.dll) a běží pod Service Host. Když spadne aplikace ve Windows Vista, vykoná se opět chybová rutina, která ale pošle zprávu službě WER. WER následně spustí proces WER Fault Reporting (%Systemroot%\System32\Werfault.exe), který zobrazí dialog se zprávou o chybě. Pokud je poškozen zásobník, selže chybová rutina, spustí se znovu a zase selže, nakonec se ale dostane na konec zásobníku a kernel pošle zprávu službě.
Na obrázcích 1 (Windows XP) a 2 (Windows Vista) můžete vidět vztah mezi havarovanou aplikací Accvivo.exe a procesem hlásícím chybu, oba zvýrazněny zeleně. Nová architektura zajistí, aby vždy existovala možnost získat informace o chybě a pomoct tak vývojářům s její opravou.


Obrázek 1 - Obsluha chyby ve Windows XP


Obrázek 2 - Obsluha chyby ve Windows Vista

Volume Shadow Copy

S Windows XP přišla technologie Volume Shadow Copy, která má za úkol v určitých časových intervalech vytvářet obraz disku. Využít je mohou například zálohovací aplikace ke kompletní záloze. Tyto obrazy jsou skryté a udržované jen po dobu zálohování.
Obrazy nejsou plnou kopií disku, ale obsahují jen sektory změněné od posledního vytvoření obrazu. Ovladač Volume Snapshot Provider (%Systemroot%\System32\Drivers\Volsnap.sys) monitoruje diskové operace a pokud zjistí, že má dojít ke změně sektoru, tak ho zálohuje do adresáře System Volume Information.
Windows Server 2003 umožnil spravovat obrazy administrátorům na serveru a uživatelům klientských stanic pomocí Shadow Copies for Shared Folders. Tato vlastnost také umožňovala vytvořit trvalé obrazy, ke kterým mohl uživatel přistupovat přes záložku Previous Versions (Předchozí verze) umístěnou v dialogu Properties (Vlastnosti) souborů a složek sdílených na serveru.
Windows Vista přináší podporu Previous Versions všem klientským systémům. Obrazy jsou tvořeny automaticky jednou denně a uživatelské rozhraní se nachází v dialogu Properties stejně jako u Shadow Copies for Shared Folders. Můžete si nechat zobrazit, obnovit nebo kopírovat staré verze souborů a složek které byly změněny nebo smazány. V podstatě nejsou Previous Versions novou technologií, ale optimalizované Volume Shadow Copy pro klientské prostředí.
Windows Vista také používají diskové obrazy ke sjednocení mechanismu ochrany uživatelských a systémových dat. Tím předchází zbytečnému zdvojování záloh. Když například aplikace nějakým zásahem do systému způsobí jeho nestabilitu, můžete použít System Restore (Obnovení systému), který obnoví systémové soubory/nastavení a vrátí systém do původního stavu (pokud byl ovšem vytvořen restore point - bod obnovení).
System Restore ve Windows XP používá ovladač souborového systému, který sleduje systémové soubory a v případě jejich změny zálohuje původní verze. System Restore ve Windows Vista využívají obrazy disků. Pokud tedy použijete obnovení systému ve Vistách, zkopírují se starší verze systémových souborů z obrazu na příslušném disku.

Mitch


© 2005 - 2011 Craft, craftcom.net
Všechna práva vyhrazena.
Šíření a kopírování textů, obrázků a jiných záznamů je bez předchozího souhlasu zakázáno.
Stránky vyhovují standardům: HTML 4.01 · CSS 2 · RSS 2
Čas zpracování: 110.857 ms