Bsod aké ovládače sú potrebné pre počítač. Použitie Driver Verifier na identifikáciu problematického ovládača. Čítanie súboru výpisu

Existuje veľa dôvodov pre BSOD, ale v tomto článku sa budeme zaoberať problémom, ktorý vzniká v dôsledku konfliktu nainštalovaných ovládačov. Môže byť nainštalovaný ovládač alebo poškodené. Oprava problému BSOD môže byť celkom jednoduchá, ak ide len o problém s ovládačom a viete, ktorý to je. Môžete preinštalovať ovládač alebo ho aktualizovať, vrátiť sa späť na stará verzia alebo sa zbavte aplikácie, ktorá nainštalovala ovládač do vášho počítača, jeho fyzickým odstránením. Problémom je, že nie vždy je možné zistiť, ktorý vodič je „vinníkom“, a to ani po preštudovaní všetkých údajov z modrá obrazovka. Ale existuje cesta von. Ak nemáte veľa vedomostí a skúseností, ale je potrebné skontrolovať ovládače, môžete pre takéto prípady použiť špeciálny overovací nástroj Verifier.exe zabudovaný v OS. Existujúci popis v znalostnej báze spoločnosti Microsoft je prezentovaný pomocou zložitých technických výrazov, ktoré nie sú vždy známe ani skúseným používateľom. Preto tento článok predstavuje krátky zoznam manipulácií potrebných na dokončenie úlohy. Spustenie overovača ovládačov Po otvorení ponuky „Štart“ zadajte do vyhľadávacieho poľa dopyt „Spustiť“ a kliknite na výsledok, ktorý sa zobrazí v hornej časti. V zobrazenom okne musíte zadať príkaz „ overovateľa“ (bez úvodzoviek) a potvrďte kliknutím na „OK“.
Zobrazí sa dialógové okno File Verification Manager. V prvom dialógovom okne musíte vybrať položku „Vytvoriť neštandardné parametre (pre programový kód)“. Kliknite na „Ďalej“.
Ďalším krokom je výber jednotlivých parametrov na testovanie ovládača. Za týmto účelom vykonáme nasledujúce manipulácie: „Vyberte jednotlivé parametre z úplný zoznam“ - „Ďalej“.
Po dokončení krokov by ste mali dostať dialógové okno so zoznamom parametrov testovania. Začiarknite všetky políčka okrem položky „Simulovať nedostatok zdrojov“. Kliknite na tlačidlo Ďalej.
Posledným krokom v tejto časti je zadanie príkazu dispečerovi automatický výber nepodpísaných vodičov. Vyberte možnosť „Automaticky vybrať nepodpísané ovládače“. Kliknite na tlačidlo Ďalej.
Stáva sa, že manažér nezistil nepodpísané ovládače. Potom použite funkciu selektívnej kontroly ovládača, o ktorej sa bude diskutovať neskôr. Práca s nepodpísanými ovládačmi Ak sa zistia nepodpísané ovládače, manažér ich zobrazí vo forme zoznamu.
Môžu to byť ovládače zariadení alebo ovládače aplikácií. Po zistení nepodpísaných ovládačov nie je potrebné zavrieť správcu a kliknúť na tlačidlo „Dokončiť“. Najprv skontrolujte aktualizované ovládače. Vyhľadajte aktualizované ovládače Ak chcete skontrolovať, musíte vykonať nasledujúce kroky: 1. Ovládač aplikácie je v zozname. V takom prípade musíte navštíviť webovú stránku výrobcu aplikácie a skontrolovať aktualizované ovládače. V prípade aktualizovaná verzia chýba ovládač, skúste aplikáciu odinštalovať. Nebojte sa, kedykoľvek si ho môžete nainštalovať znova. Bude to však vynikajúca kontrola: ak sa už nevyskytujú kritické chyby, dôvod bol túto aplikáciu. 2. Zoznam obsahuje ovládač zariadenia. V tomto prípade (ak máte Windows Vista), spustite centrum aktualizácií a povoľte vyhľadávanie novej funkcie ovládača. Ak sa nájde nový ovládač, spustite jeho inštaláciu. 3. Ak centrum aktualizácií nenašlo nový ovládač, pozrite sa na webovú stránku výrobcu, je pravdepodobné, že tam bude nový ovládač. Po aktualizácii ovládača alebo aplikácie zatvorte správcu skenovania (tlačidlo Zrušiť), reštartujte počítač a počkajte, kým sa načíta operačný systém. Ak kritické chyby zastavené - aktualizácia ovládačov alebo aplikácií ich odstránila. Odstránenie ovládačov Ak nie je možné nájsť nové ovládače, môžete sa pokúsiť ovládač odstrániť. POZOR! Ak odstránite ovládač, zariadenie prestane fungovať. Po reštarte sa OS pokúsi nainštalovať ovládač z úložiska, ale nie je pravda, že to urobí štandardný ovládač. Ak si nie ste istí potrebou odstrániť akýkoľvek ovládač, nemali by ste ho odstraňovať. Správcu zariadení spustite takto: Štart – Spustiť – devmgmt.msc– Zadajte. Po nájdení požadované zariadenie, kliknite naň pravým tlačidlom myši a kliknite na Vlastnosti – Ovládač – Odinštalovať. Kontrola nepodpísaných ovládačov POZOR! Po kontrole nepodpísaných ovládačov sa môže stať, že systém nenabehne. Nižšie je uvedený popis opatrení prijatých v tejto situácii. Ak si nie ste istí, že chcete odstrániť ovládač a napriek tomu pokračovať v skenovaní, kliknite na tlačidlo "Dokončiť" v správcovi skenovania. Keď sa zobrazí výzva na výber fyzického disku, vyberte ten, na ktorom je nainštalovaný operačný systém, a potom znova kliknite na tlačidlo Dokončiť. Uvidíte správu s textom: „Aby sa zmeny prejavili, musíte reštartovať počítač.“ Ticho zatvorte všetky aplikácie a reštartujte. Ak sa systém nespustí a zobrazí sa modrá obrazovka s popisom chyby, znamená to ovládač problematické nájdené. Po opätovnom reštartovaní počítača pred načítaním operačného systému kliknite na F8 verifier.exe/resetverifikátor.exe
Vlastná kontrola vodiča Znova spustite Správcu overovania ovládačov a vykonajte predchádzajúce manipulácie až do okamihu uvedeného nižšie.
Vyberte možnosť „Vybrať názov ovládača zo zoznamu“. Ďalším krokom bude okno pre výber ovládačov na kontrolu. Nemali by ste vyberať všetky ovládače naraz, pretože operačný systém si vyhradí pomerne veľké množstvo prostriedkov na skenovanie a strávi na ňom veľa času. Je lepšie opakovať postup overenia niekoľkokrát, ale s malým počtom vodičov. To vám ušetrí čas a zdroje. Najprv skontrolujme ovládače, ktoré boli nedávno aktualizované alebo jednoducho problematické ovládače (ovládač antivírusový program, POŽARNE DVERE, virtuálny disk alebo autá). Ďalším krokom je kontrola ovládačov, ktoré nevyrába spoločnosť Microsoft. Skontrolujte zostávajúce ovládače 10-15 naraz.
Vyberte potrebné ovládače a kliknite na tlačidlo "Hotovo". Keď sa zobrazí výzva na výber fyzického disku, vyberte ten, na ktorom je nainštalovaný operačný systém, a potom znova kliknite na tlačidlo Dokončiť. Zobrazí sa správa so žiadosťou o reštart. Reštartujte počítač. Ak sa po reštarte zobrazí modrá obrazovka s chybovým hlásením, znamená to, že sa našiel ovládač spôsobujúci problém. Po opätovnom reštartovaní počítača pred načítaním operačného systému kliknite na F8 a vyberte „Spustiť bezpečnostný mód" Po prihlásení kliknite na tlačidlo Štart a zadajte príkaz Spustiť/Hľadať verifier.exe/reset. Ak nenastali žiadne problémy a systém sa spustil v štandardnom režime, nepodpísané ovládače nespôsobujú problémy a je potrebné skontrolovať ostatné ovládače. Znova spustite Driver Verifier Manager ( verifikátor.exe) a vyberte možnosť „Zobraziť informácie o aktuálne overených ovládačoch“.
Zopakujte skenovanie pre všetky zostávajúce ovládače. Dokončuje sa overenie vodiča Ak kontrola všetkých ovládačov neodhalí príčiny kritických chýb, problém s najväčšou pravdepodobnosťou nie je v ovládačoch. Problémom nemusí byť softvér, ale hardvér vášho počítača. S najväčšou pravdepodobnosťou ide o problémy s pevným diskom alebo pamäťou RAM. Môže sa tiež stať, že napájací zdroj nemá dostatok energie na zabezpečenie prevádzky všetkých zariadení alebo iný problém v hardvéri, ktorý sa nedá zistiť kontrolou ovládačov. Diagnostikujte RAM a HDD.

