Rešimo se modrega zaslona groze!

Objavljeno: 29.1.2013 | Avtor: Simon Peter Vavpotič | Kategorija: Nasveti | Revija: Januar 2013

Na spletnih forumih zasledimo obsežne razprave o BSOD, kar je kratica za "blue screen of death", po slovensko: modri zaslon smrti. Prej ponosni lastniki predvsem doma sestavljenih PCjev "tavajo v temi" in si ne znajo razložiti, zakaj njihovi novi stroji pogosto odpovedujejo in "padejo v moder zaslon".

Mnogi se še spomnimo časov, ko je v Windows 98 mrgolelo "hroščev", ko se je z modrim zaslonom na predstavitvi novega skenerja s priključkom USB na COMDEXu opekel celo sam Bill Gates. Nasprotno, pri Windows 7 skoraj ni verjetno, da bomo odkrili napako ožjega jedra operacijskega sistema. Navadno je napaka v strojni opremi ali gonilnikih, na kar ima Microsoft bolj malo vpliva. Večina tistih, ki se spopadajo z BSOD, želi nasvet, kako odkriti vzrok za nestabilno delovanje računalnika iz mini sledi odpovedi (angl. mini dump), ki jo Windows shrani ob nastanku "velike modrine". Drugi sprašujejo, kako naj svoj stroj navijejo, da bo kljub temu zanesljivo deloval. Tretji se ubadajo z gonilniki manj znane grafične kartice, nekateri pa svojega 64-bitnega Windows 7 po namestitvi sploh ne morejo spraviti v pogon. Med njimi so tudi obupanci, ki so ostali brez pravih idej in zato kupujejo novo, dražjo strojno opremo z večjo združljivostjo in uporabnejšimi navodili; včasih celo brez uspeha. Če nočemo zamenjati vsega računalnika po delih, je bistveno, da natančno ugotovimo vzrok modrega zaslona.

Slika 1: Ročno nastavljanje časov zakasnitev za dva različna para pomnilniških modulov, tako da vsi delujejo v skladu z zahtevami izdelovalca. Tisto, česar ne vemo, pustimo na "AUTO".

Glavni vzroki

Najverjetnejši vzroki napak so odpovedi strojne opreme zaradi napačnih nastavitev, obrabe ali serijske napake, napake v BIOSu ali slabih gonilnikov. Pogosto moder zaslon povzroči s strani Microsofta nepreizkušeni gonilnik brez certifikata ustreznosti, ki ga lahko namestimo le, če v posebnem opozorilnem oknu potrdimo, da se zavedamo tveganja nestabilnosti operacijskega sistema.

Za napake pri delovanju ali v nastavitvah strojne opreme in/ali BIOSa je značilno, da lahko povzročijo naključne odpovedi delov ožjega jedra operacijskega sistema ali gonilnikov. Vnovična napaka se redko zgodi v istem trenutku glede na začetek delovanja računalnika. Njena pojavnost je lahko odvisna celo od vlage in temperature prostora ali od tega, koliko časa je minilo, odkar je bil računalnik ugasnjen, in od časa, ki je minil, odkar je bil računalnik spet prižgan. Stroj se obnaša, kot da bi staknil virus, trojanskega konja ali drugo zlonamerno programsko kodo. Ločiti moramo med temi napakami, ki se naredijo do deset minut po zagonu, ko je računalnik še sorazmerno hladen, in napakami, ki se pokažejo kasneje in so lahko posledica pregrevanja posameznih komponent. Napake na začetku so vedno posledica pokvarjene, nezdružljive ali napačno nastavljene strojne opreme. Splača se namestiti programsko opremo za nadzor parametrov delovanja računalnika (npr. www.hwinfo.com) in občasno preveriti temperaturo komponent med delovanjem. Pomembno je, da se ne pregrevajo.

Druga skupina vzrokov so slabi gonilniki. Teh napak ni težko najti, saj vedno odpove isti gonilnik, ko pa namestimo posodobljeno različico, težave izginejo. Popraviti moramo le še morebitno škodo v datotečnem sistemu.

