Gdje se pohranjuju bsod dumpovi za Windows 10. Kako koristiti dump memorije za identifikaciju drajvera koji uzrokuje BSOD. Vrste Windows padova

Windows je vrlo krhka kreacija i gotovo sve, svaka pogrešna radnja od strane korisnika povlači za sobom pojavu kritičnih grešaka, i to ne toliko. Da biste saznali informacije o plavim ekranima smrti, koji su vrlo kritični problemi, pomažu informacije ispisane na samom ekranu, kao i posebne memorijske dump datoteke koje pohranjuju podatke o uzrocima BsoD. Toplo preporučujem da omogućite ovu funkciju, jer niko nije imun od pojave plavog ekrana, čak ni iskusni korisnik.

Sami memorijski dumpovi se obično pohranjuju duž putanje C:\Windows\MEMORY.DMP, ili C:\Windows\Minidump - gdje se pohranjuju takozvani mali memorijski dumpi. Usput, mala memorija će biti datoteka koja će vam pomoći da otkrijete uzrok BsoD-a.

Obično je stvaranje memorijskih dumpova u Windowsu 10 onemogućeno prema zadanim postavkama, što znači da korištenje posebnih uslužnih programa za provjeru dump datoteka neće dati pozitivan rezultat. Pređimo direktno na akciju.

Kako omogućiti funkciju dump memorije na Windows 10 i konfigurirati je

Obično se za pregled dumpova koriste uslužni programi poput BlueScreenViewa, ali morate odmah postaviti automatsko ispuštanje memorije, inače će ovaj i slični programi biti beskorisni.

Otvoriće se prozor u kojem na lijevoj strani kliknite na opciju " Dodatne sistemske postavke».

U kartici " Dodatno"Kliknite na mod" "".

Konačno, otvara se prozor u kojem se nalaze glavni parametri za postavljanje dumpova. Ovdje možete vidjeti da je automatski dump memorije aktiviran u Windows-u, koji je pohranjen na stazi koja je navedena ispod. Omogućeni su i potvrdni okviri za kreiranje dnevnika. Osim toga, kreiraju se i mali memorijski dump fajlovi, koji će nam biti vrlo korisni kada radimo s plavim ekranima smrti. Informacije o jezgri sistema i memoriji također se čuvaju. Ako postoji automatski način rada, to će biti dovoljno.

O drugim deponijama memorije

Ako otvorite padajući meni za pisanje informacija o otklanjanju grešaka, vidjet ćete nekoliko opcija koje ću opisati u nastavku.

  • Mali dump memorije- mini deponij, koji se čuva na posebnoj putanji i teži 256 kilobajta. Ovaj fajl čuva osnovne informacije o plavim ekranima smrti i sistemskim procesima. Ako trebate saznati uzrok BSOD-a, dovoljan je mali dump memorije. BlueScreenView ili sličan softver se koristi za izdvajanje informacija. Ovu metodu može koristiti svaki početnik.
  • Dump memorije kernela– datoteka će sadržavati iste informacije kao i automatski tip. Jedina razlika je u tome što sistem mijenja datoteku stranične strane. Koju opciju odabrati? Mislim da je odmah automatski tip.
  • Dump pune memorije- datoteka sadrži kompletne podatke o RAM-u, što znači da će veličina datoteke biti jednaka veličini RAM-a. Košta vas 8 GB na vašem računaru, koliko će datoteka pune memorije zauzeti na disku. Za početnike ova opcija nije posebno prikladna.
  • Dump aktivne memorije- prvi put se pojavio u Windows 10. Pogodniji za servere i skladišti podatke o aktivnoj memoriji i režimima kernela, kao i trenutnom korisniku.

Kako izbrisati datoteku s dumpom memorije

Vrlo je jednostavno, idete na putanju na kojoj se ti fajlovi nalaze i ručno ih brišete. Na primjer, datoteka pune memorije se zove MEMORY.DMP, samo je izbrišite i to je to. Kada koristite alat za čišćenje diska, moguće je i brisanje dump datoteka.


Dump memorije može biti onemogućen zbog radnji uslužnih programa za čišćenje sistema. Kada koristite SSD-ove i posebne uslužne programe za rad s ovim pogonima, oni također mogu onemogućiti neke sistemske funkcije tako da SSD manje podliježe procedurama čitanja/pisanja.

Svi Windows sistemi, kada se otkrije fatalna greška, prave hitan dump (snapshot) sadržaja RAM-a i pohranjuju ga na hard disk. Postoje tri tipa memorije:

Dump pune memorije - čuva cijeli sadržaj RAM-a. Veličina snimka jednaka je veličini RAM-a + 1 MB (zaglavlje). Koristi se vrlo rijetko, jer će na sistemima s velikom količinom memorije veličina dampa biti prevelika.

Dump memorije kernela - čuva RAM informacije koje se odnose samo na režim kernela. Informacije o korisničkom načinu rada se ne pohranjuju, jer ne sadrže informacije o uzroku pada sistema. Veličina dump datoteke zavisi od veličine RAM-a i varira od 50 MB (za sisteme sa 128 MB RAM-a) do 800 MB (za sisteme sa 8 GB RAM-a).

Mali dump memorije (mini dump) - sadrži prilično malu količinu informacija: kod greške s parametrima, spisak drajvera učitanih u RAM u trenutku pada sistema, itd., ali ove informacije su dovoljne za identifikaciju neuspjelog drajvera . Još jedna prednost ove vrste dumpa je mala veličina datoteke.

Podešavanje sistema

Za identifikaciju drajvera koji je to izazvao, biće nam dovoljno da koristimo mali memorijski dump. Da bi sistem sačuvao mini dump tokom pada, morate izvršiti sljedeće korake:

Za Windows XP Za Windows 7
  1. Moj kompjuter Svojstva
  2. Idi na karticu Dodatno;
  3. Opcije;
  4. Na terenu Pisanje informacija za otklanjanje grešaka izabrati Mali dump memorije (64 KB).
  1. Desni klik na ikonu Kompjuter iz kontekstnog menija izaberite Svojstva(ili kombinacija tipki Win+Pause);
  2. U lijevom meniju kliknite na stavku Dodatne sistemske postavke;
  3. Idi na karticu Dodatno;
  4. U polju Preuzimanje i vraćanje kliknite na dugme Opcije;
  5. Na terenu Pisanje informacija za otklanjanje grešaka izabrati Mali dump memorije (128 KB).

Nakon izvršenih svih manipulacija, nakon svakog BSoD-a, datoteka sa ekstenzijom .dmp će biti sačuvana u folderu C:\WINDOWS\Minidump. Savjetujem vam da pročitate materijal "". Također možete označiti okvir " Zamijenite postojeći dump fajl". U ovom slučaju, svaki novi dump će prepisati stari. Ne preporučujem uključivanje ove opcije.

Analiza rušenja sa BlueScreenView-om

Dakle, nakon što se pojavio plavi ekran smrti, sistem je sačuvao novi crash dump. Za analizu dump-a preporučujem korištenje programa BlueScreenView. Može se besplatno preuzeti. Program je prilično zgodan i ima intuitivan interfejs. Nakon što ga instalirate, prva stvar koju treba učiniti je odrediti lokaciju za pohranjivanje memorijskih dumpova u sistemu. Da biste to učinili, idite na stavku menija “ Opcije” i odaberite “ NaprednoOpcije". Odaberite radio dugme opterećenjeodthepratećiMini Dumpfolder” i navedite mapu u kojoj se pohranjuju dumpovi. Ako su datoteke pohranjene u folderu C:\WINDOWS\Minidump, možete kliknuti na “ Default". Kliknite OK i uđite u programsko sučelje.

Program se sastoji od tri glavna bloka:

  1. Blok glavnog menija i kontrolna tabla;
  2. Blok liste ispisa rušenja;
  3. Ovisno o odabranim parametrima, može sadržavati:
  • lista svih drajvera u RAM-u pre nego što se pojavi plavi ekran (podrazumevano);
  • lista drajvera koji se nalaze u RAM stogu;
  • snimak ekrana BSoD-a;
  • i druge vrijednosti koje nećemo koristiti.

U bloku liste memorijskih dumpova (označen brojem 2 na slici) odaberite dump koji nas zanima i pogledajte listu drajvera koji su učitani u RAM (označen brojem 3 na slici). Drajveri koji su se nalazili u memorijskom steku su obojeni roze. Oni su uzrok BSoD-a. Zatim idite na glavni meni drajvera, odredite kojem uređaju ili programu pripadaju. Prije svega, obratite pažnju na nesistemske datoteke, jer se sistemske datoteke ionako učitavaju u RAM. Lako je uočiti da je myfault.sys neispravan drajver na slici. Reći ću da je ovaj program posebno pokrenut da izazove Stop grešku. Nakon što identifikujete neispravan drajver, morate ga ažurirati ili ukloniti iz sistema.

