tévék. Konzolok. Projektorok és tartozékok. Technológiák. Digitális TV

Memóriakiírás elemzése vagy hogyan lehet azonosítani a BSoD okát? Összeomlási memóriakép A Windows 10 memóriakiíratási fájljának megnyitása

Nagyon gyakran előfordulnak hibák a Windows operációs rendszerben, még „tiszta” rendszer esetén is. Ha a szokásos programhibák megoldhatók (hiányzó komponensről üzenet jelenik meg), akkor a kritikus hibákat sokkal nehezebb lesz kijavítani.

Mi az a memória kiíratása a Windowsban

A rendszerrel kapcsolatos problémák megoldására általában egy összeomlási memória kiíratást használnak - ez egy fénykép rész vagy teljes kötet RAMés nem felejtő adathordozóra (merevlemezre) helyezzük. Más szóval, a RAM tartalma teljesen vagy részben átmásolódik a médiára, és a felhasználó elemezheti a memóriakiírást.

A memória kiíratásának többféle típusa létezik:

Kis szemétlerakó(Small Memory Dump) – minimális mennyiségű RAM-ot takarít meg, amely információkat tartalmaz a kritikus hibákról (BSoD) és a rendszer működése során betöltött összetevőkről, például illesztőprogramokról, programokról. MiniDump a C:\Windows\Minidump elérési útban van tárolva.

Teljes szemétlerakás(Complete Memory Dump) – a RAM teljes mennyisége mentésre kerül. Ez azt jelenti, hogy a fájl mérete megegyezik a RAM mennyiségével. Ha kevés a lemezterület, problémás lesz például 32 GB megtakarítás. Problémák vannak a 4 GB-nál nagyobb memóriakiíratási fájl létrehozásával is. Ez a típus nagyon ritkán használják. A C:\Windows\MEMORY.DMP helyen tárolva.

Dump kernel memória– csak a rendszermaggal kapcsolatos információk kerülnek mentésre.

Amikor a felhasználó hozzáfér a hiba elemzéséhez, csak a minidamp-ot (kis dump) kell használnia. De ezt megelőzően be kell kapcsolni, különben a probléma nem kerül felismerésre. Az összeomlás hatékonyabb azonosítása érdekében előnyösebb a teljes memória pillanatképet használni.

Információk a nyilvántartásban

Ha belenézel Windows rendszerleíró adatbázis, akkor találhat néhány hasznos képparamétert. Kattintson a Win+R billentyűkombinációra, és írja be a parancsot regedités nyissa meg a következő fiókokat:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

Ebben az ágban a felhasználó a következő paramétereket találja:

  • Automatikus újraindítás– engedélyezze vagy tiltsa le az újraindítást a Blue Screen of Death (BSoD) létrehozása után.
  • DumpFile– a lerakó típusának és helyének neve.
  • CrashDumpEnabled- szám létrehozott fájl például a 0 szám – nem jön létre dump; 1 – teljes lerakó létrehozása; 2 – maglerakás létrehozása; 3 – kis szemétlerakó létrehozása.
  • DumpFilters– az opció lehetővé teszi új funkciók hozzáadását a pillanatkép készítése előtt. Például fájltitkosítás.
  • MinidumpDir– a kis lerakó neve és helye.
  • LogEvent– rögzítési információk aktiválása a rendszernaplóban.
  • MinidumpsCount– állítsa be a létrehozandó kis dumpok számát. (Ennek a számnak a túllépése a régi fájlokat megsemmisíti és lecseréli).
  • Átír– funkció teljes vagy rendszeres ürítéshez. Új fénykép készítésekor az előzőt mindig újra cseréli.
  • DedicatedDumpFile- Teremtés alternatív fájl kép és útja jelzése.
  • IgnorePagefileSize– ideiglenes pillanatfelvétel helyére használható, swap fájl használata nélkül.

Ez hogy működik

Hiba esetén a rendszer teljesen leállítja a működését, és ha a dumping aktív, akkor a lemezre helyezett fájlba íródik. információkat a felmerült problémáról. Ha valami történik a fizikai komponensekkel, akkor egy vészkód működni fog, és a meghibásodott hardver végrehajt néhány változtatást, ami minden bizonnyal tükröződik a pillanatképen.

A fájlt általában a cserefájl számára kijelölt blokkban tárolják merevlemez, után BSoD megjelenése a fájl felülírásra kerül a felhasználó által beállított típusban (Kicsi, teljes vagy core dump). Bár a modern operációs rendszerekben a lapozófájl részvétele nem szükséges.

Hogyan lehet engedélyezni a dumpokat

IN Windows 7:

IN Windows 8 és 10:

Itt a folyamat egy kicsit hasonló, ugyanúgy bejuthatunk a rendszerinformációkba, mint a Windows 7-ben. A „Tízben” feltétlenül nyissa meg a „ Ezt a számítógépet", kattintson a gombra szabad hely jobb egérgombbal és válassza ki a „ Tulajdonságok" Egy másik módja annak, hogy elérje a Vezérlőpulton keresztül.

Második lehetőség a számára Windows 10:


Meg kell jegyezni, hogy a Windows 10 új verzióiban új elemek jelentek meg, amelyek nem voltak a „hét” között:

  • Kis szemétlerakó memória 256 KB - minimális hibaadat.
  • Aktív dump- a rendszer tizedik verziójában jelent meg, és csak a számítógép, a rendszermag és a felhasználó aktív memóriáját menti. Szervereken való használatra ajánlott.

Hogyan lehet törölni egy kiírást

Csak lépjen abba a könyvtárba, ahol a memória pillanatképei vannak, és egyszerűen törölje őket. De van egy másik módja annak eltávolítására - a Lemezkarbantartó segédprogram használatával:

Ha nem talált elemeket, előfordulhat, hogy a kiíratások nincsenek engedélyezve.

Még ha egyszer engedélyezte is őket, néhány rendszeroptimalizáló segédprogram könnyen használható letilt néhány funkciót. Használat közben gyakran sok minden kikapcsol SSD meghajtók, mivel az ismételt olvasási és írási eljárások nagymértékben károsítják ennek a lemeznek az egészségét.

Memóriakiírás elemzés WinDbg segítségével