Chybný ovládač môže spôsobiť veľa problémov vo vašom počítači. Hlavným znakom toho, že váš počítač má chybný ovládač, je modrá obrazovka smrti, ktorá je často spôsobená zakázaním ovládača.

V tomto článku vám povieme, ako môžete nájsť chybný ovládač a potom ho aktualizovať alebo úplne odstrániť.

Niekedy systém Windows upozorní používateľa, že jeden z ovládačov zlyhal. Stáva sa však, že systém nedokáže zistiť, v čom je problém, a preto nezobrazuje chybové hlásenia, a preto funguje pomalšie alebo nefunguje tak, ako je potrebné. V tomto prípade Správca overovania ovládačov(Driver Verifier) ​​​​vytvára dodatočné zaťaženie systémových ovládačov, čím sa pokúša spôsobiť zlyhanie. Ak jeden z ovládačov zlyhá, potom Správca overovania ovládačov ohlási problém pomocou modrej obrazovky.

POZOR

Pred použitím Správca overovania ovládačov, uvedomte si, že nástroj vám môže obmedziť používanie vášho vlastný počítač. Pretože Správca overovania ovládačov spustí modrú obrazovku smrti, keď zistí chybný ovládač, môže to spôsobiť veľké problémy pri zavádzaní systému Windows.

Ak nemáte spôsob, ako sa dostať do systému Windows a zakázať testovanie ovládačov, počítač pobeží v slučke „boot -> zaťaženie -> zlyhanie“, z ktorej je dosť ťažké sa dostať von. Funkcia Automatická oprava je jednou z mála možností, ako získať prístup do systému Windows, no je lepšie sa tejto situácii vyhnúť.

Pred použitím Driver Verifier sa uistite, že máte aspoň jeden z nasledujúcich núdzových východov:

  • Môžete prejsť do núdzového režimu. Pred spustením prejdite do núdzového režimu Spustenie systému Windows zvyčajne sa to robí opakovaným stlačením klávesu F8 počas zavádzania počítača. Nové počítače však štartujú tak rýchlo, že jednoducho nestihnete stlačiť F8 v správnom čase.
  • Vytvorili ste pred použitím bod obnovenia systému? Správca overovania ovládačov. Je tiež vhodné mať inštaláciu Disk Windows aby ste mohli obnoviť svoj počítač na výrobné nastavenia.