Da bi program prikazao listu drajvera koji se nalaze u memorijskom stogu tokom pojave BSoD-a, morate ići na stavku menija “ Opcije"klikni na meni" NižeOknonačin rada” i odaberite “ SamoVozačiPronađenUStack” (ili pritisnite tipku F7), a za prikaz snimka ekrana greške odaberite “ PlavaEkraninXPstil” (F8). Da biste se vratili na listu svih drajvera, morate odabrati stavku “ SveVozači” (F6).

Greške se dešavaju vrlo često u Windows-u, čak iu slučaju "čistog" sistema. Iako se uobičajene programske greške mogu riješiti (pojavljuje se poruka o komponenti koja nedostaje), tada će kritične greške biti mnogo teže popraviti.

Šta je dump memorije u Windowsu

Za rješavanje problema sa sistemom obično se koristi crash dump - ovo je slika dio ili punu količinu RAM-a i stavljanje na nepostojan medij (tvrdi disk). Drugim riječima, sadržaj RAM-a se u potpunosti ili djelomično kopira na medij, a korisnik može analizirati memorijski dump.

Postoji nekoliko vrsta memorijskih dumpova:

Mala deponija(Small Memory Dump) - čuva minimalnu količinu RAM-a, gdje se nalaze informacije o kritičnim greškama (BSoD) i komponentama koje su učitane tokom rada sistema, na primjer, drajveri, programi. MiniDump pohranjen na putu C:\Windows\Minidump.

Pun dump(Complete Memory Dump) - čuva punu količinu RAM-a. To znači da će veličina datoteke biti jednaka količini RAM-a. Ako ima malo prostora na disku, bit će problematično uštedjeti, na primjer, 32 GB. Postoje i problemi s kreiranjem datoteke dump memorije veće od 4 GB. Ova vrsta se koristi vrlo rijetko. Čuva se duž putanje C:\Windows\MEMORY.DMP.

Dump memorija kernela– pohranjuju se samo informacije koje se odnose na jezgro sistema.

Kada korisnik dođe do analize greške, dovoljno je da koristi samo minidamp (mali dump). Ali prije toga mora biti uključen, inače neće biti moguće prepoznati problem. Takođe, za efikasnije otkrivanje kvara, poželjna je upotreba snimka pune memorije.

Podaci u registru

Pogled u Windows Registry otkriva neke korisne opcije snimka. Pritisnite kombinaciju tipki Win + R, unesite naredbu regedit i otvorite sljedeće filijale:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

U ovoj grani korisnik će pronaći sljedeće opcije:

  • autoreboot- Aktivirajte ili onemogućite ponovno pokretanje nakon plavog ekrana smrti (BSoD).
  • DumpFile– naziv tipova deponija i lokacija.
  • CrashDumpEnabled– broj kreirane datoteke, na primjer, broj 0 – ne kreira se dump; 1 – kreiranje pune deponije; 2 - stvaranje deponije jezgre; 3 - stvaranje male deponije.
  • DumpFilters– opcija vam omogućava da dodate nove funkcije prije kreiranja snimka. Na primjer, šifriranje datoteka.
  • MinidumpDir– naziv male deponije i njenu lokaciju.
  • log događaj– aktiviranje snimanja informacija u sistemskom dnevniku.
  • MinidumpsCount– postavite broj malih deponija koje će se kreirati. (Prekoračivanje ovog broja uništit će stare datoteke i zamijeniti ih).
  • Overwrite– funkcija za potpuni dump ili sistemski dump. Prilikom kreiranja novog snimka, prethodni će uvijek biti zamijenjen novim.
  • DedicatedDumpFile– kreiranje alternativne datoteke snimka i navođenje njene putanje.
  • IgnorePagefileSize- koristi se za privremeno lociranje snimka, bez korištenja datoteke stranične stranice.

Kako radi

Ako dođe do kvara, sistem potpuno zaustavlja svoj rad i, ako je dumping aktivan, datoteka postavljena na disk će biti upisana informacije o problemu. Ako se nešto dogodilo sa fizičkim komponentama, tada će kod za hitne slučajeve raditi, a hardver koji je pokvario izvršit će bilo kakve promjene, što će se definitivno odraziti na snimku.

Obično se datoteka pohranjuje u blok tvrdog diska koji je dodijeljen za datoteku stranične memorije, nakon pojave BSoD-a, datoteka se prepisuje u obliku koji je sam korisnik konfigurirao (Mali, puni ili core dump). Iako, u modernim operativnim sistemima, učešće swap datoteke nije neophodno.

Kako omogućiti dumpove

AT Windows 7:

AT Windows 8 i 10:

Ovdje je proces malo sličan, možete ući u informacije o sistemu na isti način kao u Windows 7. U "Deset" obavezno otvorite " Ovaj kompjuter”, Desni klik na prazan prostor i odaberite “ Svojstva". U suprotnom, tamo možete doći preko kontrolne table.

Druga opcija za Widows 10:


Treba napomenuti da su se u novim verzijama Windowsa 10 pojavile nove stavke koje nisu bile u "sedam":

  • Mala deponija 256 KB memorije je minimalni podatak o grešci.
  • Active dump- pojavio se u desetoj verziji sistema i čuva samo aktivnu memoriju računara, kernel sistema i korisnika. Preporučuje se za korištenje na serverima.

Kako izbrisati dump

Dovoljno je otići u direktorij u kojem su pohranjeni snimci memorije i jednostavno ih izbrisati. Ali postoji još jedan način za brisanje - korištenjem uslužnog programa za čišćenje diska:

Ako stavke nisu pronađene, dumpovi možda nisu bili omogućeni.

Čak i ako ste ih jednom omogućili, neki od uslužnih programa za optimizaciju sistema koje koristite mogu lako onemogućite neke funkcije. Često se mnoge stvari onemogućuju kada se koriste SSD diskovi, jer ponovljene procedure čitanja i pisanja uvelike štete zdravlju ovog diska.

Analiza deponije memorije sa WinDbg

Ovaj program preuzimamo sa službene Microsoftove web stranice u koraku 2, gdje je opisan " InstalacijaWDK» - https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk .

Za rad s programom i dalje vam je potreban poseban paket simbola za otklanjanje grešaka. To se zove Simboli za otklanjanje grešaka, ranije ste ga mogli preuzeti sa Microsoft web stranice, ali sada su odustali od ove ideje i morat ćete koristiti funkciju programa File - " Putanja do datoteke simbola“, gdje treba da unesete sljedeći red i kliknete OK:

postavite _NT_SYMBOL_PATH=srv*DownstreamStore*https://msdl.microsoft.com/download/symbols

Ako ne uspije, probajte ovu naredbu:

SRV*%systemroot%\symbols*http://msdl.microsoft.com/download/symbols

Ponovo kliknite na "File" i odaberite opciju "Save Workspace".

Uslužni program je konfigurisan. Ostaje odrediti putanju do datoteka s dumpom memorije. Da biste to učinili, kliknite na Datoteka i kliknite na opciju " OolovkaCrashDump". Lokacija svih deponija navedena je na početku članka.

Nakon odabira, analiza će se završiti i problematična komponenta će biti automatski istaknuta. Da biste dobili više informacija u istom prozoru, možete unijeti sljedeću naredbu: !analizirati -v

Analiza uz BlueScreenView

Alat možete besplatno preuzeti sa ove stranice - http://www.nirsoft.net/utils/blue_screen_view.html. Instalacija ne zahtijeva nikakve vještine. Koristi se samo u Windows 7 i novijim.

Pokrećemo i konfigurišemo. Kliknite na "Postavke" (Opcije) - " Dodatne opcije" (Napredne opcije). Odaberite prvu stavku " Učitajte minidumpove iz ovog foldera" i navedite direktorij - C:\WINDOWS\Minidump. Iako možete samo kliknuti na dugme "Default". Pritisnemo OK.

Dump fajlovi bi se trebali pojaviti u glavnom prozoru. Može biti jedan ili više. Da biste ga otvorili, samo kliknite na njega mišem.

U donjem dijelu prozora će se prikazati komponente koje su bile aktivne u trenutku kvara. Krivac nesreće biće označen crvenom bojom.

Sada kliknite "Datoteka" i odaberite, na primjer, stavku " Pronađite u Google kod greške + drajver". Ako pronađete pravi drajver, instalirajte i ponovo pokrenite računar. Možda će greška nestati.

Ako imate takozvani plavi ekran smrti u Windowsu 10 i spremni ste da padnete u nervnu komu, saberite se i pokušajte da rešite problem. Za početak, vrijedi reći da vam ova zloslutna poruka signalizira kritičnu sistemsku grešku. Štaviše, daleko je od uvijek moguće uhvatiti trenutak i imati vremena za čitanje koda greške kada Windows padne u plavi ekran smrti i uređaj se ponovo pokrene. Odmah napominjemo da postoji ogroman broj rješenja za ovaj problem, kao i uzroci plavog ekrana. U ovom članku pokušat ćemo razmotriti vjerojatne uzroke plavog ekrana sreće, kao i moguća rješenja problema.