Töltse le a Microsoft hivatalos webhelyéről ezt a programot a 2. lépésben, ahol le van írva: „ TelepítésWDK" - https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk.

A programmal való munkához egy speciális hibakereső szimbólumcsomagra is szüksége lesz. Úgy hívják Hibakeresési szimbólumok, korábban a Microsoft weboldaláról lehetett letölteni, de most elvetették ezt az ötletet, és a Fájl program funkciót kell használni - " Szimbólum fájl elérési útja", ahol írja be a következő sort, majd kattintson az OK gombra:

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

Ha nem működik, próbálja ki ezt a parancsot:

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

Kattintson ismét a „Fájl” gombra, és válassza a „Munkaterület mentése” lehetőséget.

A segédprogram konfigurálva van. Már csak a memóriakiíratási fájlok elérési útját kell megadni. Ehhez kattintson a Fájl gombra, és kattintson a „ OtollÖsszeomlásDump" Az összes szemétlerakó helye a cikk elején van feltüntetve.

A kijelölés után az elemzés véget ér, és a problémás komponens automatikusan kiemelésre kerül. Megkapni több információ ugyanabban az ablakban megadhatja a következő parancsot: !elemez –v

Elemzés a BlueScreenView segítségével

Az eszközt ingyenesen letöltheti erről a webhelyről: http://www.nirsoft.net/utils/blue_screen_view.html. A telepítés nem igényel készségeket. Csak Windows 7 és újabb rendszeren használható.

Elindítjuk és konfiguráljuk. Kattintson az „Opciók” - „ További lehetőségek "(Speciális beállítások). Válassza ki az első elemet " MiniDumps betöltése ebből a mappából"és jelezze a könyvtárat - C:\WINDOWS\Minidump. Bár egyszerűen rákattinthat az „Alapértelmezett” gombra. Kattintson az OK gombra.

A dump fájloknak meg kell jelenniük a fő ablakban. Ez lehet egy vagy több. A megnyitáshoz kattintson rá az egérrel.

Az ablak alján megjelennek azok az összetevők, amelyek a hiba idején futottak. A balesetért felelős személy pirossal lesz kiemelve.

Most kattintson a „Fájl” elemre, és válassza ki például a „ Keresse meg a Go-banogle hibakód + driver" Ha megtalálják szükséges sofőr, telepítse és indítsa újra a számítógépet. Talán a hiba eltűnik.

Ennek a rövid megjegyzésnek az a célja, hogy bemutassa, hogyan konfigurálhatja a rendszert vészhelyzet esetén Windows memória dump, vagyis egy kritikus hiba bekövetkeztekor létrehozható dump, amelyet a halál kék képernyőjének (BSOD) megjelenése jellemez. Mi az a szemétlerakó általában, miért van rá szükségünk és mi az, milyen problémákat hivatott megoldani és milyen információkat tartalmaz?

Memóriakiírat – egy folyamat, kernel vagy egész munkamemóriájának tartalma operációs rendszer, amely a munkaterületeken kívül magában foglalja további információk a processzorregiszterek állapotáról, a verem tartalmáról és egyéb szolgáltatási struktúrákról.

Miért lehet szükségünk erre a tartalomra, pl. Windows memória dump? A memóriakiírás talán legáltalánosabb használata a rendszerhiba okainak tanulmányozása (), amely az operációs rendszer teljes leállását okozta. Ezen kívül a memória állapota más célokra is használható. Az is fontos, hogy a memória kiíratása szó szerint az egyetlen módja annak, hogy információt szerezzünk bármilyen meghibásodásról! És a rendszermemória kiíratásának vétele (megszerzése) valójában az egyetlen pontos módszer a rendszer fizikai memória tartalmának azonnali ujjlenyomatának (másolatának) beszerzésére.

Minél pontosabban tükrözi a dump tartalma a memória meghibásodáskori állapotát, annál részletesebben tudjuk elemezni a vészhelyzetet. Ezért rendkívül fontos, hogy szigorúan a rendszer fizikai memóriájának aktuális másolatát szerezzük be bizonyos pillanatban a meghibásodást közvetlenül megelőző idő. Ennek egyetlen módja egy teljes összeomlási dump létrehozása. Az ok meglehetősen triviális - amikor a rendszermemória összeomlása meghibásodás vagy mesterségesen szimulált helyzet eredményeként megtörténik, a rendszer abban a pillanatban, amikor megkapja a vészhelyzeti funkciók vezérlését (KeBugCheckEx) abszolút változatlan (statikus) állapot, ezért a hiba bekövetkezte és az adatok adathordozóra írása között semmi sem változtatja meg a fizikai memória tartalmát, és az eredeti állapotában kerül a lemezre. Nos, ez elméletben van, de néha az életben, de vannak olyan helyzetek, amikor a hibás hardverelemek miatt maga a memóriakiírás megsérülhet, vagy az állomás lefagyhat a kiírás rögzítése közben.

Az esetek túlnyomó többségében attól a pillanattól kezdve, hogy az összeomlási memóriakép létrehozásának folyamata elkezdődik, egészen a memóriatartalom lemezre írásának végéig, a memóriában lévő információk változatlanok maradnak.