Ako spustiť Driver Verifier Manager

Skôr ako začnete návod na použitie Správca overovania ovládačov, nezabudnite si prečítať časť „Upozornenie“ vyššie. Hovorí, ako sa vyhnúť nekonečné zaťaženie Windows.

Keď ste si na sto percent istí, že máte plán núdzového východu, kliknite na „ Kláves Windows + R“ a zadajte cmd v dialógovom okne Vykonať“, potom kliknite na „ OK».

V príkazovom okne zadajte:

overovateľa

Vo vyskakovacom okne vyberte " Vytvorte neštandardné parametre (pre programový kód)“, potom kliknite na „ Ďalej».

Zobrazí sa zoznam všetkých testov, ktoré môžete spustiť na kontrolu ovládačov. Vyberte všetky testy zo zoznamu, okrem"Simulovať náhodný nedostatok zdrojov" a "Dodatočná kontrola súladu DDI", potom kliknite na " Ďalej».

Na ďalšej obrazovke vyberte " Vyberte simená ovládačov zo zoznamu"a stlačte" Ďalej».

Tu si môžete vybrať ovládače, ktoré chcete otestovať. Ak neviete, ktorý ovládač je chybný, vyberte všetky okrem Microsoftu, pretože väčšinou fungujú bez chýb.

Keď stlačíte " Pripravený", Windows vás vyzve na reštartovanie počítača. Po zapnutí počítača ho pokračujte v používaní ako zvyčajne. Ak sa zobrazí modrá obrazovka, venujte pozornosť chybovému hláseniu a reštartujte počítač.

Po identifikácii chybného ovládača ho môžete vypnúť Správca overovania ovládačov jedným z dvoch spôsobov. Môžete znova otvoriť príkazový riadok, zadajte príkaz overovateľa a vyberte „ Odstráňte existujúce nastavenia».

Môžete tiež otvoriť príkazový riadok a zadať:

Verifier / bootmode resetonbootfail

Po vypnutí nástroja Driver Verifier Manager reštartujte počítač. Ak sa počítač nezapne, použite jeden z núdzových východov, o ktorých sme hovorili v časti „Upozornenie“.

Záver

Ak si myslíte, že jeden z ovládačov je chybný, ale neviete zistiť, ktorý z nich, potom Správca overovania ovládačov bude veľkou pomocou.

Mali by ste sa však pripraviť na možnosť, že sa počítač po otestovaní ovládačov nebude dať zapnúť, preto zvážte záložný výstup s pohotovostna situacia, napríklad prejdite do núdzového režimu alebo spustite bod obnovenia systému Windows.

Mali ste niekedy problémy s ovládačmi v počítači? Ako sa vám podarilo nájsť chybný ovládač? Povedzte nám to v komentároch nižšie!

Pomôcka Driver Verifier (verifier.exe) je určená na analýzu problematických ovládačov, keď analýza výpisov pamäte po BSOD neumožňuje nájsť problematický ovládač. Driver Verifier je „záchranca“ v najproblematickejších situáciách.

Pomocou nástroja Driver Verifier môžete:

    záťažový test vodiča (simulujú sa podmienky nedostatku zdrojov);

    kontrola pretečenia vyrovnávacej pamäte;

    kontrola nad chybami, ktoré sa vyskytnú v dôsledku nesprávnej prevádzky pri danom IRQL;

    analýza I/O chýb;

    detekcia zablokovaných situácií atď.

Pomôcka Driver Verifier je veľmi užitočná, keď:

    administrátor (používateľ) má podozrenie, že tento konkrétny ovládač spôsobuje pád systému a chce ďalej preveriť, či je to skutočne tak;

    vývojári ovládačov chcú otestovať svoj ovládač;

    Pri analýze výpisu po BSOD nie je možné nájsť problematický ovládač.

Jedným z najťažších prípadov analýzy výpisov pamäte je, keď ovládač omylom prepíše údaje pred alebo po skončení vyrovnávacej pamäte, ktorú pridelil. V takýchto prípadoch sa v jadre OS vyskytujú chyby (napríklad analýza výpisu po BSOD ukazuje, že chyba nastala v ntoskrnl.exe).

Pozrime sa podobný prípad na konkrétnom príklade. Pomocou nástroja NotMyfault spôsobíme BSOD - „Pretečenie vyrovnávacej pamäte“.

Výsledok analýzy skládky pomocou windbg je priložený nižšie.

Podľa analýzy skládky dostaneme:

1. Arg1: 00000007, Pokus o uvoľnenie fondu, ktorý už bol uvoľnený (bol vykonaný pokus o uvoľnenie už uvoľneného fondu)

2. IMAGE_NAME: ntkrpamp.exe (samotné jadro systému s tým má niečo spoločné)

S takýmito chybami prichádza na pomoc overovateľ.

Spustite overovač.

Vyberte možnosť „Vytvoriť neštandardné parametre“. Ďalej vyberte „Vybrať parametre zo zoznamu“.

Vyberte všetko okrem „Simulovať nedostatok zdrojov“.

Potom vyberte „Vybrať nenačítané ovládače pre tento zoznam“ a zadajte cestu k ovládaču myfault.sys, ktorý sa nachádza v rovnakom adresári ako program NotMyfault.exe.

Potom označte ovládač a kliknite na „Dokončiť“. Potom musíme reštartovať počítač.