U velikoj većini slučajeva, plavi ekran smrti signalizira grešku BAD_POOL_CALLER - stop 0x000000c2. Iskreno, teško je dijagnosticirati ovu grešku, ali je moguće da ćemo pokušati opisati algoritam vaših sljedećih radnji na primjeru ove greške.

Da biste ispravno dijagnosticirali problem, prvo morate analizirati poseban sistemski fajl koji se zove minidump (memory dump). Kreiranje ovakvih fajlova dovodi do kvara u sistemu, štaviše, oni nas mogu obavestiti – šta je tačno dovelo do kvara.

1. Da biste omogućili takvo automatsko snimanje male deponije memorije (onemogućeno prema zadanim postavkama), idite na svojstva računara i idite na odjeljak "Napredne postavke sistema" (ova uključenost je predviđena za sve sisteme, ne samo za Windows 10):

Po pravilu, svi minidump fajlovi se čuvaju kada se pojavi plavi ekran smrti (BSOD), a možete ih pronaći u fascikli C:\Windows\Minidump. Važno je napomenuti da naziv datoteke sadrži trenutni datum - kada je kreiran, što znatno olakšava identifikaciju datuma kada je greška nastala, posebno imajući u vidu da može postojati više od jedne takve datoteke.

Dva načina kako dešifrirati minidump memorije male žene

Prvi način, je korištenje prilično popularnog uslužnog programa BlueScreenView. Ovaj uslužni program također može biti dobra opcija za analizu deponije memorije. Upotreba ovog uslužnog programa je zgodna kao način za identifikaciju problematičnog upravljačkog programa.

Štaviše, posebno je vrijedan pažnje po tome što se može koristiti za gledanje BSOD-a (plavog ekrana smrti) kao u zamrznutom okviru, kao što je bilo kada se sistem srušio. Prikazuje vrijeme i datum kvara, detalje upravljačkog programa ili modula s verzijom i kratkim opisom. Osim toga, uslužni program je dostupan na mnogim jezicima, uključujući ruski. Dakle, uslužni program BlueScreenView je prava stvar ako trebate brzo analizirati deponije memorije tokom BSOD-a.

Za drugi način morate instalirati alate za otklanjanje grešaka za Windows i također preuzeti uslužni program bsdos_utility. Dalje, nakon što raspakujete skriptu bsdos_utility.cmd, trebali biste je premjestiti na C:\ disk (možete kreirati zasebnu mapu, ali zapamtite da će se niz adrese za pokretanje skripte razlikovati od našeg primjera). Zatim na komandnoj liniji napišite:

C:\bsdos_utility.cmd

Nakon prikaza liste svih dumpova sa liste C:\Windows\Minidump\, nakon čega će skripta pitati koji dump treba analizirati. Također možete sami odabrati željeni minidump prilikom pokretanja skripte:

Slično, moguće je otkriti mnogo Windows 10 grešaka koje su uzrokovale BSOD, kao i problematične .exe programe koji su uzrokovali plavi ekran.

Ova kratka bilješka ima za cilj pokazati kako možete konfigurirati sistem kako bi vam bio na raspolaganju u hitnim slučajevima Dump Windows memorije, odnosno deponiju koja se može kreirati u slučaju kritičnog kvara, karakteriziranog pojavom plavog ekrana smrti (BSOD). Šta je uopšte deponija, zašto nam je potrebna i šta je to, koje probleme treba da reši i koje informacije sadrži?

Dump memorije (memory dump) - sadržaj radne memorije procesa, kernela ili cijelog operativnog sistema, uključujući, pored radnih područja, dodatne informacije o stanju registara procesora, sadržaju steka i dr. uslužne strukture.

Zašto nam je potreban ovaj sadržaj, tj. Dump Windows memorije? Možda se najčešći dump memorije koristi za istraživanje uzroka pada sistema (), koji je uzrokovao potpuno zaustavljanje operativnog sistema. Pored ovoga, stanje memorije se može koristiti u druge svrhe. Važna je i činjenica da je memorijski dump bukvalno jedini način da dobijete informacije o bilo kakvom kvaru! A uklanjanje (primanje) deponije sistemske memorije je, u stvari, jedini tačan metod za dobijanje trenutnog otiska (kopije) sadržaja fizičke memorije sistema.

