Windows.  Virus.  Anteckningsböcker.  Internet.  kontor.  Verktyg.  Förare

Indikerar en systemdrivrutin som sannolikt inte orsakar problemet (t.ex. win32k.sys). I det här fallet behöver du en seriös analys av soptippen, vilket kräver mycket djup kunskap och erfarenhet inom detta område. Du kan dock kontrollera drivrutinerna själv med hjälp av den inbyggda operativ system verifieringsmedel Verifier.exe. Även om det beskrivs i detalj i Microsoft Knowledge Base-artikeln Använda drivrutinsverifieraren för att felsöka Windows-drivrutiner, är materialet som presenteras där ganska komplext. teknisk nivå. Följande är kort beskrivning steg att följa för att verifiera drivrutinerna.

På den här sidan

Komma igång med Driver Verifier

På menyn StartSpringa(eller StartSök) stiga på bekräftare och tryck på Enter. Driver Verifier kommer att starta. Välj ett föremål Skapa anpassade parametrar (för programkod) och tryck på knappen Ytterligare.

Välj enskilda alternativ från en komplett lista och tryck på knappen Ytterligare.

I nästa steg, markera alla rutor utom Simulering av resursbrist och tryck på knappen Ytterligare.

I nästa steg väljer du Välj automatiskt osignerade drivrutiner och tryck på knappen Ytterligare. Om inga osignerade drivrutiner hittas, gå till .

Osignerade drivrutiner

Om osignerade drivrutiner hittas kommer du att se en lista över dem.

Drivrutiner kan tillhöra både enheter och applikationer. Stäng inte fönstret Driver Verifier eller klicka på knappen Ytterligare Nu.

Sök efter uppdaterade drivrutiner

Du måste kontrollera om det finns uppdaterade drivrutiner.

  1. Om du ser en applikationsdrivrutin i listan, besök tillverkarens webbplats - applikationen kan ha uppdaterats. Om det inte finns någon uppdaterad version kan du prova att avinstallera appen (du kan alltid installera om den senare). Om kritiska fel upphör var det orsaken.
  2. Om du ser en enhetsdrivrutin i listan och du kör Windows Vista använda centret windows uppdateringar för att söka efter nya drivrutiner. Denna metod fungerar bra för Windows Vista eftersom många enhetstillverkare arbetar med Microsoft för att göra sina drivrutiner tillgängliga för nedladdning med hjälp av Windows uppdatering. Välj i kontrollpanelen Windows uppdatering och leta efter uppdateringar för din enhetsdrivrutin. Om drivrutinen hittas, installera den.
  3. Om Windows Update inte erbjuder dig nya drivrutiner, besök enhetstillverkarens webbplats. Kanske finns det nya drivrutiner där. Om du har problem med att hitta drivrutiner, besök forumet Hitta drivrutiner, firmware och manualer på OSzone.net.

När du har uppdaterat programmet eller drivrutinen stänger du fönstret Driver Verifier, trycka på en knapp Annullera(men inte Ytterligare) . Starta om datorn och fortsätt arbeta med operativsystemet. Om det kritiska felet inte längre uppstår har du åtgärdat det genom att uppdatera drivrutinen.

Avinstallera drivrutiner

Om inga nya drivrutiner hittas, försök att avinstallera drivrutinen.

Uppmärksamhet! Att ta bort drivrutiner gör att enheterna inte fungerar. Efter en omstart installerar operativsystemet i bästa fall lämplig drivrutin från sin egen drivrutinsbutik. Om du är osäker på om du ska avinstallera en viss drivrutin ska du inte avinstallera den.

I enhetshanteraren ( StartSök / Kördevmgmt.mscOK) hitta enheten, klicka på den Högerklicka musen och välj från innehållsmeny paragraf Egenskaper. Gå sedan till fliken Förare och tryck på knappen Radera.

Söker efter osignerade drivrutiner

Uppmärksamhet! Efter att ha kontrollerat för osignerade drivrutiner kanske systemet inte startar (se nedan hur du går tillväga i en sådan situation).

Om du inte vill avinstallera drivrutinen och/eller leta efter osignerade drivrutiner, klicka i fönstret Driver Verifier. Ytterligare. Du kommer att bli ombedd att välja en fysisk disk.

Redo, starta sedan om datorn. Om du ser en blå skärm med ett fel efter omstart har den problematiska drivrutinen identifierats - dess namn kommer att inkluderas i felmeddelandet. Gå in i felsäkert läge och återställ alla alternativ för förarverifiering genom att skriva in StartSök / Kör kommando verifier.exe /reset.

Om systemet startade normalt lyckades kontrollen av osignerade drivrutiner - de är inte källan till problemet. Du kan se en lista över verifierade drivrutiner genom att köra verifier.exe .