Vykonávame všetky rovnaké akcie ako na začiatku. Spustite NotMyfault.exe, vyberte „Pretečenie vyrovnávacej pamäte“ a kliknite na „Crash“. Ako ste si všimli, pád nemusí nastať okamžite, pretože kto a kedy sa pokúsi s touto pamäťou pracovať, nie je vopred známe. Ako môžete vidieť na obrázku nižšie, vďaka overovaču dokáže systém identifikovať problematický ovládač.

Dám analýzu pomocou!analyze –v vo windbg.exe výpisu pamäte po BSOD.

Verifikačný program to robí tak, že testovaný ovládač namiesto bežnej pamäte dostupnej v jadre používa špeciálny fond určený na detekciu takejto chyby. Vďaka tomu môžete nájsť ovládač, ktorý spôsobuje BSOD.

Ak sa pozrieme na výsledky analýzy, vidíme nasledovné.

1. DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION (d6) – toto je jedna z chýb, ktorú generuje overovateľ

2. IMAGE_NAME: myfault.sys – ovládač, ktorý spôsobil problém.

Ak vám teda analýza výpisu pamäte po BSOD neumožňuje nájsť „vinníka ovládača“, použite program verifier.exe (nainštalujte všetky kontroly, okrem nedostatku pamäte).

Najjednoduchší spôsob použitia Driver Verifier (verifier.exe) je spustiť ho s nasledujúcimi parametrami:

verifikátor /štandardný názov súboru ovládača

Utility Vodič Overovateľ zahrnuté vo všetkých Verzie systému Windows, počnúc systémom Windows XP a umožňuje vám skontrolovať ovládače, identifikovať problematické ovládače, ktoré spôsobujú modrá obrazovka smrti (BSOD- Modrá obrazovka smrti) a záznam detailné informácie o problematickom ovládači vo výpise pamäte na ďalšiu analýzu. Nástroj podrobuje kontrolované ovládače rôznym „ záťažové testy", simulujúce rôzne extrémne podmienky: nedostatok pamäte, riadenie I/O, IRQL, zablokovanie, kontroly DMA, IRP atď. T.j. simulujú sa situácie, ktoré sa na produktívnych systémoch vyskytujú zriedkavo, a sleduje sa v nich správanie vodičov. Účelom pomôcky je identifikovať situácie, v ktorých môže vodič viesť k zlyhaniu systému s BSOD.

Volá sa spustiteľný súbor pomôcky Driver Verifier Overovateľ.exe a nachádza sa v adresári %windir%\system32. Existujú dve možnosti použitia pomôcky: z príkazového riadku alebo pomocou GUI.

Ak chcete povoliť režim overenia ovládača v systéme Windows 8, spustite pomôcku Driver Verifier zadaním

Overovateľ

Zo zoznamu úloh vyberte Vytvorte vlastné nastavenia (pre vývojárov kódu) a stlačte Ďalšie.

Uistite sa, že sú vybraté možnosti Štandardné nastavenia, Vynútiť čakajúce I/O požiadavky A IRP protokolovanie. Kliknite Ďalšie.

Ďalej vyberte .

Zoraďte obsah tabuľky kliknutím na hlavičku stĺpca „Poskytovateľ“ a zo zoznamu ovládačov vyberte tie, ktoré chcete otestovať. V našom príklade spustíme kontrolu všetkých ovládačov, ktoré neboli vyvinuté spoločnosťou MicrosoftCorporation. Vybrali sme ovládače: e1g6032e.sys (Intel) a lsi_sas.sys (LSI).

Poznámka. Dostupnosť vodiča digitálny podpis Microsoft uvádza, že ovládač bol určitým spôsobom testovaný z hľadiska stability a jeho kód odvtedy nebol upravený. Preto sa neodporúča ani nepoužíva.

Jediné, čo musíte urobiť, je kliknúť Skončiť a zobrazí sa informačné okno s informáciou, že je potrebné reštartovať systém, aby sa zmeny prejavili.

Poradenstvo. Režim overenia vodiča je možné povoliť aj z príkazový riadok. Napríklad na spustenie Driver Verifier s štandardné nastavenia pre ovládač myPCDriver.sys bude príkaz vyzerať takto: verifier /standard /driver myPCDriver.sys

Po reštarte sa systém zavedie do režimu overenia ovládača. Driver Verifier funguje v pozadie, vykonávanie rôznych typov testovania vybraných ovládačov na identifikáciu chýb. Použite svoj počítač ako obvykle a počkajte, kým sa objaví BSOD. Ak viete, aké akcie predtým spôsobili zlyhanie systému, zopakujte ich. Ak sa vyskytne BSOD, musíte skopírovať súbor výpisu pamäte (štandardne je uložený v adresári C:\Windows\Minidump\*.dmp) a analyzovať ho pomocou Windbg alebo ekvivalentu.

Dôležité! Po aktivácii režimu ladenia ovládača pomocou Driver Verifier bude tento režim fungovať, kým nebude násilne vypnutý.

Ak sa problém nezopakuje do 1-2 dní, potom môžeme s určitou mierou istoty dospieť k záveru, že testované ovládače nie sú príčinou zlyhania systému a režim ich skenovania je možné deaktivovať.

Poradenstvo. Použitie Validátora Windows ovládače výrazne spomaľuje Windows, preto sa neodporúča neustále pracovať v tomto režime.

Driver Verifier môžete vypnúť z príkazového riadka:

Overovač / reset

Alebo z grafického rozhrania výberom Odstráňte existujúce nastavenia.