Elméletileg a memória „ujjlenyomatának” statikusságát (változhatatlanságát) az magyarázza, hogy a KeBugCheckEx függvény meghívásakor, amely információt jelenít meg a hibáról, és elindítja a memóriakiírás létrehozásának folyamatát, a rendszer már teljesen leáll, és a a fizikai memória tartalma a lapozófájl által a lemezen elfoglalt blokkokra íródik, majd az operációs rendszer ezt követő betöltésekor visszaáll a rendszer adathordozóján lévő fájlba. Nos, szinte egyszer megfigyeltem egy olyan helyzetet, amikor egy hibás alaplap megakadályozta, hogy elmentsem egy memóriakiírást: a) lefagyás a kiíratási mentési logika futása közben (a folyamat nem érte el a 100%-ot), b) a memóriakiíratási fájl károsodása (a hibakereső struktúrákra panaszkodott), c) memória.dmp kiírás írása nulla hosszúságú fájlok. Ezért annak ellenére, hogy a rendszer már teljesen leállt a memóriadump létrehozásakor, és csak a vészhelyzeti kód fut, a hibás hardver kivétel nélkül bármilyen logikát módosíthat a működés bármely szakaszában.
Hagyományosan a kezdeti szakaszban a lapfájlhoz hozzárendelt lemezblokkokat használják a Windows memóriakiíratásának mentésére. Ezután a kék képernyő megjelenése és az újraindítás után az adatok átkerülnek ide külön fájl, majd a fájl átnevezése a kiíratási típustól függő minta szerint történik. Kezdve azonban Windows verziók Vista esetén ez az állapot megváltoztatható, a felhasználónak lehetősége van a kiválasztott kiíratást swap fájl részvétele nélkül elmenteni, a meghibásodásról szóló információkat ideiglenes fájlba helyezve. Erre azért került sor, hogy kiküszöböljük a lapozófájl méretének és pozíciójának helytelen beállításaiból adódó konfigurációs hibákat, amelyek gyakran problémákhoz vezettek a memóriakiírás mentése során.
Nézzük meg, hogy a Windows operációs rendszer milyen típusú dumpokat tesz lehetővé:

  • Folyamat (alkalmazás) memória kiíratása;
  • Kernel memória kiíratása;
  • Teljes memóriakiíratás (a rendszer fizikai memóriájának rendelkezésre álló részének kiíratása).

Minden lerakóhely két fő kategóriába sorolható:

  • Összeomlási kiíratások a történt kivétellel kapcsolatos információkkal. Általában ben készült automatikus üzemmód, amikor kezeletlen kivétel történik az alkalmazásban/kernelben, és ennek megfelelően a rendszer (beépített) hibakeresője meghívható. Ebben az esetben a kivétellel kapcsolatos információk egy kiíratóban kerülnek rögzítésre, ami megkönnyíti a kivétel típusának és helyének meghatározását a későbbi elemzés során.
  • Kivétel nélküli összeomlási dump információk. Általában a felhasználó manuálisan hozza létre, amikor egyszerűen egy pillanatképet kell létrehoznia egy folyamatról a későbbi elemzéshez. Ez az elemzés nem a kivétel típusának meghatározását jelenti, hiszen kivétel nem történt, hanem egy teljesen más jellegű elemzést, például egy folyamat adatszerkezetének tanulmányozását stb.

Kernel memória dump konfigurációja

Be kell jelentkeznie az adminisztrációs területen fiókot az ebben a részben leírt lépések végrehajtásához.

Ugorjunk közvetlenül a Windows összeomlási dump beállításainak konfigurálására. Először is a rendszertulajdonságok ablakba kell lépnünk a következő módok egyikével:

  1. Kattintson jobb gombbal a "Sajátgép" ikonra - "Tulajdonságok" - "Speciális rendszerbeállítások" - "Speciális".
  2. "Start" gomb - "Vezérlőpult" - "Rendszer" - "Speciális rendszerbeállítások" - "Speciális".
  3. Billentyűkombináció "Windows" + "Szünet" - "Speciális rendszerbeállítások" - "Speciális".

  4. vezérlőrendszer.cpl,3
  5. Futtassa a parancssorban (cmd):
    SystemPropertiesAdvanced

A leírt műveletek eredménye a "Rendszer tulajdonságai" ablak megnyitása és a "Speciális" fül kiválasztása:

Ezután a „Boot and Recovery” részben kattintunk, válassza az „Opciók” lehetőséget, és nyisson meg egy új „Letöltés és helyreállítás” nevű ablakot:

Az összes összeomlási kiíratási paraméter egy "Rendszerhiba" nevű paraméterblokkban van csoportosítva. Ebben a blokkban a következő paramétereket állíthatjuk be:

  1. Események írása a rendszernaplóba.
  2. Hajtsa végre az automatikus újraindítást.
  3. Hibakeresési információk rögzítése.
  4. Dump fájl.
  5. Cseréljen le egy meglévő dump fájlt.

Amint láthatja, a listában szereplő paraméterek közül sok meglehetősen triviális és könnyen érthető. A "Dump File" paramétert azonban szeretném részletesebben kifejteni. A paraméter legördülő listaként jelenik meg, és négy lehetséges értéke van:

Kis memória dump

A kis memóriakiírat (minidump) egy olyan fájl, amely a legkisebb mennyiségű információt tartalmazza a hibáról. Az összes lehetséges memóriakiíratás közül a legkisebb. A nyilvánvaló hátrányok ellenére a minidumpokat gyakran használják információként a meghibásodásról, amelyet harmadik féltől származó illesztőprogram-szállítóknak kell továbbítaniuk későbbi tanulmányozás céljából.
Összetett:

  • Hibaüzenet.
  • Hiba érték.
  • Hibaparaméterek.
  • A processzorkörnyezet (PRCB), amelyen a hiba történt.
  • Folyamatinformációk és kernelkörnyezet (EPROCESS) az összeomlási folyamathoz és annak összes szálához.
  • Az összeomlást okozó szál feldolgozási információi és kernelkörnyezete (ETHREAD).
  • A rendszermag módú verem az összeomlást okozó szálhoz.
  • A betöltött illesztőprogramok listája.

Szállás: %SystemRoot%\Minidump\MMDDYY-XXXXX-NN.dmp. Ahol MMDDYY a hónap, nap és év, NN a kirakás sorozatszáma.
Kötet: A méret az operációs rendszer bitségétől függ: a lapozófájlban (vagy a DedicatedDumpFile-ban megadott fájlban) mindössze 128 kilobájt szükséges egy 32 biteshez, és 256 kilobájt egy 64 bites operációs rendszerhez. Mivel ilyen kicsi méretet nem tudunk beállítani, ezért felkerekítjük 1 megabájtra.

Kernel memória kiíratása

Az ilyen típusú kiíratások az összeomlás idején az összes kernelmemória másolatát tartalmazzák.
Összetett:

  • A futó folyamatok listája.
  • Az aktuális szál állapota.
  • Az összeomlás idején a fizikai memóriában található kernel módú memórialapok: kernel módú illesztőprogram-memória és kernel módú programmemória.
  • Hardverfüggő szintű (HAL) memória.
  • A betöltött illesztőprogramok listája.