Eftersom osignerade drivrutiner inte är orsaken kritiskt fel, måste du kontrollera andra drivrutiner.

Anpassad förarkontroll

Om inga osignerade drivrutiner hittas, eller om förarkontrollen inte avslöjar några problem, måste du utföra en anpassad förarkontroll. I det här fallet, välj objektet i fönstret som visas nedan Välj ett förarnamn från listan.

I nästa steg kommer du att bli ombedd att välja de drivrutiner som ska kontrolleras. Välj inte alla drivrutiner på en gång, eftersom det tar mycket tid och systemresurser att kontrollera dem.

Därför kan verifieringen behöva utföras i flera steg. Steg-för-steg-sekvensen för att välja drivrutiner kan vara följande:

  1. Nyligen uppdaterade drivrutiner eller de som vanligtvis orsakar problem (drivrutiner antivirusprogram, brandväggar, virtuella diskar).
  2. Drivrutiner som inte tillhandahålls av Microsoft.
  3. En grupp på 10 - 15 förare åt gången.

Välj den enhet där operativsystemet är installerat och klicka Redo, starta sedan om datorn.

Uppmärksamhet! Efter att ha kontrollerat drivrutinerna kanske systemet inte startar (se nedan hur du går tillväga i en sådan situation).

Om du ser en blå skärm med ett fel efter omstart har den problematiska drivrutinen identifierats - dess namn kommer att inkluderas i felmeddelandet. Starta om datorn och gå in i felsäkert läge genom att klicka F8 medan du laddar. När du har loggat in, återställ alla alternativ för förarverifiering genom att skriva in StartSök / Kör kommando verifier.exe /reset.

Om systemet startade normalt kontrollerades de valda drivrutinerna framgångsrikt - de är inte källan till problemet. Du kan se en lista över verifierade drivrutiner genom att köra verifier.exe och välja föremålet i första steget Visa information om aktuella testade drivrutiner.

Välj nu nästa grupp av förare och kontrollera igen.

Alla förare kontrollerade – vad händer härnäst?

Om verifieringen av alla förare lyckades måste jag ta av mig hatten för ditt tålamod och uthållighet. Troligtvis är inte drivrutinerna orsaken till det kritiska felet som uppstår på ditt system. Det är möjligt att problemet ligger i din dators hårdvara - till exempel en felaktig hårddisk eller random access minne, eller så har strömförsörjningen inte tillräckligt med ström för att säkerställa att alla enheter fungerar. Det kan finnas andra hårdvaruproblem som inte heller kan upptäckas genom att kontrollera drivrutinerna.

Vi varnar dig för att alla experiment med förare är farliga och kan skada systemet. Det är bättre att göra det i förväg säkerhetskopiering av systemet och sedan inte korsa tummarna, ta bort en annan misstänkt drivrutin från Windows.

Och så fort de inte skäller Windows från Microsoft, kallar stackaren både långsam och buggig och till och med instabil. Först nu har ingen bråttom att vägra det, och i allmänhet är det osannolikt att de någonsin kommer att vägra det. Därför, istället för att skälla på dåliga utvecklare och sprida en meningslös låga, skulle det vara bra att ta reda på: varför, i själva verket, är systemet buggigt? Jag ska berätta en liten hemlighet. I de ökända skärmarna av död och instabilt arbete Windows i de allra flesta fall är det tredje parts drivrutiner som är skyldiga, och själva operativsystemet har absolut ingenting med det att göra. Nu kommer vi att berätta hur du upptäcker sådana drivrutiner och tar bort dem från systemet.

Defekter i drivrutinen kan vara av en helt annan karaktär: från att falla in i dödens blå skärm ( BSOD- Blue Screen of Death) och till nedgången av datorn och det konstiga beteendet hos vissa applikationsapplikationer som inte alls är relaterade till föraren.

Dödens blå skärm är anmärkningsvärd (utan någon ironi!) genom att den tydligt signalerar närvaron av ett allvarligt problem och ger ett tips om var man ska gräva. Ofta (men inte alltid) visas namnet på den "skyldige" föraren direkt i det övre högra hörnet av dödens blå skärm. Däremot kanske det inte finns där eller, ännu värre, namnet på en helt utländsk förare kan finnas där.

Så till exempel en ganska vanlig grafikkortsdrivrutin Matrox G450 tenderar att förstöra grundläggande strukturer grafiskt delsystem Windows 2000 , vilket resulterar i att BSOD visar namnet på systemdrivrutinen win32k.sys, som implementerar en betydande del av USER- och GDI-funktionerna och som naturligtvis inte har något med det att göra. Så tolkningen av vittnesbördet om dödens blå skärm är magi, och intuition, och vetenskap och konst - lite av allt.