Ak sa nemôžete prihlásiť do systému v normálnom režime, môžete vypnúť režim ladenia z núdzového režimu.

Ak sa systém nespustí v núdzovom režime, skúste vymazať nasledujúce kľúče databázy Registry zavedením zo zavádzacej diskety:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\VerifyDrivers
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\VerifyDriverLevel

Aktuálny stav pomôcky Driver Verifier môžete skontrolovať takto.

Upozorňujeme, že akékoľvek experimenty s ovládačmi sú nebezpečné a môžu poškodiť systém. Je lepšie urobiť zálohu systému vopred a potom nekrčiť prsty odstránením iného podozrivého ovládača zo systému Windows.

A hneď ako nebudú nadávať Windows od Microsoft, ktorý úbožiaka nazýva súčasne pomalým, závadovým a dokonca nestabilným. Ale nikto sa neponáhľa, aby sa toho vzdal, a vo všeobecnosti je nepravdepodobné, že by to niekedy vzdal. Preto by bolo dobré namiesto nadávania na úbohých vývojárov a zakladania nezmyselných plameňov zistiť, prečo je vlastne systém zabugovaný? Prezradím ti malé tajomstvo. V notoricky známych obrazovkách smrti a nestabilnej práce Windows v drvivej väčšine prípadov sú na vine ovládače tretích strán a samotný operačný systém s tým nemá absolútne nič spoločné. Teraz vám povieme, ako takéto ovládače odhaliť a odstrániť zo systému.

Chyby v dizajne vodiča sa môžu pohybovať od nehôd až po modrú obrazovku smrti ( BSOD– Modrá obrazovka smrti) a k spomaleniu počítača a podivnému správaniu niektorých aplikácií, ktoré s ovládačom vôbec nesúvisia.

Modrá obrazovka smrti je pozoruhodná (bez akejkoľvek irónie!) v tom, že jasne signalizuje prítomnosť vážneho problému a dáva tip, kam kopať. Často (ale nie vždy) sa meno „porušujúceho“ vodiča zobrazuje priamo v pravom hornom rohu modrej obrazovky smrti. Nemusí tam však byť, alebo čo je horšie, môže tam byť meno úplne nesúvisiaceho vodiča.

Napríklad jeden pomerne bežný ovládač grafickej karty Matrox G450 má tendenciu ničiť základné štruktúry grafický subsystém Windows 2000 , čo má za následok, že BSOD zobrazuje názov systémového ovládača win32k.sys, ktorá implementuje významnú časť funkcií USER a GDI a ktorá s tým samozrejme nemá nič spoločné. Takže interpretácia modrej obrazovky čítania smrti je mágia, intuícia, veda a umenie - trochu zo všetkého.

Okrem chýb ovládača môžu modré obrazovky smrti spôsobiť aj zlyhania hardvéru, napríklad pretaktovaný procesor, chybná RAM alebo krivý ovládač. pevný disk, karta PCI nie je úplne zasunutá do slotu, uvoľnený kontakt v jednom z konektorov, zlé napájanie, nafúknutý elektrolytický kondenzátor základná doska. A ten trucuje z rôznych dôvodov: v dôsledku prehriatia z neďalekého procesora, nedostatok keramických kondenzátorov „nenahlásený“ výrobcom (v dôsledku čoho RF komponent prechádza elektrolytom a veľmi ho zahrieva) a nakoniec v dôsledku úniku kľúčových tranzistorov v stabilizátore jednotky. Preto sa pred rúbaním dreva musíme uistiť, že žehlička, na ktorej sedíme, je plne funkčná. Ako sa to dá urobiť?

Vyrovnanie so železom

Modré obrazovky smrti spôsobené poruchami hardvéru sú spontánne, objavujú sa nepredvídateľne a bez ohľadu na konkrétne akcie používateľa. Aplikácie tiež začnú produkovať kritické chyby na rôznych miestach a chybové kódy, adresy a ďalšie informácie vydávané systémom budú vo všetkých prípadoch odlišné! Mimochodom, ovládače, ktoré spracovávajú asynchrónne požiadavky z I/O zariadení, napr bezdrôtové siete, správajú sa takmer úplne rovnako. Modré obrazovky smrti spôsobené chybnými ovládačmi sa zvyčajne vyskytujú pri vykonávaní špecifickej skupiny akcií a obsahujú viac-menej konštantné informácie.

Ak chcete odstrániť všetky podozrenia z hardvéru, stačí pripojiť ďalší pevný disk k systému a nainštalovať čistý Windows a chvíľu na tom pracovať. Ak modré obrazovky smrti nezmiznú, znamená to, že na vine je hardvér a je čas to zmeniť. Hľadanie chybných komponentov je téma na samostatnú diskusiu, ktorú si necháme nabudúce, no zatiaľ si vyhrňte rukávy a pustite sa do týchto zákerných ovládačov.

Palivové drevo bez certifikátu ide priamo do ohniska

Celá sada nástrojov potrebných na vývoj ovládačov ( DDK– Driver Development Kit), spoločnosť Microsoft ho distribuuje bezplatne spolu so sprievodnou dokumentáciou. Ovládače, niekedy veľmi zabugované a nestabilné.

Aby k takémuto chaosu nedošlo, Microsoft už v dávnych dobách zaviedol postup certifikácie vodičov z hľadiska dodržiavania požiadaviek, ktoré sú na nich kladené, po čom je vodičovi vydaný digitálny podpis. Alebo... nebolo vydané a bolo odoslané na revíziu. A hoci je certifikácia len formálnym postupom, ktorý nezaručuje absenciu fatálnych chýb a vývojových chýb, stále odstraňuje niektorých úprimne „pionierskych“ vodičov.