A kernel memóriakiírásából hiányoznak a le nem osztott memórialapok és a felhasználói mód oldalai. Egyetértünk, nem valószínű, hogy a felhasználói módú folyamatoldalak érdekelnének bennünket egy rendszerhiba (BugCheck) során, mivel a rendszerhibát általában a kernel mód kódja kezdeményezi.

Méret: Az operációs rendszer által lefoglalt kernelcímtér méretétől és a kernelmódú illesztőprogramok számától függően változik. Általában a fizikai memória körülbelül egyharmada szükséges a swap fájlban (vagy a DedicatedDumpFile fájlban megadott fájlban). Változó lehet.

Teljes memória kiíratása

A teljes memória kiíratása tartalmazza az összes fizikai memória (RAM) másolatát az összeomlás idején. Ennek megfelelően a rendszermemória teljes tartalma bekerül a fájlba. Ez egyrészt előny, másrészt jelentős hátrány, mivel a mérete jelentős lehet egyes, nagy mennyiségű RAM-mal rendelkező szervereken.
Összetett:

  • A "látható" fizikai memória összes oldala. Ez szinte a teljes rendszermemória, kivéve a hardver által használt területeket: BIOS, PCI-terület stb.
  • Adatok azokból a folyamatokból, amelyek a rendszeren futottak a hiba idején.
  • A fizikai memória olyan oldalai, amelyek nincsenek leképezve a virtuális címtérre, de segíthetnek a hiba okának kivizsgálásában.

Alapértelmezés szerint a teljes memóriakép nem tartalmazza a BIOS által használt fizikai memóriaterületeket.
Hely: %SystemRoot%\MEMORY.DMP . Az előző kiíratást felülírja.
Kötet: A lapozófájl (vagy a DedicatedDumpFile-ban megadott fájl) a fizikai memória méretével és 257 megabájttal megegyező kötetet igényel (ez a 257 MB egy bizonyos fejlécre + illesztőprogram-adatokra van osztva). Valójában egyes operációs rendszerekben a lapozófájl alsó küszöbértéke pontosan beállítható a fizikai memória méretének értékére.

Automatikus memória dump

Windows 8 óta/ Windows Server 2012-ben egy új "Automatic Memory Dump" nevű kiíratási típust vezettek be a rendszerbe, amely alapértelmezett típusként van beállítva. Ebben az esetben a rendszer maga dönti el, hogy egy adott hiba esetén melyik memóriakiírást rögzítse. Ezenkívül a választás logikája számos kritériumtól függ, beleértve az operációs rendszer „összeomlásának” gyakoriságát.

A Windows memóriakiíratási konfigurációjának módosítása után előfordulhat, hogy újra kell indítania a számítógépet.

Rendszerleíró adatbázis beállításai

A rendszerleíró adatbázis szakasz, amely meghatározza az összeomlási dump paramétereit:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

Paraméterek:

Paraméter Írja be Leírás
Automatikus újraindítás REG_DWORD Automatikus újraindítás engedélyezése/letiltása BSOD előfordulásakor.
CrashDumpEnabled REG_DWORD A létrehozandó dump típusa.
  • 0 - ne hozzon létre memóriakiíratást;
  • 1 - teljes memóriakép;
  • 2 - kernel memória kiíratása;
  • 3 - kis memória dump;
DumpFile REG_EXPAND_SZ A kernel memória kiíratásának és a teljes memória kiíratásának elérési útja és neve.
DumpFilters REG_MULTI_SZ Illesztőprogram-szűrő a memóriakiíratási illesztőprogram-veremben. Lehetővé teszi új funkciók hozzáadását az összeomlási dumpok létrehozásának szakaszában. Például a dump tartalmának titkosítása. Az érték megváltoztatása nem javasolt.
LogEvent REG_DWORD Esemény rögzítése a rendszernaplóban.
MinidumpDir REG_EZPAND_SZ A kis memóriakép elérési útja és neve.
MinidumpsCount REG_DWORD A kis memóriakiíratok maximális száma. Ha túllépi, a régebbi verziók felülíródnak.
Átír REG_DWORD Cseréljen le egy meglévő dump fájlt. Csak a kernel memória kiíratásához és a teljes memória kiírásához.
IgnorePagefileSize REG_DWORD Figyelmen kívül hagyja szabványos fájl csere, mint egy memóriakiírat ideiglenes (köztes) tárolásának helye. Azt jelzi, hogy a memóriakiírást külön fájlba kell írni. A DedicatedDumpFile opcióval együtt használatos.
DedikáltDumpFile REG_EZPAND_SZ A memóriakiírás rögzítéséhez szükséges ideiglenes alternatív fájl elérési útja és neve. A második lépésben az adatok továbbra is átkerülnek a DumpFile/MinidumpDir mappába.

Memóriakiírás manuális létrehozása

Fentebb leírtuk a beállításokat automatikus létrehozás rendszerösszeomlás kiírja kritikus hiba esetén, vagyis a kernelkódban lévő kezeletlen kivétel esetén. De be igazi életet, az operációs rendszer összeomlása mellett vannak olyan helyzetek, amikor egy adott időpontban rendszermemória-kiíratást kell szerezni. Mi a teendő ebben az esetben? Vannak módszerek az összes fizikai memória pillanatképének lekérésére, például a .dump paranccsal a WinDbg/LiveKD hibakeresőben. A LiveKD egy olyan program, amely lehetővé teszi a Kd kernel hibakereső futtatását egy futó rendszeren helyi módban. A WinDbg hibakereső is rendelkezik hasonló funkcióval. Az on-the-fly dump módszer azonban nem pontos, mert az ebben az esetben generált dump "inkonzisztens", mivel időbe telik a kiírás létrehozása, és a kernel módú hibakereső használata esetén a rendszer tovább fut és változások a memóriaoldalakon.

Minden Windows rendszer észlelésekor végzetes hiba készítsen összeomlási kiírást (pillanatfelvételt) a RAM tartalmáról, és mentse el merevlemez. Háromféle memóriakiírás létezik:

Full memory dump – a RAM teljes tartalmát menti. A kép mérete megegyezik a RAM méretével + 1 MB (fejléc). Nagyon ritkán használják, mivel a nagy mennyiségű memóriával rendelkező rendszereken a dump mérete túl nagy lesz.

Kernel memória dump – csak a kernel móddal kapcsolatos RAM-információkat menti el. A felhasználói mód információi nem kerülnek mentésre, mert nem tartalmaznak információt a rendszer összeomlásának okáról. A kiíratási fájl mérete a RAM méretétől függ, és 50 MB-tól (128 MB RAM-mal rendelkező rendszerek esetén) 800 MB-ig (8 GB RAM-mal rendelkező rendszerek esetén) változhat.

Kis memória dump (mini dump) - meglehetősen kis mennyiségű információt tartalmaz: hibakódot paraméterekkel, a RAM-ba betöltött illesztőprogramok listáját a rendszer összeomlása idején stb., de ez az információ elegendő a hibás illesztőprogram azonosításához . Az ilyen típusú dump másik előnye a kis fájlméret.

Rendszerbeállítás

Ahhoz, hogy azonosítsuk az illesztőprogramot, amely ezt okozta, elég lesz egy kis memóriakiírást használnunk. Ahhoz, hogy a rendszer összeomlás közben mentse a mini dump-et, a következő lépéseket kell végrehajtania:

Windows Xp esetén Windows 7 rendszerhez
  1. A számítógépem Tulajdonságok
  2. Menjen a lapra Ezenkívül;
  3. Paraméterek;
  4. A mezőn Hibakeresési információk írása válasszon Kis memóriakép (64 KB).
  1. Kattintson a jobb gombbal az ikonra Számítógép-tól helyi menü válassza ki Tulajdonságok(vagy a Win+Pause billentyűkombináció);
  2. A bal oldali menüben kattintson az elemre Speciális rendszerbeállítások;
  3. Menjen a lapra Ezenkívül;
  4. A Letöltés és helyreállítás mezőben kattintson a gombra Paraméterek;
  5. A mezőn Hibakeresési információk írása válasszon Kis memória kiíratása (128 KB).

Az összes manipuláció elvégzése után minden BSoD után egy .dmp kiterjesztésű fájl kerül mentésre a C:\WINDOWS\Minidump mappába. Azt tanácsolom, hogy olvassa el a "" anyagot. Bejelölheti a „ Cserélje le a meglévő dump fájlt" Ebben az esetben minden új összeomlási dump a régi fölé kerül. Nem javaslom ennek az opciónak az engedélyezését.

Összeomlási dump elemzése a BlueScreenView segítségével

Tehát a Blue Screen of Death megjelenése után a rendszer elmentett egy új összeomlási memória kiíratást. A dump elemzéséhez a BlueScreenView programot javaslom. Ingyenesen letölthető. A program meglehetősen kényelmes és intuitív felülettel rendelkezik. A telepítés után először meg kell adnia a memóriakiíratok tárolási helyét a rendszeren. Ehhez lépjen a „menüpontba” Opciók” és válassza a „ FejlettOpciók" Válassza ki a „ rádiógombot Terhelés-tólakövetkezőMini Dumpmappát” és adja meg a mappát, amelyben a kiíratások tárolódnak. Ha a fájlok a C:\WINDOWS\Minidump mappában vannak, kattintson a „ Alapértelmezett" Kattintson az OK gombra, és lépjen a program felületére.

A program három fő blokkból áll:

  1. Főmenü blokk és vezérlőpanel;
  2. Crash dump list block;
  3. A kiválasztott paraméterektől függően a következőket tartalmazhatja:
  • a RAM-ban lévő összes illesztőprogram listája a kék képernyő megjelenése előtt (alapértelmezés szerint);
  • a RAM-veremben található illesztőprogramok listája;
  • BSoD képernyőkép;
  • és egyéb értékek, amelyeket nem fogunk használni.

A memóriakiíratási lista blokkban (az ábrán 2-es számmal jelölve) válassza ki a minket érdeklő kiíratást, és nézze meg a RAM-ba betöltött illesztőprogramok listáját (az ábrán 3-as számmal jelölve). Rózsaszín színű a memóriaveremben lévő illesztőprogramok színesek. Ők a BSoD okai. Ezután lépjen az illesztőprogram főmenüjébe, és határozza meg, hogy melyik eszközhöz vagy programhoz tartoznak. Először is figyelj oda rendszerfájlokat, mert a rendszerfájlok minden esetben a RAM-ba töltődnek be. Könnyen belátható, hogy a képen látható hibás illesztőprogram a myfault.sys. Azt mondom, hogy ezt a programot kifejezetten azért indították el, hogy Stop hibát okozzon. A hibás illesztőprogram azonosítása után frissítenie kell, vagy el kell távolítania a rendszerből.

Annak érdekében, hogy a program megjelenítse a memóriaveremben található illesztőprogramok listáját BSoD előfordulásakor, el kell mennie a „menüpontba Opciók"kattints a menüre" AlacsonyabbPanelMód” és válassza a „ CsakDriversTaláltInVerem” (vagy nyomja meg az F7 billentyűt), és a hiba képernyőképének megjelenítéséhez válassza a „ KékKépernyőbeXPStílus” (F8). Az összes illesztőprogram listájához való visszatéréshez válassza ki a „ MindenDrivers” (F6).

Jó napot, kedves kollégák és a blogoldal olvasói. Ma szeretném elmondani, hogyan elemezzük a szemétlerakást windows memória 10 Redstone. Ez a legtöbb esetben megtörténik, amikor a kék képernyő hibával meghal, ami után a számítógép újraindul. ÉS ezt az elemzést segít megérteni a hiba okát.

A Windows 10 memóriakiíratásának beállítása

Tehát mi az a memória kiíratása a Windows 10 Redstone operációs rendszerben. Fentebb leírtam neked, nagyon gyakori ok amelyben megjelenik egy rendszermemória dump, és ezek a halál kék képernyői. Megjelenésük okai nagyon kiterjedtek:

  • Alkalmazás-kompatibilitás
  • Driver inkompatibilitás
  • Új Windows frissítések
  • Az eszközök nem kompatibilisek