Förutom förardefekter kan blå skärmar av dödsfall också orsakas av hårdvarufel, såsom en överklockad processor, felaktigt RAM-minne, en sned kontroller hårddisk, ett PCI-kort som inte är helt insatt i kortplatsen, en icke-kontakt i en av kontakterna, en dålig strömförsörjning, en svullen elektrolytkondensator på moderkort. Och de senare poutar av olika anledningar: på grund av överhettning från en närliggande processor, brist på keramiska kondensatorer, "orapporterade" av tillverkaren (som ett resultat av vilket HF-komponenten går genom elektrolyten och värmer upp den), slutligen på grund av läckage av nyckeltransistorer i stabilisatorenheten. Innan man hugger ved är det därför nödvändigt att se till att järnet som vi sitter på är fullt funktionellt. Och hur kan detta göras?

Showdown med järn

Blå skärmar av dödsfall orsakade av hårdvarufel är spontana, dyker upp oförutsägbart och oberoende av några specifika användaråtgärder. Applikationer börjar också utfärda kritiska fel på en mängd olika platser, och felkoder, adresser och annan information som utfärdas av systemet kommer att vara olika i alla fall! Förresten, drivrutiner som behandlar asynkrona förfrågningar från till exempel I/O-enheter trådlösa nätverk, beter sig nästan exakt likadant. Blå skärmar av dödsfall orsakade av defekta förare tenderar att inträffa när man utför en viss uppsättning åtgärder och innehåller mer eller mindre permanent information.

För att ta bort alla misstankar från strykjärnet räcker det att ansluta en annan till systemet. HDD, installera på den orörda Windows och jobba på det ett tag. Om dödens blå skärmar inte försvinner, så är det verkligen hårdvaran som bär skulden och det är dags att ändra det. Sökandet efter defekta komponenter är ett ämne för en separat diskussion, som vi lämnar till nästa gång, men nu, efter att ha kavt upp ärmarna, kommer vi att ta tag i dessa lömska förare.

Ved utan certifikat omedelbart in i ugnen

Hela uppsättningen verktyg som krävs för förarutveckling ( DDK– Driver Development Kit), distribuerar Microsoft gratis tillsammans med tillhörande dokumentation. Drivrutiner, ibland väldigt buggiga och instabila.

För att förhindra att ett sådant kaos inträffar, Microsoft tillbaka i gamla tider infördes ett förfarande för att certifiera förare för att uppfylla kraven för dem, varefter en digital signatur utfärdas till föraren. Eller ... inte utfärdat, och han gick för revision. Och även om certifiering bara är en formell procedur som inte garanterar frånvaron av fatala fel och utvecklingsfel, eliminerar den fortfarande några av de uppriktigt sagt "pionjär" förarna.

Helst bör endast digitalt signerade förare finnas kvar i systemet. Och även om en digital signatur inte är en försäkring, indikerar dess närvaro redan en viss nivå av utvecklingskultur. Förare utan digital signaturär värre än ett svin och bör elimineras om möjligt (särskilt eftersom många av dem är skadlig programvara installerad av rootkits eller aggressiva försvarsmekanismer som tränger djupt in i systemet och gör att det blir instabilt). Kort sagt, det kommer inte att föda demagogi, men låt oss försöka svara på en enkel fråga: hur gör man en lista över förare utan en digital signatur?

Verktyget kommer att hjälpa oss med detta. sigverif.exe, som ingår i standardoperativsystemets leveransuppsättning och finns i katalogen WINNT\System32. Kör den och se dialogrutan. Klicka på knappen "Avancerat" och ställ in urvalskriterierna på fliken "Sök" genom att flytta radioknappen från positionen "Meddela om osignerad systemfiler” (där den vegeterade som standard) till positionen ”Sök efter andra filer som inte är signerade med en digital signatur”. Efter det, i "Sökalternativ" öppnar du rutan "Sök efter filer av följande typ" och väljer "*.sys", och nedan anger vi mappen för att söka efter "C:\WINNT", var noga med att markera rutan "Inkludera undermappar".

I själva verket, strängt taget, drivrutiner krävs inte att ha en sys-tillägg och är långt ifrån alltid begränsade till WINNT-katalogen, som finns i katalogerna för "sina" applikationer, och vissa applikationer lagrar till och med drivrutiner ... i sig själva! Omedelbart efter lanseringen (eller när som helst) sparar de filen på disken i den aktuella eller temporära katalogen, laddar drivrutinen i minnet och ... raderar den omedelbart från disken! Inte bara skadliga virus gör detta, utan också ganska respektabla program, som några verktyg från Mark Russinovich, en välkänd Windows-forskare.