Što će sadržaj dumpa preciznije odražavati stanje memorije u trenutku kvara, to ćemo moći više analizirati hitnu situaciju. Zbog toga je izuzetno važno da dobijete tačno trenutnu kopiju fizičke memorije sistema u strogo definisanom trenutku koji neposredno prethodi kvaru. A jedini način da to učinite je da napravite potpuni crash dump. Razlog je sasvim trivijalan - kada dođe do crash dump sistemske memorije, bilo kao rezultat kvara ili kao rezultat vještački simulirane situacije, sistem je u ovom trenutku primanja kontrole nad funkcijama za hitne slučajeve (KeBugCheckEx) u apsolutno nepromijenjeno (statično) stanje, dakle, između trenutka pada i do trenutka kada se podaci upisuju na medij, ništa ne mijenja sadržaj fizičke memorije, a na disk se zapisuje u svom originalnom stanju. Pa, to je u teoriji, ali povremeno u životu, ali postoje situacije da zbog neispravnih hardverskih komponenti, sam dump memorije može biti oštećen ili se stanica može zamrznuti tokom procesa snimanja dump-a.

U velikoj većini slučajeva, od trenutka kada započne proces kreiranja memorije crash dump-a, do trenutka kada se sadržaj memorije upiše na disk, informacije u memoriji ostaju nepromijenjene.

Teoretski, statičnost (nepromjenjivost) memorijskog "otiska" objašnjava se činjenicom da je kada se pozove funkcija KeBugCheckEx, koja prikazuje informacije o padu i pokreće proces kreiranja memorijskog dump-a, sistem već potpuno zaustavljen i sadržaj fizičke memorije se upisuje u blokove koje na disku zauzima datoteka stranične memorije, nakon čega se, već prilikom naknadnog pokretanja operativnog sistema, izbacuje u datoteku na sistemskom mediju. Pa, skoro jednom sam primijetio situaciju kada neuspješna matična ploča nije dozvolila spremanje dump-a memorije: a) zamrzavanje logike čuvanja dump-a tokom rada (proces nije dostigao 100%), b) oštećenje datoteke s dumpom memorije (debuger je proklet strukture), c ) pisanjem memory.dmp dump datoteka nulte dužine. Stoga, uprkos činjenici da je sistem već bio potpuno zaustavljen u vrijeme kreiranja memorijske deponije i da radi samo kod za hitne slučajeve, neispravan hardver može napraviti vlastita prilagođavanja bilo kojoj logici bez izuzetka u bilo kojoj fazi rada.
Tradicionalno, u početnoj fazi, za spremanje Windows memorije, koriste se blokovi diska dodijeljeni straničnoj datoteci (datoteci stranice). Zatim, nakon pojave plavog ekrana i ponovnog pokretanja, podaci se premeštaju u zasebnu datoteku, a zatim se datoteka preimenuje prema obrascu u zavisnosti od tipa dumpa. Međutim, počevši od Windows Vista, ovo stanje se može promijeniti, sada je korisniku data mogućnost da sačuva namjenski dump bez učešća datoteke stranične memorije, stavljajući informacije o padu u privremenu datoteku. To je učinjeno kako bi se eliminisale konfiguracijske greške povezane s pogrešnim postavkama veličine i položaja datoteke stranične memorije, što je često dovodilo do problema u procesu spremanja memorijskog dumpa.
Hajde da vidimo koje vrste dumpova nam operativni sistem Windows dozvoljava da kreiramo:

  • Dump procesne memorije (aplikacija);
  • Dump memorije kernela;
  • Dump pune memorije (dump dostupnog dijela fizičke memorije sistema).

Sve crash deponije mogu se podijeliti u dvije glavne kategorije:

  • Dumpovi pada s informacijama o izbačenom izuzetku. Obično se kreiraju automatski kada se u aplikaciji / kernelu pojavi neobrađeni izuzetak i, shodno tome, može se pozvati sistemski (ugrađeni) debugger. U ovom slučaju, informacije o izuzetku se upisuju u dump, što olakšava određivanje vrste izuzetka i lokacije pojave tokom naknadne analize.
  • Dumpovi pada bez informacija o izuzetku. Obično ga kreira korisnik ručno kada je potrebno napraviti samo snimak procesa za kasniju analizu. Ova analiza ne podrazumijeva određivanje vrste izuzetka, jer iznimka nije bilo, već analizu sasvim druge vrste, na primjer, proučavanje strukture podataka procesa i tako dalje.

Konfiguracija dampa kernela

Morate biti prijavljeni sa administrativnim nalogom da biste izvršili korake opisane u ovom odeljku.