V ideálnom prípade by sa v systéme mali uchovávať iba digitálne podpísané ovládače. A hoci digitálny podpis nie je poistkou, jeho prítomnosť už naznačuje určitú úroveň kultúry rozvoja. Ovládače bez digitálneho podpisu sú horšie ako prasa v žite a treba sa ich zbaviť, ak je to možné (najmä preto, že mnohé z nich sú malvér nainštalovaný rootkitmi alebo agresívnymi obrannými mechanizmami, ktoré prenikajú hlboko do systému a spôsobujú jeho nestabilitu). Skrátka, nepúšťajme sa do demagógie, ale skúsme si odpovedať na jednoduchú otázku: ako vytvoriť zoznam ovládačov bez digitálneho podpisu?

Pomôže nám s tým utilita sigverif.exe, ktorá je súčasťou štandardnej dodávky operačný systém a nachádza sa v adresári WINNT\System32. Spustíme ho a zobrazí sa dialógové okno. Kliknite na tlačidlo „Rozšírené“ a na karte „Hľadať“ nastavte kritériá výberu presunutím prepínača z pozície „Upozorniť na odhlásené z odberu“. systémové súbory"(kde predvolene klesol) do pozície "Vyhľadať iné súbory, ktoré nie sú digitálne podpísané." Potom v „Možnosti vyhľadávania“ otvorte pole „Vyhľadať súbory nasledujúceho typu“ a vyberte „*.sys“ a nižšie označte priečinok vyhľadávania „C:\WINNT“, pričom nezabudnite zaškrtnúť políčko „Vrátane podpriečinky“.

V skutočnosti, prísne vzaté, ovládače nemusia mať príponu sys a nie sú vždy obmedzené na adresár WINNT, ktorý je v adresároch „ich“ aplikácií a niektoré aplikácie dokonca ukladajú ovládače... v sebe! Ihneď po spustení (alebo kedykoľvek inokedy) uložia súbor na disk do aktuálneho alebo dočasného adresára, načítajú ovládač do pamäte a... okamžite ho vymažú z disku! Robia to nielen škodlivé vírusy, ale aj celkom úctyhodné programy, ako napríklad niektoré pomôcky známeho podpovrchového výskumníka Windows Marka Russinoviča.

Z dôvodu čistoty experimentu by nám neuškodilo získať zoznam ovládačov, ktoré sa nachádzajú v tento moment v pamäti a porovnajte ich s ovládačmi umiestnenými na disku. Slová „momentálne“ sú kľúčové, pretože ovládače je možné stiahnuť/odobrať bezplatne bez reštartovania operačného systému. Odporúča sa vykonať túto operáciu niekoľkokrát spustením pomocného programu príkazového riadka drivers.exe, ktorý je súčasťou DDK, ktorý je možné stiahnuť zo servera spoločnosti Microsoft. Pomôcka bola spustená bez akýchkoľvek prepínačov riadkovým príkazom drives.exe vysype všetky informácie na obrazovku, čo nie je dobré, keďže v systéme je zvyčajne veľa ovládačov a nezmestia sa na obrazovku. Náboženstvo nám však umožňuje presmerovať výstupný prúd na textový súbor(drivers.exe >názov-súboru.txt), ktorý môže otvoriť ktokoľvek textový editor- buď pomocou Wordu, alebo pomocou poznámkového bloku. Potom už zostáva len vybrať vertikálny blok (čo Poznámkový blok neumožňuje) a získať zoznam ovládačov. Priamo z jadra operačného systému!

Ak aspoň jeden z týchto ovládačov nie je v adresári C:\WINNT\, jeho digitálny podpis nebude overený! Prirodzene, takýto vodič okamžite upúta pozornosť a máme rozumnú otázku: odkiaľ pochádza? Najprv prehľadáme všetky adresáre na disku; ak tam nie je, nastavte prerušovací bod pre funkciu CreateFileW v Soft-Ice a pozrite sa na argumenty, ktoré sa jej odovzdajú. Skôr či neskôr natrafíme na náš buggy driver, po ktorom sa môžeme len pozrieť do pravého dolného rohu obrazovky Soft-Ice, kde je zobrazený názov procesu, ktorý ho vygeneroval. Ďalšie podrobnosti nájdete v knihe „Techniky pre ladenie programov bez zdrojových textov“, ktorej elektronickú kópiu nájdete na serveri ftp alebo http nezumi.org.ru, ako aj na našom disku. A pokračujeme v mučení užitočnosti sigverif.exe.

Po kliknutí na „OK“, „Štart“ sa na obrazovke objaví „teplomer“ zobrazujúci priebeh a pevný disk začne šušťať všetkými hlavami, ktoré má. Po dokončení práce sa zostaví zoznam ovládačov bez digitálneho podpisu a zobrazí sa na obrazovke.

Niektoré horúce hlavy navrhujú, aby sa vyčistili systém od kacírstva, aby sa odstránili všetky nepodpísané ovládače - potom, ako hovoria, všetky problémy zmiznú. Ako sa to dá urobiť? Najhrubším riešením je jednoducho ich odstrániť z disku cez FAR alebo Explorer (samozrejme s administrátorskými právami!). Dôsledky takejto operácie však môžu byť veľmi katastrofálne a je lepšie kliknúť pravým tlačidlom myši na ikonu ovládača v Prieskumníkovi, nájsť v časti „Vlastnosti“ názov výrobcu, pomocou ktorého môžete určiť, aký druh nainštalovanej aplikácie / hardvéru tento ovládač a odinštalujte ho civilizovaným spôsobom. Pravda, je tu jedno „ale“.