Därför, för experimentets renhet, skadar det oss inte alls att få en lista över förare som finns i det här ögonblicket i minnet och jämför dem med drivrutinerna på disken. Orden "för tillfället" är nyckeln, eftersom att ladda/avlasta drivrutiner kan ske gratis utan att starta om operativsystemet. Det är tillrådligt att utföra denna operation flera gånger genom att köra verktyget kommandorad drivers.exe ingår i DDK, som kan laddas ner från Microsofts server. Startat utan några kommandoradsväxlar, verktyget drives.exe dumpar all information på skärmen, vilket inte är bra, eftersom det vanligtvis finns många förare i systemet och de inte får plats på skärmen. Religion tillåter oss dock att omdirigera utgångsströmmen till textfil(drivers.exe >filnamn.txt ) öppnas av någon textredigerare- även med Word, även med ett anteckningsblock. Sedan återstår bara att välja ett vertikalt block (vilket anteckningsblock inte tillåter) och få en lista över drivrutiner. Direkt från operativsystemets kärna!

Om minst en av dessa drivrutiner saknas i C:\WINNT\-katalogen, kommer dess digitala signatur inte att verifieras! Naturligtvis lockar en sådan förare omedelbart uppmärksamhet, och vi har en rimlig fråga: var kommer den ifrån? Först skannar vi alla kataloger på disken; om det inte finns där, ställ in en brytpunkt på Soft-Ices CreateFileW-funktion och titta på argumenten som skickas till den. Förr eller senare kommer vi att träffa vår buggy-drivrutin, varefter allt som återstår är att titta i det nedre högra hörnet av Soft-Ice-skärmen, där namnet på processen som skapade den visas. För mer information, se boken "Tekniker för att felsöka program utan källkoder", en elektronisk kopia av vilken finns på ftp- eller http-servern nezumi.org.ru, såväl som på vår disk. Och vi fortsätter att plåga nyttan sigverif.exe.

Efter att ha klickat på "OK", "Start", kommer en "termometer" att visas på skärmen, som visar framstegen, och hårddisken börjar prassla med alla sina huvuden som den har. Efter avslutat arbete kommer en lista över förare utan digital signatur att sammanställas och visas på skärmen.

Vissa hotheads föreslår, för att rena systemet från kätteri, att ta bort alla osignerade drivrutiner - då, säger de, kommer alla problem att tas bort som en svans. Och hur kan detta göras? Den mest oförskämda lösningen är att helt enkelt ta och ta bort dem från disken via FAR eller Explorer (naturligtvis med administratörsrättigheter!). Men konsekvenserna av en sådan operation kan visa sig vara mycket bedrövliga, och det är bättre, genom att högerklicka på drivrutinsikonen i Utforskaren, för att hitta tillverkarens namn i "Egenskaper", där du kan bestämma vilken applikation / hårdvara som installerade denna drivrutin och avinstallera den på ett civiliserat sätt. Det är sant att det finns ett "men".

Följande bild framhäver föraren g400m.sys, som följer med Matrox G450-kortet, och även om Matrox inte alls är ett svagt företag fick det ingen digital signatur (antingen gav inte Microsoft det, eller så ville Matrox själv inte bry sig). Naturligtvis, efter att ha tagit bort det från systemet, måste du glömma SVGA-läget. Du kan dock gå till Matrox webbplats genom att ladda ner den senaste drivrutinsversionen (den är redan digitalt signerad). Först nu ... både de signerade och osignerade versionerna innehåller många fatala fel, i synnerhet som ett resultat av en kombination av vissa omständigheter när man försöker byta till överlagringsläge, kraschar systemet in i en BSOD, eftersom föraren försöker frigöra redan frigjort minne.

Förekomsten/frånvaron av en digital signatur i sig betyder alltså ingenting, och även om vi endast använder signerade drivrutiner ger detta oss inga garantier för stabilitet.

Det är här vi går vidare till den andra delen av artikeln, nämligen att testa förare under förhållanden nära strid.

Vi arrangerar ett rejält prov på ved

DDK innehåller ett underbart verktyg förare Bekräftare, vilket skapar de svåraste förhållandena för förare, på gränsen till extrem och självmord, där sannolikheten för misslyckande är maximal, och namnet på en defekt förare bestäms med högsta noggrannhet (även om den inte lider på grund av utvecklingsfel, men förstör datastrukturen för andra förare).

Det är viktigt att notera det förare Bekräftare Det är inte ett botemedel, utan bara ett diagnostiskt verktyg. Det kommer fortfarande inte att rädda dig från misslyckanden (tvärtom, det kommer att öka deras intensitet med ett par storleksordningar), men det kommer att hjälpa till att identifiera den "medelbara" föraren med en tillräcklig grad av säkerhet.