Pređimo direktno na konfigurisanje postavki Windows crash dump. Prvo, moramo otići do prozora sa svojstvima sistema na jedan od sljedećih načina:

  1. Kliknite desnim tasterom miša na ikonu "Moj računar" - "Svojstva" - "Napredne sistemske postavke" - "Napredno".
  2. Dugme "Start" - "Kontrolna tabla" - "Sistem" - "Napredne postavke sistema" - "Napredno".
  3. Prečica na tastaturi "Windows" + "Pauza" - "Napredne postavke sistema" - "Napredno".

  4. controlsystem.cpl,3
  5. Pokrenite u komandnoj liniji (cmd):
    SystemPropertiesAdvanced

Rezultat opisanih radnji je otvaranje prozora "Svojstva sistema" i odabir kartice "Napredno":

Nakon toga, u odjeljku "Preuzimanje i oporavak" kliknemo, odaberemo "Opcije" i time otvorimo novi prozor pod nazivom "Preuzimanje i oporavak":

Sve postavke crash dumpa grupisane su u blok postavki koji se zove Sistemska greška. U ovom bloku možemo postaviti sljedeće parametre:

  1. Upišite događaje u sistemski dnevnik.
  2. Izvršite automatsko ponovno pokretanje.
  3. Snimanje informacija o otklanjanju grešaka.
  4. Dump fajl.
  5. Zamijenite postojeći dump fajl.

Kao što vidite, mnogi parametri sa liste su prilično trivijalni i lako razumljivi. Međutim, želio bih se detaljnije zadržati na parametru "Dump file". Parametar je predstavljen kao padajuća lista i ima četiri moguće vrijednosti:

Mali dump memorije

Mali dump memorije (minidump) je datoteka koja sadrži najmanju količinu informacija o rušenju. Najmanji od svih mogućih memorijskih dumpova. Uprkos očiglednim nedostacima, često se mini-dampovi koriste kao informacije o neuspjehu za prijenos do dobavljača drajvera treće strane radi daljeg proučavanja.
spoj:

  • Poruka o grešci.
  • Vrijednost greške.
  • Opcije greške.
  • Kontekst procesora (PRCB) koji nije uspio.
  • Informacije o procesu i kontekst kernela (EPROCESS) za proces koji je uzrokovao pad, sa svim njegovim nitima.
  • Informacije o procesu i kontekst kernela (ETHREAD) za nit koja je uzrokovala pad.
  • Stog načina kernela za nit koja je uzrokovala pad.
  • Lista učitanih drajvera.

Smještaj: %SystemRoot%\Minidump\MMDDYY-XXXXX-NN.dmp. Gdje je MMDDYY mjesec, dan i godina, NN je serijski broj deponije.
Volumen: Veličina zavisi od bitnosti operativnog sistema: potrebno je samo 128 kilobajta za 32-bitni OS i 256 kilobajta za 64-bitni OS u straničnoj datoteci (ili u datoteci navedenoj u DedicatedDumpFile). Pošto ne možemo postaviti tako malu veličinu, zaokružujemo je na 1 megabajt.

Dump memorije kernela

Ova vrsta dumpa sadrži kopiju sve memorije kernela u trenutku pada.
spoj:

  • Lista pokrenutih procesa.
  • Stanje trenutne niti.
  • Stranice memorije u režimu jezgra prisutne u fizičkoj memoriji u trenutku pada: memorija drajvera u režimu jezgra i programska memorija u režimu jezgra.
  • Hardware-Aware Layer (HAL) memorija.
  • Lista učitanih drajvera.

Dumpu memorije kernela nedostaju nedodijeljene memorijske stranice i stranice korisničkog načina. Slažem se, malo je vjerovatno da će nas stranice procesa korisničkog moda biti od interesa za vrijeme pada sistema (BugCheck), jer obično pad sistema inicira kod načina rada kernela.

Veličina: varira u zavisnosti od veličine adresnog prostora kernela, alokacije operativnog sistema i broja drajvera za režim kernela. Obično je potrebna oko trećina količine fizičke memorije u swap datoteci (ili datoteci koju specificira DedicatedDumpFile). Može varirati.

Kompletan dump memorije

Kompletan dump memorije sadrži kopiju cjelokupne fizičke memorije (RAM) u trenutku pada. U skladu s tim, cijeli sadržaj sistemske memorije također ulazi u datoteku. Ovo je i prednost i veliki nedostatak, jer njegova veličina može biti značajna na nekim serverima sa velikim količinama RAM-a.
spoj:

  • Sve stranice "vidljive" fizičke memorije. Ovo je praktički cijela memorija sistema, sa izuzetkom područja koje koristi hardver: BIOS, PCI prostor, itd.
  • Obradite podatke koji su bili pokrenuti na sistemu u vrijeme pada.
  • Stranice fizičke memorije koje nisu mapirane u virtuelni adresni prostor, ali koje mogu pomoći u istraživanju uzroka kvara.

Dump pune memorije podrazumevano ne uključuje oblasti fizičke memorije koje koristi BIOS.
Lokacija: %SystemRoot%\MEMORY.DMP . Prethodni dump je prepisan.
Veličina: Datoteka stranične memorije (ili datoteka navedena u DedicatedDumpFile) zahtijeva veličinu jednaku veličini fizičke memorije + 257 megabajta (ovih 257 MB podijeljeno je na neku vrstu zaglavlja + podataka drajvera). U stvari, u nekim operativnim sistemima, donji prag datoteke stranične memorije može se postaviti tačno na vrijednost veličine fizičke memorije.

Automatski dump memorije

Počevši od Windows 8/Windows Server 2012, novi tip dump-a je uveden u sistem pod nazivom "Automatic Memory Dump", koji je postavljen kao podrazumevani tip. U ovom slučaju, sistem sam odlučuje koji će memorijski dump napisati u situaciji određenog kvara. Štaviše, logika izbora zavisi od mnogih kriterijuma, uključujući i učestalost „pada“ operativnog sistema.

Nakon što promijenite konfiguraciju Windows memorije, možda ćete morati ponovo pokrenuti računar.

Postavke registra

Ključ registra koji definira postavke ispisa rušenja:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

Opcije:

Parametar Vrstu Opis
autoreboot REG_DWORD Omogućite/onemogućite automatsko ponovno pokretanje kada se pojavi BSOD.
CrashDumpEnabled REG_DWORD Vrsta deponije koja se kreira.
  • 0 - ne kreirajte dump memorije;
  • 1 - kompletan dump memorije;
  • 2 - dump memorije jezgra;
  • 3 - mala memorija;
DumpFile REG_EXPAND_SZ Put i naziv dumpa jezgre i punog dumpa.
DumpFilters REG_MULTI_SZ Filter drajvera u stogu drajvera za ispis memorije. Omogućava vam da dodate novu funkcionalnost u fazi kreiranja dumpova rušenja. Na primjer, šifriranje sadržaja deponije. Promjena vrijednosti se ne preporučuje.
log događaj REG_DWORD Upišite događaj u sistemski dnevnik.
MinidumpDir REG_EZPAND_SZ Put i ime male memorije.
MinidumpsCount REG_DWORD Maksimalan broj malih memorijskih dumpova. Kada se prekorači, starije verzije počinju da se prepisuju.
Overwrite REG_DWORD Zamijenite postojeći dump fajl. Samo za dump memorije kernela i dump pune memorije.
IgnorePagefileSize REG_DWORD Zanemaruje standardnu ​​datoteku stranične memorije kao mjesto za privremeno (posredno) pohranjivanje deponije memorije. Označava da bi dump memorije trebao biti upisan u zasebnu datoteku. Koristi se u kombinaciji s opcijom DedicatedDumpFile.
DedicatedDumpFile REG_EZPAND_SZ Put i ime privremene alternativne datoteke za pisanje memorije. U drugom prolazu, podaci će i dalje biti premješteni u DumpFile/MinidumpDir.

Ručno kreiranje memorije

Iznad smo opisali postavke za automatsko kreiranje dumpova pada sistema u slučaju kritične greške, odnosno neobrađenog izuzetka u kodu kernela. Ali u stvarnom životu, pored pada operativnog sistema, postoje situacije kada trebate dobiti dump sistemske memorije u određenom trenutku. Kako biti u ovom slučaju? Postoje metode za dobijanje trenutne kopije sve fizičke memorije, kao što je korištenje naredbe .dump u WinDbg/LiveKD programima za otklanjanje grešaka. LiveKD je program koji vam omogućava da pokrenete Kd kernel debugger na pokrenutom sistemu u lokalnom načinu. WinDbg debugger također ima sličnu funkciju. Međutim, on-the-fly metoda dobivanja dumpa nije tačna, budući da je dump kreiran u ovom slučaju "nedosljedan", jer je potrebno vrijeme da se napravi dump, a u slučaju korištenja ispravljača grešaka u kernel modu , sistem nastavlja sa radom i vrši promjene na memorijskim stranicama.

  • Sergej Savenkov

    neka vrsta "šture" pregleda...kao da se negdje žuri