Nekoliko drugačen pristop moramo izbrati pri popravilu filtrskih gonilnikov, ki se vrinejo med prave gonilnike diskovnih naprav in aplikacijski programski vmesnik operacijskega sistema. Večinoma so del protivirusne programske opreme in programske opreme za varen dostop in tunelski prenos podatkov med intraneti po internetu. Težave navadno nastanejo z nizanjem filtrskih gonilnikov in/ali zamenjavo katerega izmed jih, ko zamenjamo varnostni paket ali paket za varen tunelski prenos podatkov. Rešitev je le v popolni odstranitvi tovrstne programske opreme in vnovični namestitvi. Včasih je pri tem pomemben vrstni red nameščanja programskih paketov.

Vendar, pozor! Filtriranje uporabljajo tudi nekateri virusi in trojanski konji. Tem se lahko v celoti izognemo, če uporabljamo kakovosten protivirusni programski paket.

Slika 2: Razhroščevalnik Microsoft Windows Debugger in analiza mini sledi odpovedi. Podan je tudi razlog odpovedi.

Zahrbtni glavni pomnilnik

Najpogostejši vzrok in zelo zahrbten vzrok naključnih modrih zaslonov je glavni pomnilnik. Pomnilniško prepletanje in več pomnilniških bank sta izraza, ki marsikateremu računalniškemu navdušencu ali neinženirsko razpoloženemu zanesenjaku ne pomenita dosti, a se v praksi izkaže, da sta še kako pomembna za razumevanje navodil izdelovalcev osnovnih plošč, ki se jih moramo načeloma dosledno držati, če želimo imeti stabilen stroj.

V težavah smo, ko zahtev izdelovalca zaradi nedobavljivosti ustreznih pomnilniških modulov ne moremo izpolniti, si pa kljub temu želimo večji pomnilnik in stabilen računalnik. S "prečesavanjem" spletnih forumov dobimo veliko splošnih navodil, zelo malo pa je konkretnih, ki se nanašajo točno na našo osnovno ploščo in na našega izdelovalca pomnilniških modulov. Pomagati si moramo tudi z raznimi diagnostičnimi orodji ter lastno iznajdljivostjo in znanjem, včasih pa tudi s praktičnimi preizkusi. Pri tem ni izključeno, da bomo morali na koncu zamenjati ves glavni pomnilnik z zmogljivejšimi moduli.

Pogosto so posledica slabega delovanja glavnega pomnilnika računalnika tudi poškodovane datoteke na disku. To ni nič nenavadnega, če vemo, da mora računalnik pri snemanju datotek na disk v glavnem pomnilniku stalno obdelovati podatke o zgradbi in vsebini datotečnih imenikov ter metapodatke datotek in podatke o pripadnosti diskovnih sektorjev posameznim datotekam. Če se med obdelavo zgodi napaka v pomnilniku, se prenese tudi na disk. Odkrili jo bomo, ko bomo hoteli z njega prebrati vsebino datotečnega imenika in/ali datoteko. Popravilo slabih sektorjev in obnovitev sistemskih datotek z namestitvenega DVD in/ali zamenjava diska ne bodo rešili težav. Nova, zmogljivejša osnovna plošča jih morda bo, čeprav za to ni nobenega zagotovila, je pa gotovo, da nas bo nakup olajšal za precej denarja.

Enostavne metode za odpravo napake

Najlaže posodobimo gonilnike. Lahko si pomagamo s posebnimi programi, ki v internetu sami poiščejo nove gonilnike in jih namestijo (kot je Driver Genius), ali pa se sami odpravimo na spletne strani izdelovalcev strojne opreme in poiščemo nove različice. BIOS oziroma na osnovno ploščo vgrajena programska oprema je lahko veliko trši oreh, saj izdelovalci za starejše izdelke navadno nehajo izdajati posodobitve. Včasih pomaga tudi nižanje delovnih taktov pomnilniškega vodila in/ali zunanjega vodila glavnega procesorja pod nominalne vrednosti. Dobrodošla je tudi menjava kablov SATA s slabimi kontakti. Odprava napake lahko zahteva tudi precej teoretičnega znanja in izkušenj s področja logike in strojne opreme. Več v okvirčku.

Naslednji korak je popravilo morebitne škode, ki je med nezanesljivim delovanjem računalnika nastala na disku. Najenostavneje je, če računalnik zaženemo z originalnega namestitvenega DVD in izberemo možnost popravi namestitev Windows (angl. Repair Windows Installation). Namesto tega lahko izberemo popravilo ob pomoči ukazne vrstice (angl. command prompt), v katero vtipkamo: sfc /scannow. Po vnovičnem zagonu bomo morali še enkrat namestiti popravke operacijskega sistema in to je vse. Če sumimo, da so na disku poškodovane tudi datoteke, ki ne pripadajo operacijskemu sistemu, lahko uporabimo ukaz chkdsk x: /f, kjer X nadomestimo s črko diska.