Så kör verifier.exe, se fönstret förare Bekräftare chef, gå till fliken Inställningar och flytta radioknappen till läget Verifiera alla förare, varefter vi trycker på knappen "Önskad inställning", som ställer in följande typer av kontroller (verifieringstyp):

  • Särskild slå samman- de kontrollerade drivrutinerna kommer att tilldelas ett speciellt minnesområde för tilldelning, som inte är särskilt snabbt, men som kan upptäcka de flesta typer av förstörelse av sin egen och andras data.
  • tvinga IRQL kontroll. IRQL står för Interrupt Request Level. Det vanligaste misstaget som drivrututvecklare gör är att försöka komma åt minnet vid en IRQL som swaphanteraren inte fungerar på. Och om den önskade sidan plötsligt visar sig tvingas ut till disk, kommer systemet att förvandlas till en blå skärm med inskriptionen "IRQL_LESS_OR_EQULAR". Genom att tvinga fram det här läget tvingas drivrutinssidorna till disken, så att utvecklingsfelet visar sig i 100 % av fallen.
  • Låg resurs simulering det är användbart att installera för att se hur föraren kommer att bete sig i händelse av en katastrofal brist på systemresurser, men detta kan inte göras, men det är bättre att lämna kryssrutan Poolspårning (spårning av korrektheten av minnespoolhanteringen). Ingångs-/utgångsfel (I/O-verifiering) utgör en obetydlig del av alla fel, så placeringen av denna kryssruta är i allmänhet helt okritisk.

När vi är klara med valet av inställningar trycker vi på knappen "Apply" (apply) och när vi erbjuds startar vi om.

Så fort uppstarten startar kommer systemet att sakta ner märkbart, vilket det borde, eftersom kärnan gör mycket fler kontroller än vanligt. När fel hittas blinkar en blå skärm med namnet på föraren och annan information som är användbar för utvecklare, men värdelös för oss. Allt vi kan göra är att uppdatera drivrutinen till den senaste versionen eller sluta använda programmet (hårdvaran) som använder den. Egentligen har vi lite fler alternativ för att tända råved, men mer om det senare.

Du kan ta reda på verifieringsstatusen när som helst genom att köra verifier.exe. Fliken Driver Status listar status för alla upptäckta förare med en förklaring av den aktuella situationen. Statusen Loaded betyder att denna drivrutin har laddats och testats minst en gång (men kanske inte helt, det vill säga inte alla delar av drivrutinen har utarbetats). Statusen Unloaded betyder att föraren har laddats, kontrollerats (eventuellt delvis) och avladdats av systemet/programmet som använder den eller av egen vilja. Det senare gäller särskilt för drivrutiner som blivit över från utrustning som togs bort genom att barbariskt dra ut expansionskort ur kortplatsen, det vill säga utan att utföra en avinstallation. Den överlevande föraren skannar bussen, försöker hitta "dess" utrustning, avbryter med sökningen och laddar sedan av sig själv från minnet, förresten, saktar ner systemstarten (ibland mycket kraftigt) och kommer i konflikt med andra förare. Moral: utrustningen från systemet måste tas bort enligt alla regler! Men inte alla avlastade status är ett tecken på en onormal situation, och innan du tar bort en förare med en sådan status måste du ta reda på vilken typ av ren det är och var den kom ifrån.

Statusen Never Loaded indikerar att den här drivrutinen ännu inte har laddats, vilket betyder att den inte har verifierats, därför måste du vänta med att starta olika program som kan vara associerade med den. Men vissa drivrutiner (särskilt felaktigt avinstallerade) laddas inte och kontrolleras därför aldrig.

Efter att ha arbetat med systemet i hårdtestläget under en tid (från flera timmar till flera dagar), kommer vi att identifiera nästan alla defekta drivrutiner som vi drabbades av tidigare och skriva ner deras namn på ett papper.

Återställ systemet till normalt läge (det vill säga utan ytterligare kontroller slukar prestanda), kan du använda samma verifierare. Vi återgår till fliken Inställningar, flyttar alternativknappen till läget Verifiera valda förare (i det här fallet ska ingen drivrutin väljas), klicka på "Återställ alla", sedan på "Använd" och starta om. Allt! Systemet körs nu med normal hastighet, men inga kontroller.

Vad ska man göra med rå ved?

Men egentligen, vad kan man göra med en defekt förare? Hackare som vet hur man håller en debugger i sina händer, om de har tillräckligt med ledig tid, kan demontera den (lyckligtvis är drivrutiner vanligtvis små i storlek), hitta ett fel och komma på ett sätt att fixa det, men ... det här är för mödosamt.