Ez csak egy kis általánosított lista, mivel rengeteg hibakód van a kék képernyőkről, a legfrissebbeket adom.

A mi feladatunk, hogy ezeket a fájlokat diagnosztikai célból megtaláljuk és értelmezni tudjuk, hogy információt szerezzünk a problémáról.

Hol van konfigurálva a Windows 10 összeomlási kiíratása?

Először nézzük meg, hol van a Windows 10 összeomlási memóriakiíratását okozó beállítás. Kattintson a jobb gombbal a Windows 10 start gombjára, és válassza a Rendszer lehetőséget a helyi menüből.

A megnyíló Rendszer ablakban Ön a bal oldalon van felső sarok válassza a Speciális rendszerbeállítások lehetőséget.

Itt van konfigurálva a Windows 10 memóriakiíratása. Kattintson a Beállítások elemre a Boot and Recovery menüben.

A Windows 10 memóriakiíratásának beállításai közül a következőket szeretném megjegyezni:

  • Esemény rögzítése a rendszernaplóban > itt a kék képernyővel kapcsolatos információk hozzáadódnak az operációs rendszer naplóihoz.
  • Hajtsa végre az automatikus újraindítást > a munka folytatásához egy hiba után
  • A hibakeresési információk rögzítése > lehetővé teszi a dump fájl típusának kiválasztását, erről alább olvashat bővebben.
  • Cserélje ki a meglévő dump fájlt, ez egy hasznos jelölőnégyzet, mivel ezek a kiíratások több tíz gigabájtot is nyomhatnak, ami nagyon kritikus a kis SSD meghajtók számára.

A memóriakiíratok típusai

Nézzük meg a különbségeket a hibakeresési információk rögzítésének lehetőségei között

  • Kis memória kiíratása 256 KB: A kis memóriaképfájlok a következő információkat tartalmazzák:

– üzenet végzetes hibáról, annak paramétereiről és egyéb adatairól;

– a betöltött illesztőprogramok listája;

- processzor kontextus ( PRCB) amelyen a hiba bekövetkezett;

EPROCESS) a hibát okozó folyamathoz;

- feldolgozni az információkat és a kernel kontextust ( SZÁL) a hibát okozó szálhoz;

– Kernel módú hívási verem a hibát okozó szálhoz.

Akkor használják, ha nagyon kevés van lemezterület a helyi lemezen. Ezen keresztül áldozunk hasznos információkat, ami nem biztos, hogy elegendő a kék képernyő diagnosztizálásához.

A mini dump a C:\Windows\Minidump útvonalon tárolódik

  • Kernel memory dump > csak kernelmemóriát rögzít. A számítógép fizikai memóriájának méretétől függően ebben az esetben a lapozófájlhoz 50 és 800 között van szükség. MB vagy a számítógép fizikai memóriájának egyharmada a rendszerindító köteten.
  • Full memory dump > nos, a névből minden kiderül. Teljesen mindent leír, ezt maximális információ körülbelül egy kék képernyő, száz százalékos diagnózist ad a problémára.

A következő helyen található: C:\Windows\Memory.dmp

  • Active memory dump > ide kerül a host gép aktív memóriája, ez a funkció inkább szerverplatformokra való, mivel ezek használhatók virtualizációra, és hogy a virtuális gépekről szóló információk ne kerüljenek a dumpba, ezt az opciót találták ki.

Kritikus meghibásodás esetén a Windows operációs rendszer összeomlik, és a Halál kék képernyőjét (BSOD) jelzi. A RAM tartalma és a fellépő hibával kapcsolatos minden információ a lapozófájlba kerül. Legközelebb a Windows rendszerindításaösszeomlási dump jön létre a mentett adatok alapján hibakeresési információkkal. Kritikus hibabejegyzés jön létre a rendszereseménynaplóban.

Figyelem!Összeomlási dump nem jön létre, ha a lemez alrendszer vagy kritikus hiba a Windows rendszerindításának kezdeti szakaszában merült fel.

A Windows összeomlási dumpjainak típusai

Egy jelenlegi műtő példájával Windows rendszerek 10 (Windows Server 2016) nézzük meg a rendszer által létrehozható memóriakiíratok fő típusait:

  • Mini memória dump(256 KB). Ez a fájltípus minimális mennyiségű információt tartalmaz. Csak a BSOD hibaüzenetet tartalmazza, információkat az illesztőprogramokról, az összeomlás idején aktív folyamatokról, valamint arról, hogy melyik folyamat vagy kernelszál okozta az összeomlást.
  • Kernel memória kiíratása. Általában kis méretű – a fizikai memória méretének egyharmada. A kernel memória kiíratása részletesebb, mint a mini dump. Információkat tartalmaz az illesztőprogramokról és a kernel módú programokról, tartalmazza a lefoglalt memóriát Windows kernelés hardver absztrakciós réteg (HAL), valamint az illesztőprogramok és más kernel módú programok számára lefoglalt memória.
  • Teljes memória kiíratása. A legnagyobb méretű, és a rendszer RAM-jával plusz 1 MB memóriát igényel, szükséges Windows ennek a fájlnak a létrehozásához.
  • Automatikus memória dump. Információ tekintetében a kernel memória kiíratásának felel meg. Az egyetlen különbség az, hogy mennyi helyet foglal el a dump fájl létrehozásához. Ez a fájltípus nem létezett a Windows 7 rendszerben. A Windows 8 rendszerben került hozzáadásra.
  • Aktív memória kiíratása. Ez a típus kiküszöböli azokat az elemeket, amelyek nem tudják meghatározni a rendszerhiba okát. Ez hozzáadásra került a Windows 10 rendszerhez, és különösen hasznos, ha használja virtuális gép, vagy ha rendszere Hyper-V gazdagép.

Hogyan lehet engedélyezni a memória dumpolást a Windows rendszerben?

A Win+Pause használatával nyissa meg a rendszerbeállítások ablakát, válassza a " Speciális rendszerbeállítások"(Speciális rendszerbeállítások). a " Továbbá" (Speciális), "" szakasz (Indítás és helyreállítás) kattintson a " gombra Opciók"(Beállítások). A megnyíló ablakban konfigurálja a rendszer meghibásodása esetén végrehajtandó műveleteket. Ellenőrizze a " Események naplózása a rendszernaplóba" (Esemény írása a rendszernaplóba), válassza ki a rendszer összeomlásakor létrejövő kiíratás típusát. Ha a jelölőnégyzetben " Cserélje le a meglévő dump fájlt"(Bármely meglévő fájl felülírása) jelölje be a négyzetet, a fájl minden hiba esetén felülírásra kerül. Jobb, ha törli a jelölést ebből a négyzetből, akkor több információhoz jut az elemzéshez. Kapcsolja ki az Automatikus újraindítást is.

A legtöbb esetben egy kis memóriakép elegendő a BSOD okának elemzéséhez.

Most, amikor BSOD történik, elemezheti a dump fájlt, és megtalálhatja a hiba okát. A mini dump alapértelmezés szerint a %systemroot%\minidump mappába kerül mentésre. A dump fájl elemzéséhez a program használatát javaslom WinDBG(Microsoft Kernel Debugger).

A WinDBG telepítése Windows rendszeren

Hasznosság WinDBG tartalmazza a " SDK Windows 10 rendszerhez"(Windows 10 SDK). .

A fájl neve winsdksetup.exe, mérete 1,3 MB.

Futtassa a telepítést, és válassza ki, hogy pontosan mit szeretne tenni – telepítse a csomagot erre a számítógépre, vagy töltse le más számítógépekre való telepítéshez. Telepítsük a csomagot a helyi számítógépre.

Telepítheti a teljes csomagot, de csak a hibakereső eszköz telepítéséhez válassza a lehetőséget Hibakereső eszközök Windowshoz.

A telepítés után a WinDBG parancsikonok a start menüben találhatók.

.dmp fájlok társításának beállítása a WinDBG-vel

A dump fájlok egyszerű kattintással történő megnyitásához rendelje hozzá a .dmp kiterjesztést a WinDBG segédprogramhoz.

  1. Nyitott parancssor rendszergazdaként, és futtassa a parancsokat egy 64 bites rendszerhez: cd C:\Program Files (x86)\Windows Kits\10\Debuggers\x64
    windbg.exe –IA
    32 bites rendszerhez:
    C:\Program Files (x86)\Windows Kits\10\Debuggers\x86
    windbg.exe –IA
  2. Ennek eredményeként a .DMP, .HDMP, .MDMP, .KDMP, .WEW fájltípusok hozzá lesznek rendelve a WinDBG-hez.

Hibakeresési szimbólumszerver beállítása a WinDBG-ben

A hibakereső szimbólumok (hibakereső szimbólumok vagy szimbólumfájlok) olyan adatblokkok, amelyek a programfordítás során generálódnak futtatható fájl. Az ilyen adatblokkok változónevekről, úgynevezett függvényekről, könyvtárakról stb. tartalmaznak információkat. Ezekre az adatokra nincs szükség a program futtatásakor, de a hibakeresés során hasznosak. A Microsoft összetevői a Microsoft Symbol Serveren keresztül terjesztett szimbólumokkal vannak összeállítva.

Konfigurálja a WinDBG-t Microsoft használat Szimbólum szerver:

  • Nyissa meg a WinDBG-t;
  • Menjen a menübe Fájl –> Szimbólum fájl elérési útja;
  • Írjon egy sort, amely tartalmazza a hibakereső szimbólumok Microsoft webhelyről történő letöltésének URL-címét és a gyorsítótár mentési mappáját: SRV*E:\Sym_WinDBG*http://msdl.microsoft.com/download/symbols A példában a gyorsítótár letöltése megtörtént. az E:\Sym_WinDBG mappába, bármelyiket jelezheti.
  • Ne felejtse el menteni a menü módosításait Fájl–>Munkaterület mentése;

A WinDBG szimbólumokat keres a helyi mappában, és ha nem találja meg benne a szükséges szimbólumokat, automatikusan letölti a szimbólumokat a megadott webhelyről. Ha saját szimbólummappát szeretne hozzáadni, ezt a következőképpen teheti meg:

SRV*E:\Sym_WinDBG*http://msdl.microsoft.com/download/symbols;c:\Symbols

Ha nincs internetkapcsolata, először töltse le a szimbólumcsomagot a Windows Szimbólumcsomagok erőforrásból.

A WinDBG összeomlási dump elemzése

A WinDBG hibakereső megnyitja a dump fájlt, és letölti a hibakereséshez szükséges szimbólumokat egy helyi mappából vagy az internetről. A folyamat során nem használhatja a WinDBG-t. Az ablak alján (a hibakereső parancssorban) megjelenik az üzenet Debugee nincs csatlakoztatva.

A parancsok az ablak alján található parancssorba kerülnek.

A legfontosabb dolog, amire figyelni kell, a hibakód, amelyet mindig hexadecimálisan jeleznek, és ennek alakja van 0xXXXXXXXXX(az egyik opcióban jelezve - STOP: , 2019.02.07. 0008F, 0x8F). Példánkban a hibakód 0x139.

A hibakereső felajánlja az!analyze -v parancs futtatását, csak vigye az egeret a hivatkozásra, és kattintson. Mire való ez a parancs?

  • Előzetes memóriakiíratási elemzést végez, és biztosítja részletes információkat az elemzés megkezdéséhez.
  • Ez a parancs megjeleníti a STOP kódot és a hiba szimbolikus nevét.
  • Az összeomláshoz vezető parancshívások halmazát mutatja.
  • Ezen kívül itt jelennek meg az IP-címek, a folyamat- és regiszterhibák.
  • A csapat kész javaslatokat tud adni a probléma megoldására.

A főbb pontok, amelyekre figyelni kell az!analyze –v parancs végrehajtása utáni elemzéskor (a felsorolás hiányos).

1: kd> !analyze -v


* *
* Hibaellenőrzési elemzés *
* *
*****************************************************************************
A STOP hiba szimbolikus neve (BugCheck)
KERNEL_SECURITY_CHECK_FAILURE (139)
A hiba leírása (Egy kernelkomponens megsértett egy kritikus adatszerkezetet. Ez a sérülés lehetővé teheti, hogy a támadó átvegye az irányítást a gép felett):