Če kaže, da se določena komponenta računalnika pregreva, a uporablja le pasivno hlajenje (npr. cenejša grafična kartica), ji bomo z ventilatorjem podaljšali življenjsko dobo in povečali zanesljivost delovanja. Po potrebi lahko dodaten ventilator namestimo tudi na zato pripravljeno mesto v ohišju računalnika.

Slika 3: Moder zaslon pri odpovedi gonilnika

Slika 4: Razpravam o BSOD ni videti konca, čeprav nekatere kažejo predvsem na nerazumevanje bistva težav zaradi pomanjkanja teoretičnega predznanja.

Analiza sledi odpovedi

Sled odpovedi (angl. crash dump) vsebuje podatke, na podlagi katerih lahko natančno ugotovimo, v katerem delu programske opreme, kdaj in kako se je s stališča glavnega procesorja zgodila odpoved. Natančna analiza je dokaj zapletena, saj v internetu najdemo prostovoljske spletne strani, ki se ukvarjajo samo s tem (npr. www.dumpanalysis.org). Veliko je tudi razne literature, ki je v pomoč predvsem razvijalcem gonilnikov.

Za iskanje slabega gonilnika je dovolj enostavna analiza, ki jo izvedemo z razhroščevalnikom Microsoft Windows Debugger z ustreznimi simboli za razhroščevanje. Razhroščevalnik lahko zastonj prenesemo s spletne strani developer.microsoft.com v okviru razvojnih paketov Windows SDK ali Windows Driver Kit. V razhroščevalniku moramo na menuju File pod izbiro Symbol File Path le še nastaviti pot do spletne strani, kjer dobi simbole za razhroščevanje: SRV*c:\symbols*msdl.microsoft.com/download/symbols. Podatkovno zbirko simbolov sicer lahko prenesemo in namestimo tudi v svoj računalnik, vendar utegnemo imeti pri tem kar precej težav.

Analizo mini sledi odpovedi zaženemo prek izbire Open Crash Dump z menuja File. Sledi odpovedi Windows shranjuje v imenik: <sistemski disk>:<sistemski imenik>\Minidump (npr. C:\Windows\Minidump) v datoteke s končnico dmp. Po izpisu verjetnega vzroka odpovedi lahko dobimo še nekoliko natančnejše pojasnilo, če kliknemo modro obarvano in podčrtano povezavo !analyze -v.

Naj je uspelo?

Če poznamo natančen vzrok in okoliščine, v katerih se je prikazoval moder zaslon, nam po poskusu odprave napake ne bo težko preveriti, ali smo bili uspešni. Pri naključno pojavljajočih se odpovedih moramo računalnik dlje časa uporabljati in upati, da se napaka ne bo ponovila na statistično podoben način. Najboljši recept, da modrih zaslonov v prihodnosti ne bo, je dosledno izogibanje navijanju računalnika, strogo upoštevanje priporočil izdelovalcev posameznih komponent in nameščanje kakovostne programske in strojne opreme z gonilniki, certificiranimi pri Microsoftu.

Za zahtevne: Modri zaslon in pomnilniški moduli

Osnovna plošča ASUS P5Q, ki omogoča dve pomnilniški banki s po dvema pomnilniškima moduloma DDR2 s pomnilniškim prepletanjem, ima v navodilih objavljeno tabelo ustreznih, oziroma preverjeno delujočih sestavov pomnilniških modulov in njihovih izdelovalcev. Pomnilniško prepletanje pomeni, da krmilnik glavnega pomnilnika do modulov v isti banki dostopa tako, da hkrati bere po dve 64-bitni pomnilniški vrstici (skupaj 128 bitov) oziroma po eno iz vsakega modula. Neusklajenost modulov je recept za katastrofo. Zato v ASUSu svetujejo, da kupimo par modulov ali dva para istega izdelovalca in ne vsakega posebej. A kaj, ko danes novega 4 GB para Corsairovih 2 GB modulov z oznako CM2X2048-6400C4DHX (v nadaljevanju "C4DHX") ni več mogoče kupiti. Ni druge možnosti, kot kupiti par nekoliko manj zmogljivih modulov CM2X2048-6400C5 (v nadaljevanju "C5"). C5 ima tudi manjši in enostavnejši hladilnik kot C4DHX, vendar to ni problem, če ga ne bomo navijali, redkejši CM2X2048-6400C5DHX pa ima zmogljivejši hladilnik, tak kot C4DHX. V posodobljeni tabeli združljivosti, ki jo lahko prenesemo s spletne strani www.asus.com, vidimo, da osnovna plošča P5Q brez težav deluje s štirimi moduli C4DHX. Stabilno delovanje s štirimi moduli C5 ni zagotovljeno. Za povrh naj bi štirje moduli C4DHX delovali le pri 400 MHz zunanjem taktu (oz. 800 MHz notranjem) in nastavitvi kombinacije ključnih zakasnitev 4-4-4-12, pri 2,1 V, ko delujejo pri najvišji zmogljivosti. Moduli C5 zdržijo le 1,8 V, hkrati pa pri 400 MHz delujejo le pri kombinaciji 5-5-5-18. Jezi to, da izdelovalec pomnilniških modulov na svojih spletnih straneh ni objavil podrobnih podatkov o minimalnih časovnih zakasnitvah pri izvajanju različnih operacij branja, pisanja in osveževanja pomnilniških modulov v različnih režimih delovanja. To k sreči omogoča brezplačno diagnostično programsko orodje HWiNFO (www.hwinfo.com), ki izpiše vsebino bralnega pomnilnika modulov, v katerem so shranjeni natančni podatki dveh režimov delovanja.

Če v BIOSu izberemo samodejno nastavitev pri uporabi štirih modulov, je enaka kot za dva modula: 400 MHz zunanji takt pri kombinaciji 5-5-5-18, vendar ima za posledico pogoste naključne modre zaslone pri zagonu 64-bitnega Windows 7. Sklepamo, da je v ozadju obremenitev krmilnika pomnilnika v čipovnem naboru P45, ki je očitno pri zagonu večja kot pri raznih testnih programih, ki ne pokažejo težav. Očitno je tudi, da to ni v skladu s priporočili v tabeli združljivosti. Moduli C4DHX in C5 naj bi bili sposobni delovati tudi pri zunanjem taktu 270,3 MHz (oz. notranjem 540, 6 MHz) pri kombinaciji zakasnitev 4-4-4-13. V BIOSu je najboljši približek 533 MHz. To pomeni zunanji takt 266,5 MHz. Za pravilno delovanje moramo nastavitve vnesti ročno. Najprej izračunamo trajanje 1 cikla zunanjega pomnilniškega vodila: 1/266,5 MHz = 1000/266,5 ns = 3,752345 ns. Nato naredimo inženirsko domačo nalogo in prilagodimo vrednosti zakasnitev obema vrstama pomnilnika v skladu s specifikacijami modulov. Če pri izračunu dobimo vrednost z decimalnimi mesti, moramo zakasnitev v ciklih vedno zaokrožiti navzgor! Npr. izračunana minimalna zakasnitev 3,33 cikla je zakasnitev 4 cikle, nikoli 3! Celoten izračun zakasnitev pomnilnika je v tabeli 1.

Če za katero od zakasnitev pri 266,5 MHz zunanjem taktu pomnilniških modulov v BIOSu nimamo podatkov, jo raje pustimo, kot je, saj so zakasnitve pri višjih frekvencah vedno daljše, bo pač računalnik deloval nekoliko počasneje.

Je računalnik zdaj veliko počasnejši? Ker imamo ključne zakasnilne čase enkrat 4-4-4-12, drugič pa 5-5-5-18, je izračun približka količnika obeh hitrosti delovanja dokaj enostaven. Upoštevamo samo prve tri vrednosti, ki so vse enake in zato ni treba računati povprečja, tRAS za približek ni odločilen in ga ne upoštevamo: 4/266,5 MHz = 15 ns in 5/400 MHz = 12,5 ns, kar je 15/12,5 = 1,2, oz. približno 20 % počasneje. Iz razmerja 800/533 bi lahko napačno sklepali, da je upočasnitev 50 %. Toda čim zmogljivejši je glavni procesor, tem večji so njegovi vgrajeni predpomnilniki. Zato se upočasnitev pri večini programov še precej manj pozna.

Tabela z rezultati

Naroči se na redna tedenska ali mesečna obvestila o novih prispevkih na naši spletni strani!
Prijava

Komentirajo lahko le prijavljeni uporabniki