Att slänga drivrutinen (tillsammans med hårdvaran/programmet som använder den) är inte heller ett alternativ. Fast om det är känt att dödens blå skärmar bär skulden Ljudkort obekant kinesisk tillverkare värd $20, då har vi en ganska tung motivation att ersätta den med något mer värdigt. Men detta är i själva verket klart för alla och behöver inga ytterligare kommentarer.

Men inte alla vet att ett stort antal krascher och blå skärmar av dödsfall beror på att en drivrutin som utvecklats (och testats) i en enprocessormiljö är installerad på en dubbelprocessormaskin. Med "dubbel processor" menar vi här både en riktig plattform med två stenar, och Hyper-Threading / multi-core processorer. Det är känt (och bekräftat av ett stort antal tester) att hemdator två processorer är helt värdelösa, eftersom det i de allra flesta applikationer praktiskt taget inte finns någon ökning i prestanda.

Därför, om systemet är instabilt och det av en eller annan anledning inte är möjligt att bli av med den defekta drivrutinen, kan du försöka komma in i BIOS Setup och förvandla din "virtuella dubbelprocessor" -maskin till en enprocessor. En liknande effekt kan uppnås genom att öppna filen boot.ini (på datorer med Windows NT/2000/XP den finns i rotkatalogen för den logiska enheten som systemet är installerat på) och lägger till /ONECPU-nyckeln till den, och startar sedan om i hopp om att felen försvinner.

Lista 1

Ett exempel på en typisk boot.ini-fil


timeout=30

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

Lista 2

Vi konfigurerar systemet så att det endast använder en processor av alla tillgängliga


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

Men på Windows Perspektiv det finns ingen boot.ini-fil, och även om det finns ett (tillfälligt) alternativ att konfigurera dess startinställningar med särskild nytta, Microsoft planerar att helt eliminera detta kryphål, så att bara BIOS-inställningarna återstår. Dock vad gäller Perspektiv, när de byter till det, kommer drivrututvecklare med största sannolikhet att skaffa flerprocessormaskiner (eftersom det helt enkelt inte kommer att finnas några andra till försäljning) och kommer att testa sina skapelser i en multiprocessormiljö.

En annan subtil punkt. Kom ihåg att vi sa ovan att det vanligaste misstaget som görs av drivrutinutvecklare är att komma åt förhandsminnet på en IRQL-nivå där swaphanteraren inte fungerar, och om den begärda sidan inte finns i minnet inträffar en krasch? Den uppenbara lösningen här skulle vara att öka RAM-minnet till den mängd där förskjutningen av sidor till disk praktiskt taget inte sker. Med nuvarande priser på minne har nästan alla råd att köpa ett par nya "tärningar". Men det finns en mer tillgänglig (och mer elegant) lösning på problemet. Om parametern DisablePagingExecutive, som finns i följande registergren HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\MemoryManagement, är lika med ett (noll som standard), kommer kärnkomponenter inte att förskjutas. Därför startar vi helt enkelt "Registerredigeraren", ändrar denna värdefulla parameter och startar om (ändringarna träder i kraft först efter en omstart), i hopp om att detta kommer att hjälpa till att lösa problemet med fel.


Ibland kan maskinvarurelaterade DRIVER_VERIFIER_DETECTED_VIOLATION blå kraschskärmsfel orsakas av minnesskada (RAM). Om du står inför slumpmässiga omstarter dator, pipljud under uppstart eller andra datorfel (utöver BSOD 0xC4-fel), är det mycket troligt att det är minnesskada. Faktum är att nästan 10 % av Windows-programkrascher orsakas av minneskorruption.

Om du nyligen har lagt till nytt minne till din dator rekommenderar vi att du tar bort det tillfälligt för att se till att det inte orsakar DRIVER_VERIFIER_DETECTED_VIOLATION-felet. Om denna åtgärd fixade BSOD, så är det källan till problemet, och därför är det nya minnet antingen inte kompatibelt med en del av din hårdvara eller är skadat. I det här fallet måste du byta ut nya minnesmoduler.

Om du inte lagt till nytt minne, är nästa steg att köra ett diagnostiskt test på din dators tillgängliga minne. Minnestestet låter dig skanna efter allvarliga minnesfel och intermittenta fel som kan orsaka blåskärm död 0xC4.

Fastän senaste versionerna Windows innehåller ett RAM-testverktyg, jag rekommenderar starkt att du använder Memtest86 istället. Memtest86 är ett test programvara baserat på BIOS, till skillnad från andra testprogram som körs i en Windows-miljö. Fördelen med detta tillvägagångssätt är att verktyget låter dig kontrollera ALLT operativsystem för DRIVER_VERIFIER_DETECTED_VIOLATION-fel, medan andra program inte kan kontrollera minnesområden som upptas av själva programmet, operativsystemet och andra program som körs.