Egy kernel-összetevő megrongált egy kritikus adatszerkezetet. A korrupció potenciálisan lehetővé teheti egy rosszindulatú felhasználó számára, hogy átvegye az irányítást a gép felett.
Hiba argumentumok:

Érvek:
Arg1: 0000000000000003, A LIST_ENTRY megsérült (azaz dupla eltávolítás).
Arg2: ffffd0003a20d5d0, A hibaellenőrzést okozó kivétel csapdakeretének címe
Arg3: ffffd0003a20d528, a hibaellenőrzést okozó kivétel kivételrekordjának címe
Arg4: 000000000000000, fenntartva
Hibakeresés részletei:
------------------

A számláló azt mutatja, hogy a rendszer hányszor omlott össze hasonló hibával:

CUSTOMER_CRASH_COUNT: 1

DEFAULT_BUCKET_ID: FAIL_FAST_CORRUPT_LIST_ENTRY

STOP hibakód rövidített formátumban:

BUGCHECK_STR: 0x139

A folyamat, amelynek során a hiba bekövetkezett (nem feltétlenül a hiba oka, csak a hiba időpontjában ez a folyamat futott a memóriában):

PROCESS_NAME: sqlservr.exe

Hibakód leírása: A rendszer verempuffer túlcsordulást észlelt ebben az alkalmazásban, ami lehetővé teheti a támadó számára, hogy átvegye az alkalmazás irányítását.

ERROR_CODE: (NTSTATUS) 0xc0000409 – A rendszer egy veremalapú puffer túlcsordulását észlelte ebben az alkalmazásban. Ez a túllépés lehetővé teheti egy rosszindulatú felhasználó számára, hogy átvegye az irányítást az alkalmazás felett.
EXCEPTION_CODE: (NTSTATUS) 0xc0000409 – A rendszer egy veremalapú puffer túlcsordulását észlelte ebben az alkalmazásban. Ez a túllépés lehetővé teheti egy rosszindulatú felhasználó számára, hogy átvegye az irányítást az alkalmazás felett.

Utolsó hívás a veremben:

LAST_CONTROL_TRANSFER: fffff8040117d6a9-ről fffff8040116b0a0-ra

Verem hívása a hiba idején:

STACK_TEXT:
ffffd000`3a20d2a8 fffff804`0117d6a9: 00000000`00000139 00000000`00000003 ffffd000`3a20d5d0 ffffd000`B28:20nt!
ffffd000`3a20d2b0 fffff804`0117da50: ffffe000`f3ab9080 ffffe000`fc37e001 ffffd000`3a20d5d0 fffff804`0116e2a2: CheckiisBpatch nt!
FFFD000`3A20D3F0 FFFFF804`0117C150: 0000000000 000000 000000 00000000 000000 00000000 000000`00000000fa:failxd.pat
ffffd000`3a20d5d0 fffff804`01199482: ffffc000`701ba270 ffffc000`00000001 000000ea`73f68040 fffff804`0000006fffff804`0000006f90
ffffd000`3a20d760 fffff804`014a455d: 00000000`00000001 ffffd000`3a20d941 ffffe000`fcacb000 ffffd000`3a20d951: ?? ::FNODOBFM::`karakterlánc"+0x17252
ffffd000`3a20d8c0 fffff804`013a34ac: 00000000`00000004 00000000`00000000 ffffd000`3a20d9d8 ffffe001`0a34c60
ffffd000`3a20d990 fffff804`0117d313: ffffffff`ffffffe 00000000`00000000 00000000`00000000 000000eb`a0cf1380:64Fintle+0txrite
ffffd000`3a20da90 00007ffb`475307da: 00000000`00000000 00000000`00000000 00000000`00000000 000000000 000000000000000000 13
000000ee`f25ed2b8 00000000`00000000: 00000000`00000000 00000000`00000000 07da

A kód szakasz, ahol a hiba történt:

FOLLOWUP_IP:
nt!KiFastFailDispatch+d0
fffff804`0117da50 c644242000 mov byte ptr ,0
FAULT_INSTR_CODE: 202444c6
SYMBOL_STACK_INDEX: 2
SYMBOL_NAME: nt!KiFastFailDispatch+d0
FOLLOWUP_NAME: Géptulajdonos

A modul neve a kernel objektumtáblájában. Ha az analizátor képes volt észlelni problémás sofőr, a név megjelenik a MODULE_NAME és az IMAGE_NAME mezőben:

MODULE_NAME:nt
IMAGE_NAME: ntkrnlmp.exe

1: kd> lmvm nt
Böngésszen a teljes modullistában
Betöltött szimbólum képfájl: ntkrnlmp.exe
Leképezett memóriaképfájl: C:\ProgramData\dbg\sym\ntoskrnl.exe\5A9A2147787000\ntoskrnl.exe
A kép elérési útja: ntkrnlmp.exe
A kép neve: ntkrnlmp.exe
Belső név: ntkrnlmp.exe
Eredeti fájlnév: ntkrnlmp.exe
TermékVerzió: 6.3.9600.18946
Fájlverzió: 6.3.9600.18946 (winblue_ltsb_escrow.180302-1800)

A megadott példában az elemzés az ntkrnlmp.exe kernelfájlra mutatott. Ha a memóriakiíratási elemzés egy rendszer-illesztőprogramra (például win32k.sys) vagy egy kernelfájlra mutat (mint az ntkrnlmp.exe példánkban), akkor az valószínűleg ezt a fájlt nem a probléma oka. Nagyon gyakran kiderül, hogy a probléma az eszközillesztőben van, BIOS beállítások vagy a berendezés meghibásodása.

Ha azt látja, hogy a BSOD-t egy harmadik féltől származó illesztőprogram okozta, akkor annak neve megjelenik a MODULE_NAME és az IMAGE_NAME értékekben.

Például:

A kép elérési útja: \SystemRoot\system32\drivers\cmudaxp.sys
Kép neve: cmudaxp.sys

Nyissa meg az illesztőprogram fájl tulajdonságait, és ellenőrizze a verzióját. A legtöbb esetben az illesztőprogramokkal kapcsolatos probléma megoldódik azok frissítésével.



Kapcsolódó kiadványok