Ovládač je zvýraznený na obrázku nižšie. g400m.sys, ktorá sa dodáva s kartou Matrox G450 a hoci Matrox nie je vôbec slabá spoločnosť, digitálny podpis nedostal (buď ho nedal Microsoft, alebo sa nechcel trápiť samotný Matrox). Prirodzene, po odstránení zo systému budete musieť zabudnúť na režim SVGA. Môžete však prejsť na webovú stránku Matrox a stiahnuť si najnovšiu verziu ovládača (už je digitálne podpísaná). Len tu... podpísaná aj nepodpísaná verzia obsahuje veľa fatálnych chýb, najmä v dôsledku určitých okolností pri pokuse o prepnutie do režimu prekrytia systém spadne do BSOD, pretože ovládač sa pokúša uvoľniť už uvoľnenú pamäť.

Prítomnosť/neprítomnosť digitálneho podpisu teda sama o sebe nič neznamená a aj keď používame iba podpísané ovládače, nedáva nám to žiadnu záruku stability.

Tu prejdeme k druhej časti článku, konkrétne k testovaniu vodičov v podmienkach blízkych boju.

Dávame palivovému drevu skutočnú skúšku

DDK obsahuje úžasný nástroj Vodič Overovateľ, ktorá vytvára pre vodičov najprísnejšie podmienky hraničiace s extrémom a samovraždou, v ktorých je pravdepodobnosť zlyhania maximálna a meno chybného vodiča je určené s najvyššou presnosťou (aj keď netrpí vývojovými chybami, ale ničí dátovú štruktúru vodičov iných ľudí).

Je dôležité si to všimnúť Vodič Overovateľ- Toto nie je liek, ale iba diagnostický nástroj. Stále vás nezachráni pred poruchami (naopak, zvýši ich intenzitu o niekoľko rádov), ale pomôže identifikovať „záludného“ vodiča s dostatočnou mierou spoľahlivosti.

Takže spustíme verifier.exe, vidíme okno Vodič Overovateľ manažér, prejdite na kartu Nastavenie a presuňte prepínač do polohy Overiť všetkých vodičov, potom stlačíme tlačidlo „Preferované nastavenie“, ktoré nastaví nasledujúce typy overenia:

  • Špeciálne bazén– testovaným ovládačom bude na prideľovanie pridelená špeciálna pamäťová oblasť, ktorá nefunguje veľmi rýchlo, ale dokáže odhaliť väčšinu typov zničenia vlastných a cudzích údajov.
  • sila IRQL kontrola. IRQL je úroveň požiadavky na prerušenie. Najčastejšou chybou vývojárov ovládačov je pokus o prístup k pamäti na úrovni IRQL, pri ktorej nefunguje správca stránkovania. A ak sa náhle ukáže, že požadovaná stránka je vysťahovaná na disk, systém sa zmení na modrú obrazovku s nápisom „IRQL_LESS_OR_EQULAR“. Vynútenie tohto režimu vynúti vyprázdnenie stránok ovládača na disk, aby sa chyba dizajnu objavila 100 % času.
  • Nízka zdroj simulácia Je užitočné si ho nainštalovať, aby ste videli, ako sa bude ovládač správať v prípade katastrofálneho nedostatku systémových prostriedkov, ale nemusíte to robiť, ale je lepšie ponechať zaškrtávacie políčko Pool tracking (monitorovanie správneho narábania s pamäťou bazén). Chyby vstupu/výstupu (overenie I/O) tvoria nepodstatnú časť všetkých chýb, takže poloha tohto začiarkavacieho políčka je vo všeobecnosti úplne nekritická.

Po dokončení výberu nastavení kliknite na tlačidlo „Použiť“ a podľa pokynov reštartujte počítač.

Ihneď po spustení bootovania sa systém citeľne spomalí, čo by malo byť, keďže jadro vykonáva oveľa viac kontrol ako zvyčajne. Keď sa zistia chyby, zabliká modrá obrazovka smrti s názvom ovládača a ďalšími informáciami, ktoré sú užitočné pre vývojárov, ale pre nás zbytočné. Jediné, čo môžeme urobiť, je aktualizovať ovládač na maximum Najnovšia verzia alebo odmietnuť používať program (hardvér), ktorý ho používa. Vlastne máme trochu viac možností na zapálenie vlhkého dreva, ale o tom neskôr.

Stav overenia môžete kedykoľvek zistiť spustením verifier.exe. Na karte Stav ovládača sú uvedené stavy všetkých zistených ovládačov s vysvetlením aktuálnej situácie. Stav nabitia to znamená tento vodič bol stiahnutý a overený používateľom najmenej, raz (ale možno nie úplne, to znamená, že nie všetky úseky vodiča stihli vypracovať). Stav Unloaded znamená, že ovládač bol načítaný, overený (prípadne čiastočne) a uvoľnený systémom/programom pomocou neho alebo na vlastnú žiadosť. To posledné je typické najmä pre ovládače, ktoré zostali zo zariadenia, ktoré bolo odstránené barbarským vytiahnutím rozširujúcej karty zo slotu, teda bez vykonania odinštalovania. Preživší ovládač skenuje zbernicu a snaží sa nájsť „jeho“ hardvér, vyhľadávanie zlyhá a potom sa mimochodom uvoľní z pamäte, čím sa spomalí zavádzanie systému (niekedy veľmi výrazne) a dostane sa do konfliktu s ostatnými ovládačmi. Morálne: zariadenie musí byť odstránené zo systému podľa všetkých pravidiel! Nie každý stav Vyložené je však znakom abnormálnej situácie a pred vymazaním vodiča s takýmto stavom musíte zistiť, o aký druh soba ide a odkiaľ sa vôbec vzal.

Stav Never Loaded znamená, že tento ovládač ešte nebol načítaný, čo znamená, že nebol skontrolovaný, preto musíte pred spustením počkať rôzne programy ktoré s tým môžu byť spojené. Niektoré ovládače (najmä nesprávne odinštalované) sa však nenačítajú, a preto sa nikdy nekontrolujú.

Po určitom čase (od niekoľkých hodín až po niekoľko dní) so systémom v režime tvrdej kontroly identifikujeme takmer všetky chybné ovládače, ktorými sme predtým trpeli, a zapíšeme si ich mená na kúsok papiera.

Vráťte systém do normálneho režimu (tj bez dodatočné kontroly, znižovanie produktivity), môžete použiť rovnaký overovač. Vrátime sa na kartu Nastavenie, prepínač presunieme do polohy Overiť vybrané ovládače (nemá byť vybratý žiadny ovládač), kliknite na „Resetovať všetko“, potom na „Použiť“ a reštartujte počítač. Všetky! Systém teraz funguje normálnou rýchlosťou, ale bez kontrol.

Čo robiť s vlhkým palivovým drevom?

Ale naozaj, čo môžete robiť s chybným ovládačom? Hackeri, ktorí vedia chytiť debugger do ruky, ak majú dostatok voľného času, dokážu ho rozobrať (našťastie, ovládače sú väčšinou malé), nájsť chybu a vymyslieť spôsob, ako ju opraviť, ale.. je to príliš časovo náročné.

Vyhodenie ovládača (spolu s hardvérom/programom, ktorý ho používa) tiež neprichádza do úvahy. Hoci ak je známe, že za to môžu modré obrazovky smrti zvuková karta cudzinec Čínsky výrobca v hodnote 20 dolárov, potom máme veľmi silnú motiváciu nahradiť to niečím hodnotnejším. Ale to je, prísne vzaté, už každému jasné a Ďalšie komentáre nepotrebuje.

Nie každý však vie, že veľký počet pádov a modrých obrazoviek smrti je spôsobený tým, že ovládač vyvinutý (a testovaný) v prostredí s jedným procesorom je nainštalovaný na dvojprocesorovom stroji. „Dvojprocesorom“ tu máme na mysli skutočnú platformu s dvoma kameňmi a procesory Hyper-Threading/multi-core. Známe (a potvrdené) veľké množstvo testy), že domáci počítač dva procesory sú absolútne zbytočné, keďže v drvivej väčšine aplikácií prakticky nedochádza k zvýšeniu výkonu.

Preto, ak je systém nestabilný a z jedného alebo druhého dôvodu nie je možné zbaviť sa chybného ovládača, môžete sa pokúsiť dostať do nastavenia systému BIOS a zmeniť váš „virtuálny dvojprocesorový“ stroj na jednoprocesorový. . Podobný efekt možno dosiahnuť otvorením súboru boot.ini (na počítačoch s Windows NT/2000/XP nachádza sa v koreňovom adresári logický pohon, na ktorom je nainštalovaný systém) a pridajte k nemu prepínač /ONECPU, potom reštartujte v nádeji, že chyby zmiznú.

Výpis 1

Príklad typického súboru boot.ini


časový limit = 30

multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows 2000 Pro" /fastdetect /SOS

Výpis 2

Systém nakonfigurujeme tak, aby využíval iba jeden procesor zo všetkých dostupných


časový limit = 30
predvolená hodnota=viacnásobný(0)disk(0)rdisk(0)oddiel(1)\WINNT
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows 2000 Pro" /fastdetect /SOS /ONECPU

Ale na Windows Vista neexistuje žiadny súbor boot.ini a hoci existuje (dočasná) možnosť na jeho konfiguráciu nastavenia zavádzania používaním špeciálna užitočnosť Microsoft plánuje túto medzeru úplne opustiť, takže zostane iba nastavenie systému BIOS. Čo sa však týka Vista, potom v čase, keď naň prejdú, vývojári ovládačov pravdepodobne získajú viacprocesorové stroje (keďže iné jednoducho na predaj nezostanú) a budú testovať svoje výtvory v prostredí s viacerými procesormi.

Ďalší jemný bod. Pamätáte si, že sme povedali vyššie, že najčastejšou chybou vývojárov ovládačov je prístup k preemptovateľnej pamäti na úrovni IRQL, pri ktorej nefunguje správca stránkovania, a ak požadovaná stránka nie je v pamäti, dôjde k zlyhaniu? Jednoznačným riešením by tu bolo zvýšenie Náhodný vstup do pamäťe na objem, pri ktorom sa na disk nevysťahujú prakticky žiadne stránky. Pri súčasných cenách pamätí si pár nových pamätí môže dovoliť kúpiť takmer každý. Existuje však dostupnejšie (a elegantnejšie) riešenie problému. Ak je parameter DisablePagingExecutive, ktorá sa nachádza v ďalšej pobočke registra HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\MemoryManagement, sa rovná jednej (štandardne nula), jadrové komponenty nebudú vyradené. Preto jednoducho spustíme „Editor databázy Registry“, zmeníme tento obľúbený parameter a reštartujeme (zmeny sa prejavia až po reštarte), dúfajúc, že ​​to pomôže vyriešiť problém zlyhaní.