Om du misstänker att någon av drivrutinerna inte fungerar korrekt eller, efter att ha analyserat minnesdumpen, du har identifierat drivrutinen som orsakade felet, så för en mer noggrann kontroll av drivrutinernas funktion, kan du självständigt kontrollera drivrutinerna med hjälp av checkern som är inbyggd i operativsystemet Verifier.exe.

Kontrollera om det finns osignerade drivrutiner.

bekräftare och tryck på Enter.
2) Välj ett objekt och tryck på knappen Ytterligare.
och tryck på knappen Ytterligare.
Simulering av resursbrist och tryck på knappen Ytterligare.
Välj automatiskt osignerade drivrutiner och tryck på knappen Ytterligare.

Om osignerade drivrutiner hittas kommer systemet att visa en lista över dem, som inkluderar drivrutinsfilerna och deras beskrivning. Dessutom kan de hittade drivrutinerna tillhöra både enheter och applikationer. Stäng inte fönstret Driver Verifier eller tryck på några knappar ännu.

Alternativ 1: Uppdatera programmet eller drivrutinen.

6) Besök webbplatsen för enhetstillverkaren eller författaren till programmet och ladda ner den nyare versionen.
7) Installera om programmet eller uppdatera drivrutinen.
8) När du har uppdaterat applikationen eller drivrutinen, stäng fönstret Driver Checker genom att klicka på knappen Annullera.
9) Starta om datorn och fortsätt arbeta i operativsystemet.
Om systemet inte har några fel associerade med den här drivrutinen, eliminerades det genom att uppdatera drivrutinen eller programmet.

Alternativ 2: Ta bort programmet eller drivrutinen.

6.1) Ta bort programmet som äger denna drivrutin.
6.1.1) Öppna KontrollpanelAlla kontrollpanelobjekt Program och funktioner och avinstallera programmet som äger drivrutinen.
Innan du avinstallerar programmet, se till att du har det installationsskiva eller dess inställning sparas på din disk.

6.2) Ta bort drivrutinen i Enhetshanteraren.
6.2.1) I menyn Start högerklicka på Dator och välj objektet Egenskaper.
6.2.2) Klicka i listan till vänster på Enhetshanteraren.
6.2.3) B Enhetshanteraren hitta enheten, högerklicka på den och välj objektet från snabbmenyn Egenskaper.
6.2.4) Gå till flik Förare och tryck på knappen Radera.

7) När du har avinstallerat programmet eller drivrutinen, stäng fönstret Driver Verifier genom att klicka på knappen Annullera.
8) Starta om datorn och fortsätt arbeta i operativsystemet.

Om systemet inte har några fel associerade med den här drivrutinen, eliminerades det genom att avinstallera drivrutinen eller programmet.

Alternativ 3: Kontrollera om det finns osignerade drivrutiner.

Uppmärksamhet! Efter att ha kontrollerat för osignerade drivrutiner kanske systemet inte startar (läs innan du fortsätter med ytterligare steg detta alternativ att sluta).

6) Tryck på knappen Redo och starta om datorn.

7) Starta om datorn
8) Före start Windows start tryck på F8-tangenten. När fönstret för val av disk visas: välj den skiva som du har installerat Windows på, tryck på Enter och sedan omedelbart F8.
9) Välj objekt Säkert läge
10) Öppna dialogmenyn Springa: Starta ->
11) Ange kommando verifier.exe /reset och tryck på Enter.

Om systemet startade normalt lyckades kontrollen av osignerade drivrutiner - de är inte källan till problemet.

Kontrollera signerade förare.

1) Skriv i startmenyns sökfält bekräftare och tryck på Enter.
2) Välj objekt Skapa anpassade parametrar (för programkod) och tryck på knappen Ytterligare.
3) Ställ in alternativknappen på Välj enskilda alternativ från en komplett lista och tryck på knappen Ytterligare.
4) Markera alla kryssrutor utom kryssrutorna Simulering av resursbrist och tryck på knappen Ytterligare.
5) Ställ in radioknappen på Välj ett förarnamn från listan och tryck på knappen Ytterligare.
6) Klicka på kolumnrubriken Leverantör att sortera förare efter deras leverantör.
7) Välj de första 10-15 drivrutinerna genom att markera rutorna bredvid dem i kolumnen Kolla upp.
Välj inte alla drivrutiner på en gång, eftersom det tar mycket tid och systemresurser att kontrollera dem.
8) Tryck på knappen Redo och starta om datorn. Om systemet startade normalt kontrollerades de valda drivrutinerna framgångsrikt - de är inte källan till problemet. I det här fallet upprepar du stegen ovan genom att välja nästa 10-15 drivrutiner.

Om en blå skärm med ett fel visas efter omstarten har den problematiska drivrutinen identifierats - dess namn kommer att inkluderas i felmeddelandet. I detta fall:

1) Starta om datorn
2) Innan du startar Windows, tryck på F8-tangenten. När fönstret för val av disk visas: välj den skiva som du har installerat Windows på, tryck på Enter och sedan omedelbart F8.
3) Välj objekt Säkert läge
4) Öppna dialogmenyn Springa: Start -> Kör eller tryck på kombinationen Win + R
5) Ange kommando verifier.exe /reset och tryck på Enter. Om kontrollen av alla drivrutiner lyckades, är det troligen inte drivrutinerna som är orsaken till det kritiska felet som uppstår på ditt system.

Verktyg förare Bekräftare ingår i alla Windows-versioner, som börjar med Windows XP, och låter dig kontrollera drivrutiner, identifiera problematiska förare, som är orsaken blåskärm (BSOD- Blue Screen of Death) och skriv detaljerad information om den problematiska föraren till en minnesdump för vidare analys. Verktyget exponerar de testade drivrutinerna för olika " stresstester”, simulerar olika extrema förhållanden: brist på minne, I/O-kontroll, IRQL, dödläge, DMA-kontroller, IRP, etc. Dvs. situationer som uppstår sällan på produktiva system simuleras och förarens beteende i dem övervakas. Syftet med verktyget är att identifiera situationer där föraren kan leda till en systemkrasch med en BSOD.

Verktygsfil Driver verifierare kallad bekräftare.ex och finns i katalogen %windir%\system32. Det finns två alternativ för att använda verktyget: från kommandoraden eller att använda GUI.

För att aktivera drivrutinsverifieringsläget i Windows 8, kör drivrutinsverifieringsverktyget genom att skriva

Bekräftare

Välj från uppgiftslistan Skapa anpassade inställningar (för kodutvecklare) och tryck Nästa.

Se till att alternativ är valda standardinställningar, Framtvinga väntande I/O-förfrågningar Och IRP-loggning. Klick Nästa.

Välj nästa.

Sortera innehållet i tabellen genom att klicka på kolumnrubriken Provider och välj de drivrutiner du vill testa från listan över drivrutiner. I vårt exempel kommer vi att köra en kontroll för alla drivrutiner som inte är utvecklare av MicrosoftFöretag. Vi valde drivrutiner: e1g6032e.sys (Intel) och lsi_sas.sys (LSI).

Notera. Att drivrutinen har en digital signatur från Microsoft indikerar att drivrutinen har testats på ett visst sätt för stabilitet och dess kod har inte ändrats efter det. Det är därför det inte rekommenderas eller att använda.

Det återstår att trycka på Avsluta och ett informationsfönster visas som säger att du måste starta om systemet för att ändringarna ska träda i kraft.

Råd. Verifieringsläget för föraren kan också aktiveras från kommandoraden. Till exempel att köra Driver Verifier med standardinställningar för drivrutinen myPCDriver.sys kommer kommandot att se ut så här:

Verifier /standard /drivrutin myPCDriver.sys

Efter en omstart startar systemet till drivrutinskontrollläge. Driver Verifier körs i bakgrunden och körs olika sorter testa valda drivrutiner för fel. Använd din dator som vanligt och vänta på att BSOD ska visas. Om du vet vilka åtgärder som fick systemet att krascha tidigare, upprepa dem. I händelse av en BSOD måste du kopiera minnesdumpfilen (som standard lagrad i katalogen C:\Windows\Minidump\*.dmp) eller motsvarande.

Viktig! Efter att ha aktiverat drivrutinsfelsökningsläget med Driver Verifier kommer detta läge att fungera tills det tvångsinaktiveras.

I händelse av att problemet inte återkommer inom 1-2 dagar, kan man med en viss grad av säkerhet dra slutsatsen att de förare som kontrolleras inte är orsaken till systemkraschen och kontrollläget för dem kan stängas av.

Råd. Använda Checker Windows-drivrutiner saktar ner betydligt Windows fungerar, så det rekommenderas inte att ständigt arbeta i detta läge.

Du kan inaktivera Driver Verifier-kontrollen från kommandoraden:

Verifierare/återställ

Eller från GUI genom att välja objektet Ta bort befintliga inställningar.

I händelse av att du inte kan logga in på systemet i normalt läge kan du även inaktivera felsökningsläget från säkert läge.

I händelse av att och säkert läge systemet startar inte, försök ta bort följande nycklar i registret genom att starta från startskivan:

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

Du kan kontrollera aktuell status för Driver Verifier-verktyget enligt följande.

Om du upptäcker ett fel, välj en textbit och tryck på Ctrl + Retur
DELA MED SIG: