Magbukas ng Windows 7 dump Paano gumamit ng memory dump upang matukoy ang driver na sanhi ng BSOD. Paano i-configure ang paglikha ng memory dump

Kumusta mga kaibigan, ngayon ay titingnan namin ang isang kawili-wiling paksa na makakatulong sa iyo sa hinaharap kung kailan asul na screen kamatayan (BSoD).

Tulad ko, maraming iba pang mga gumagamit ang kailangang obserbahan ang hitsura ng isang screen na may asul na background kung saan may nakasulat (puti sa asul). Ang hindi pangkaraniwang bagay na ito ay nagpapahiwatig ng isang kritikal na problema, parehong sa software, halimbawa, isang salungatan sa driver, at sa isang pisikal na malfunction ng ilang bahagi ng computer.

Kamakailan ay nagsimula akong muling kumuha ng asul na screen sa Windows 10, ngunit mabilis kong inalis ito at sasabihin ko sa iyo ang tungkol dito sa lalong madaling panahon.

Gusto mo bang manood ng mga pelikula online sa magandang kalidad? Pagkatapos ay sundin ang link.

Kaya, hindi alam ng karamihan sa mga gumagamit na maaaring suriin ang BSoD upang maunawaan ang mga problema sa ibang pagkakataon kritikal na pagkakamali. Para sa mga ganitong kaso, lumilikha ang Windows sa disk mga espesyal na file- memory dumps, susuriin namin ang mga ito.

May tatlong uri ng memory dump:

Buong memory dump - ang function na ito ay nagbibigay-daan sa iyo upang ganap na i-save ang mga nilalaman ng RAM. Ito ay bihirang ginagamit, dahil isipin na mayroon kang 32 GB ng RAM, na may isang buong dump, ang lahat ng volume na ito ay maiimbak sa disk.

Kernel dump – nagse-save ng impormasyon tungkol sa kernel mode.

Maliit na memory dump – nagse-save ng kaunting impormasyon ng error at na-load na mga bahagi na naroroon sa oras na nangyari ang malfunction ng system. Gagamitin namin ang ganitong uri ng dump dahil magbibigay ito sa amin ng sapat na impormasyon tungkol sa BSoD.

Magkaiba ang lokasyon ng maliit at buong dump, halimbawa, ang maliit na dump ay matatagpuan sa sumusunod na landas: %systemroot%minidump.

Narito ang buong dump: %systemroot%.

Upang pag-aralan ang memory dumps, mayroong iba't ibang programa, ngunit dalawa ang gagamitin namin. Ang una ay ang Microsoft Kernel Debuggers, gaya ng ipinahihiwatig ng pangalan, isang utility mula sa Microsoft. Maaari mong i-download ito mula sa opisyal na website. Ang pangalawang programa ay BlueScreenView, isang libreng programa, i-download mula dito.

Pagsusuri ng Memory Dump Gamit ang Microsoft Kernel Debuggers

Para sa iba't ibang bersyon system na kailangan mong i-download ang iyong sariling uri ng utility. Halimbawa, para sa 64-bit operating system, kailangan mo ng 64-bit na programa, para sa 32-bit na programa - isang 32-bit na bersyon.

Hindi lang iyon, kailangan mong i-download at i-install ang pakete ng mga simbolo ng pag-debug na kailangan para sa programa. Ito ay tinatawag na Debugging Symbols. Bawat bersyon ng paketeng ito ay nai-download din sa ilalim ng isang partikular na OS, alamin muna kung anong system ang mayroon ka, at pagkatapos ay i-download. Upang hindi mo na kailangang hanapin ang mga simbolo na ito kahit saan, narito ang link sa pag-download. Ang pag-install ay dapat gawin sa landas na ito: %systemroot%symbols.

Ngayon ay maaari mong ilunsad ang aming debugger, ang window kung saan magiging ganito ang hitsura:

Bago pag-aralan ang mga dump, iko-configure namin ang isang bagay sa utility. Una, kailangan naming sabihin sa programa kung saan namin na-install ang mga simbolo ng pag-debug. Upang gawin ito, mag-click sa pindutan ng "File" at piliin ang item na "Symbol File Path", pagkatapos ay ipahiwatig ang landas sa mga simbolo.

Binibigyang-daan ka ng program na kunin ang mga simbolo nang direkta mula sa web, kaya hindi mo na kailangang i-download ang mga ito (paumanhin sa mga na-download na ang mga ito). Kukunin ang mga ito mula sa isang server ng Microsoft, kaya ligtas ang lahat. Kaya, kailangan mong buksan muli ang "File", pagkatapos ay "Symbol File Path" at ipasok ang sumusunod na command:

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

Kaya, ipinahiwatig namin sa programa na ang mga simbolo ay dapat kunin mula sa network. Kapag nagawa na namin ito, i-click ang "File" at piliin ang "Save Workspace", pagkatapos ay i-click ang OK.

yun lang. Na-configure namin ang programa sa tamang paraan, ngayon nagsisimula kaming pag-aralan ang mga dump ng memorya. Sa programa, i-click ang button na "File", pagkatapos ay "Open Crash Dump" at piliin ang nais na file.

Sisimulan ng mga Kernel Debugger ang pagsusuri sa file at pagkatapos ay maglalabas ng resulta tungkol sa sanhi ng error.

Sa window na lilitaw, maaari kang magpasok ng mga utos. Kung papasok tayo!analyze –v makakakuha tayo ng karagdagang impormasyon.

Iyon lang ang kasama ng programang ito. Upang ihinto ang debugger, piliin ang "Debug" at ang item na "Ihinto ang Pag-debug."

Pagsusuri ng memory dump gamit ang BlueScreenView

Para sa pagsusuri iba't ibang pagkakamali at BSoD, ang programa ng BlueScreenView ay angkop din, na may isang simpleng interface, kaya dapat walang mga problema sa pag-master nito.

I-download ang program mula sa link sa itaas at i-install. Pagkatapos ilunsad ang utility, kailangan mong i-configure ito. Pumunta sa mga parameter: "Mga Setting" - " Mga karagdagang opsyon" Magbubukas ang isang maliit na window na may ilang mga item. Sa unang talata, kailangan mong ipahiwatig ang lokasyon ng mga dump ng memorya. Karaniwang matatagpuan ang mga ito sa landas C:WINDOWSMinidump. Pagkatapos ay i-click lamang ang pindutang "Default".

Ano ang makikita mo sa programa? Mayroon kaming mga item sa menu, bahagi ng window na may mga pangalan ng dump file, at ang pangalawang bahagi ng window - ang mga nilalaman ng memory dumps.

Tulad ng sinabi ko sa simula ng artikulo, ang mga dump ay maaaring mag-imbak ng mga driver, ang screenshot ng mismong "screen of death", at iba pa. kapaki-pakinabang na impormasyon, na maaaring maging kapaki-pakinabang sa atin.

Kaya, sa unang bahagi ng window, kung nasaan ang mga dump file, piliin ang memory dump na kailangan namin. Sa susunod na bahagi ng window ay tinitingnan namin ang mga nilalaman. Ang mga driver na matatagpuan sa memory stack ay minarkahan ng mapula-pula na kulay. Ang mga ito ay tiyak na sanhi ng asul na screen ng kamatayan.

Sa Internet mahahanap mo ang lahat tungkol sa error code at driver na maaaring sisihin para sa BSoD. Upang gawin ito, i-click ang "File", at pagkatapos ay "Hanapin ang error code + Driver sa Google".

Maaari mong ipakita lamang ang mga driver na naroroon sa oras na naganap ang error. Upang gawin ito, i-click ang "Mga Setting" - "Bottom window mode" - "Mga driver lang ang natagpuan sa crash stack". O pindutin ang F7 key.

Upang ipakita ang screenshot ng BSoD, pindutin ang F8.

Upang ipakita ang lahat ng mga driver at file, pindutin ang F6.

Well, yun lang. Ngayon alam mo na kung paano malaman ang tungkol sa problema sa Blue Screen of Death, at kung may mangyari, maghanap ng solusyon sa Internet o sa site na ito. Maaari mong ialok ang iyong mga error code, at susubukan kong magsulat para sa bawat artikulo upang malutas ang problema.

Huwag ding kalimutang magtanong sa mga komento.

http://computerinfo.ru/analiz-dampa-pamyati/http://computerinfo.ru/wp-content/uploads/2016/08/analiz-dampa-pamyati.jpghttp://computerinfo.ru/wp-content/ uploads/2016/08/analiz-dampa-pamyati-150×150.jpg2016-08-18T13:45:42+00:00EvilSin225BlueScreenView Problems,Microsoft Kernel Debuggers,dump analysis,memory dump analysis,1 memory dump analysis,windows analysis analysis windows 7, crash dump analysis, sanhi ng BSoD Kumusta mga kaibigan, ngayon ay titingnan namin ang isang kawili-wiling paksa na makakatulong sa iyo sa hinaharap kapag lumitaw ang isang asul na screen ng kamatayan (BSoD). Tulad ko, maraming iba pang mga gumagamit ang kailangang obserbahan ang hitsura ng isang screen na may asul na background kung saan may nakasulat (puti sa asul). Ang hindi pangkaraniwang bagay na ito ay nagpapahiwatig ng isang kritikal na problema, tulad ng sa software, halimbawa, ... EvilSin225 Andrey Terekhov [email protected] Teknolohiya ng kompyuter

Crash dump

Lahat ng Windows system kapag nakita nakamamatay na pagkakamali gumawa ng crash dump (snapshot) ng mga nilalaman ng RAM at i-save ito sa hard drive. May tatlong uri ng memory dump:

Full memory dump – sine-save ang buong nilalaman ng RAM. Ang laki ng imahe ay katumbas ng laki ng RAM + 1 MB (header). Napakadalang gamitin, tulad ng sa mga system na may malaking halaga ng memorya ang laki ng dump ay magiging masyadong malaki.

Kernel memory dump – nagse-save ng impormasyon ng RAM na nauugnay sa kernel mode lamang. Ang impormasyon ng user mode ay hindi nai-save dahil hindi ito naglalaman ng impormasyon tungkol sa sanhi ng pag-crash ng system. Ang laki ng dump file ay depende sa laki ng RAM at nag-iiba mula sa 50 MB (para sa mga system na may 128 MB ng RAM) hanggang 800 MB (para sa mga system na may 8 GB ng RAM).

Maliit na memory dump (mini dump) - naglalaman ng medyo maliit na halaga ng impormasyon: isang error code na may mga parameter, isang listahan ng mga driver na na-load sa RAM sa oras ng pag-crash ng system, atbp., ngunit ang impormasyong ito ay sapat na upang makilala ang may sira na driver . Ang isa pang bentahe ng ganitong uri ng dump ay ang maliit na laki ng file.

Setup ng system

Upang matukoy ang driver na naging sanhi ng asul na screen, kakailanganin lamang naming gumamit ng maliit na memory dump. Upang makapag-save ang system ng mini dump sa panahon ng pag-crash, dapat mong gawin ang mga sumusunod na hakbang:

Matapos makumpleto ang lahat ng mga manipulasyon, pagkatapos ng bawat BSoD isang file na may extension na .dmp ay ise-save sa C:WINDOWSMinidump folder. Pinapayuhan ko kayong basahin ang materyal na "Paano lumikha ng isang folder." Maaari mo ring lagyan ng check ang kahon para sa “Palitan” umiiral na file tambakan". Sa kasong ito, ang bawat bagong crash dump ay isusulat sa luma. Hindi ko inirerekomenda na i-enable ang opsyong ito.

Pagsusuri ng crash dump gamit ang BlueScreenView

Kaya, pagkatapos lumitaw ang Blue Screen of Death, nag-save ang system ng bagong crash dump. Upang pag-aralan ang dump, inirerekomenda ko ang paggamit BlueScreenView na programa. Maaari itong i-download nang libre dito. Ang programa ay medyo maginhawa at mayroon intuitive na interface. Pagkatapos i-install ito, ang unang bagay na kailangan mong gawin ay tukuyin ang lokasyon para sa pag-iimbak ng mga dump ng memorya sa system. Upang gawin ito, pumunta sa item ng menu na "Mga Pagpipilian" at piliin ang "Mga Advanced na Opsyon". Piliin ang radio button na "Mag-load mula sa sumusunod na folder ng Mini Dump" at tukuyin ang folder kung saan iniimbak ang mga dump. Kung ang mga file ay naka-imbak sa C:WINDOWSMinidump folder, maaari mong i-click ang "Default" na buton. I-click ang OK at pumunta sa interface ng programa.

Ang programa ay binubuo ng tatlong pangunahing mga bloke:

Sa block ng memory dump list (minarkahan ng numero 2 sa figure), piliin ang dump na interesado kami at tingnan ang listahan ng mga driver na na-load sa RAM (minarkahan ng numero 3 sa figure). Kulay pink ang mga driver na nasa memory stack ay may kulay. Sila ang dahilan ng BSoD. Susunod, pumunta sa Main Menu ng driver, tukuyin kung saang device o program sila nabibilang. Una sa lahat, bigyang pansin mga file ng system, dahil ang mga file ng system ay na-load sa RAM sa anumang kaso. Madaling makita na ang may sira na driver sa larawan ay myfault.sys. Sasabihin ko na ang program na ito ay partikular na inilunsad upang tumawag Itigil ang mga error. Matapos matukoy ang may sira na driver, kailangan mong i-update ito o alisin ito sa system.

Upang ang programa ay magpakita ng isang listahan ng mga driver na matatagpuan sa memory stack habang paglitaw ng BSoD kailangan mong pumunta sa item ng menu na "Mga Pagpipilian", mag-click sa menu na "LowerPaneMode" at piliin ang "OnlyDriversFoundInStack" (o pindutin ang F7 key), at upang ipakita ang isang screenshot ng error, piliin ang "BlueScreeninXPStyle" (F8). Upang bumalik sa listahan ng lahat ng mga driver, dapat mong piliin ang "AllDrivers" (F6).

Magpapasalamat ako kung gagamitin mo ang mga pindutan:

Pagsusuri ng crash dump ng Windows

Sa kaganapan ng isang kritikal na error, ang system ay huminto sa operasyon nito, nagpapakita ng isang asul na screen ng kamatayan (BSOD), ang impormasyon ng error at mga nilalaman ng memorya ay naka-imbak sa paging file. Kapag ang system ay kasunod na na-load, ang isang crash dump na may impormasyon sa pag-debug ay gagawin batay sa naka-save na data. Ang isang kritikal na entry ng error ay nilikha sa log ng kaganapan ng system.

Kung ang isang kritikal na error ay naganap nang maaga sa system boot o ang isang pagkabigo ay nagresulta mula sa isang error disk subsystem, hindi mase-save ang crash dump.

Maaaring masuri ang crash dump gamit ang BlueScreenView utility o debugger ng system WinDbg (Pag-debug Mga kasangkapan para sa mga bintana).

Pagsusuri ng crash dump gamit ang BlueScreenView utility

Ang pinakasimpleng tool para sa pagsusuri crash dumps ay ang BlueScreenView utility mula sa NirSoft.

I-download ang program mula sa website ng developer.

Ini-scan ng BlueScreenView ang folder ng minidump at ipinapakita ang impormasyon tungkol sa mga nakitang pagkakamali.

Para sa bawat pagkabigo, ang petsa, mga detalye ng error, at ang driver na pinaniniwalaang naging sanhi ng pagkabigo ay ipinapakita.

Ang isang listahan ng mga driver na na-load sa system ay ipinapakita sa ibaba ng window. Ang mga module na ina-access sa oras ng pagkabigo ay naka-highlight sa kulay;

Sa pamamagitan ng i-double click karagdagang impormasyon ay ipinapakita.

Pagsusuri ng crash dump gamit ang WinDbg debugger

Gamit ang WinDbg, maaari kang kumuha ng mas detalyadong impormasyon mula sa isang crash dump, kabilang ang isang transcript ng call stack.

Pag-install ng Mga Debugging Tool para sa mga bintana (WinDbg)

Ang Microsoft ay namamahagi lamang ng WinDbg bilang bahagi ng SDK, maaari mong i-download ang web installer mula sa pahina ng pag-download ng Dev Center.

Upang pag-aralan ang mga crash dump Pag-install ng SDK hindi kinakailangan. Maaari mong i-download ang Debugging Tools para sa mga bintana (WinDbg) bilang isang hiwalay na pakete dito o dito.

I-download at i-install ang WinDbg para sa iyong bersyon ng windows. Gumagana rin ang bersyon para sa Windows 7 sa Windows XP at Windows Vista.

Ang Windows 10 ay nangangailangan ng bersyon ng WinDbg na 10.0.10586.567. I-download ang Windows 10 Standalone SDK Ang web installer ay magda-download. Sa panahon ng pag-install, huwag paganahin ang lahat ng mga bahagi maliban sa debugger.

Pagkatapos ng pag-install, inaayos namin ang shortcut para ilunsad ang WinDbg. Sa mga shortcut na katangian, lagyan ng check ang kahon upang tumakbo bilang administrator. Gayundin, bilang gumaganang folder, set: %SystemRoot%Minidump.

Pagse-set up ng mga simbolo ng pag-debug

Ang mga simbolo ng debug ay naglalaman ng mga simbolikong pangalan ng function mula sa source code. Kinakailangan ang mga ito upang i-decrypt at bigyang-kahulugan ang crash dump.

Kapag una mong sinimulan ang WinDbg, kailangan mong tukuyin ang landas sa mga simbolo ng pag-debug upang magawa ito, buksan ang menu ng File, Symbol File Path, o gamitin ang kumbinasyon ng Ctrl+S.

Ang susunod na linya ay nagbibigay-daan sa pag-load ng mga simbolo ng pag-debug mula sa network, pagtatakda ng lokal na landas para sa pag-save ng mga file at ang address para sa pag-download mula sa Internet:

srv*C:windowssymbols*http://msdl.microsoft.com/download/symbols

Kung ang system ay hindi nakakonekta sa Internet, ang pakete ng pag-install ng simbolo ay maaaring ma-pre-download mula sa pahina ng pag-download ng Windows Symbol Packs ng Microsoft Development Center.

Pagsusuri ng crash dump

Ilunsad ang WinDbg.

Sa menu, piliin ang File, Open Crash Dump, o pindutin ang Ctrl+D.

Tukuyin ang path sa dump %SystemRoot%MEMORY.DMP o %SystemRoot%Minidumpfile.dmp.

Upang makatanggap detalyadong impormasyon patakbuhin ang utos:

Ipo-prompt ka ng debugger na gawin ito; i-hover lang ang iyong mouse sa link at i-click.

Bilang resulta nakukuha namin susunod na output:

***************************************** ********** ***************** * * * Pagsusuri ng Bugcheck * * * ************* ********** ****************************** **************** Uri ng error: KMODE_EXCEPTION_NOT_HANDLED (1e) Bug comment: Ito ay isang pangkaraniwang bugcheck. Karaniwan ang address ng pagbubukod ay tumutukoy sa driver/function na naging sanhi ng problema. Palaging tandaan ang address na ito pati na rin ang link petsa ng driver/larawan na naglalaman ng address na ito. Mga Argumento: Mga argumento ng error: Arg1: 0000000000000000, Ang code ng pagbubukod na hindi nahawakan Arg2: 0000000000000000, Ang address kung saan naganap ang pagbubukod sa Arg3: 0000000000000000, Parameter 0001 ng pagbubukod sa Mga Detalye ng Pag-debug: —— ———— EXCEPTION_CODE: (Win32) 0 (0) — . FAULTING_IP: +3332313336383065 00000000`00000000 ?? ??? EXCEPTION_PARAMETER1: 0000000000000000 EXCEPTION_PARAMETER2: 0000000000000000 ERROR_CODE: (NTSTATUS) 0 - STATUS_WAIT_0 BUGCHECK_STR: 0x1E_0 DEC_FAC_ULFA_CODE: Proseso na naging sanhi ng error: PROCESS_NAME: VirtualBox.exe CURRENT_IRQL: 2 EXCEPTION_RECORD: fffff80000ba24d8 - (.exr 0xfffff80000ba24d8) ExceptionAddress: fffff800034d8a70 ( nt !DbgBreakPoint) ExceptionCode: 80000003 (Break instruction exception) ExceptionFlags: 00000000 NumberParameters: 1 Parameter: 0000000000000000 TRAP_FRAME: fffff80000ba2580 - NOT frame: 50000ba2580 - NOTE: hindi naglalaman ng lahat ng mga rehistro. Ang ilang mga halaga ng rehistro ay maaaring zeroed o hindi tama. RAX = 0000000000142940 RBX = 0000000000000000 RCX = FFFFFA80055BE690 RDX =0000000000000000R8 = 0000000000002274 R9 = 11D0851B22C6AC61 R10 = ffffff80003464000 R11 = FFFFFF80000BA27E00000000000000000000000000000000000000000000000000000000000iopl=0 nv up ei pl nz ac po nc nt!DbgBreakPoint+0x1: fffff800`034d8a71 c3 ret Nire-reset ang default na saklaw LAST_CONTROL_TRANSFER: mula sa fffff800034d85fe hanggang fffff800034e0c10:000 Stack0c1: 8 fffff800`034d85fe: fffffa80`03c05530 00000000`ffffffff fffff800`00ba1d30 fffff800`0350c830: nt!KeBugCheck fffff800`00ba15c0 fffff800`0350c4fd: fffff800`036ea71c fffff800`03627c400`0008 24d8: nt!KiKernelCalloutExceptionHandler+0xe fffff800`00ba15f0 fffff800`0350b2d5: fffff800`0362b028 fffff800`00ba1668 fffff800 ` 00ba24d8 fffff800`03464000: nt!RtlpExecuteHandlerForException+0xd fffff800`00ba1620 fffff800`0351c361: fffff800`00ba24d8 fffff800`000d 0 000`00142940: nt!RtlDispatchException+0x415 fffff800`00ba1d00 fffff800`034e02c2: fffff800`00ba24d8 fffffa80`07149010 fffff800` 00ba2580 00000000`00000000: nt!KiDispatchException+0x135 fffff800`00ba23a0 fffff800`034de0f4: 000000000`00000000000000000000000000 `00000 001 00000000`00000000: nt! KiExceptionDispatch+0xc2 fffff800`00ba2580 fffff800`034d8a71: fffff880`05861446 00000000`df029940 fffff880`02f45bec 00000000000000000 ff800`00ba2718 fffff880`05861446: 00000000`df029940 ffff880`02f45bec 00000000`deee7000 ffff880`01229f06: nt ! DbgBreakPoint+0x1 fffff800`00ba2720 00000000`df029940: fffff880`02f45bec 00000000`deee7000 ffff880`01229f06`05cmffx50f 0. 01229f0 6: fffffa80`05635af8 00000000`00000000 00000000`00000003 fffff880`05865913: 0xdeee7000 fffff8000`0000004 00000000` 00000001 00000000`00000006 00000000`00000001 fffff800`00ba2800: CLASSPNP!ClasspServiceIdleRequest+0x26 kIPb_COMMAND 05861446 ? ??? SYMBOL_STACK_INDEX: 8 SYMBOL_NAME: cmudaxp+25446 FOLLOWUP_NAME: MachineOwner Driver kung saan naganap ang error: MODULE_NAME: cmudaxp IMAGE_NAME: cmudaxp.sys DEBUG_FLR_IMAGE_TIMESTAMP: 47906a45CLU_FAILUX 25446 BUCKET_ID: X64_0x1E_0_cmudaxp+25446 Followup: MachineOwner ———

Pagkuha ng impormasyon tungkol sa may problemang driver

Kung natagpuan ang driver na may error, ipapakita ang pangalan ng driver sa mga field ng MODULE_NAME at IMAGE_NAME.

Upang makuha ang landas ng file at iba pang impormasyon, mag-click sa link sa module:

pangalan ng simulang dulo ng module fffff880`0583c000 fffff880`059ef000 cmudaxp T (walang mga simbolo) Na-load ang file ng imahe ng simbolo: cmudaxp.sys Path ng larawan: SystemRootsystem32driverscmudaxp.sys Pangalan ng larawan: cmudaxp.sys Timestamp: Biyernes Ene 18: 14:52 CheckSum: 0013077F Laki ng Imahe: 001B3000 Mga Pagsasalin: 0000.04b0 0000.04e4 0409.04b0 0409.04e4

Kung ang buong landas sa driver ay hindi tinukoy, ang default na folder ay %SystemRoot%system32drivers.

Nahanap namin tinukoy na file, at pag-aralan ang mga katangian nito.

Ina-update namin ang may problemang driver.

Mga sanhi ng mga kritikal na error sa hardware

Ang pinagmulan ng mga kritikal na error ay madalas na isang malfunction sa disk subsystem o memory subsystem.

Pag-diagnose ng mga pagkabigo sa disk

Sa kaso ng mga error sa disk subsystem, maaaring hindi ma-save ang crash dump.

Upang maiwasan ang mga problema sa disk, suriin syslog mga kaganapan para sa disk read at write error.

Sinusuri namin ang mga parameter ng S.M.A.R.T ng hard drive, maaari mong makuha ang mga ito, halimbawa, gamit ang SpeedFan program.

Nagbibigay kami ng espesyal na pansin sa mga sumusunod na parameter: "Kasalukuyang Nakabinbing Bilang ng Sektor" at "Hindi Naitatama na Bilang ng Sektor" ay nagpapahiwatig ng isang pagkabigo sa disk.

Ang isang hindi-zero na halaga ng parameter: "UltraDMA CRC Error Count" ay nagpapahiwatig ng problema sa SATA cable.

Matuto pa tungkol sa mga opsyon sa S.M.A.R.T. basahin sa artikulo ng Wikipedia.

Diagnosis ng mga pagkakamali sa memorya

Ang mga problema sa memorya ay kadalasang maaaring magdulot ng iba't ibang uri ng mga aberya, kabilang ang iba't ibang mga asul na screen, pag-freeze, pag-crash ng programa, katiwalian sa registry, katiwalian. file system at datos.

Maaari mong matukoy ang mga problema sa memorya gamit ang Memtest86+ utility.

Simula sa Windows Vista, ang system ay may sariling memory test. Upang ilunsad ito, i-click ang "Start", i-type ang "memory" sa search bar, piliin ang "Windows Memory Diagnostic Tool".

Ang mga problema sa memorya ay maaaring malutas sa ilang mga kaso sa pamamagitan ng pag-update ng BIOS.

Pag-configure ng mga opsyon sa pag-save ng crash dump

Upang baguhin ang mga setting para sa pag-save ng crash dump, i-click ang "Start" na buton, mag-click sa "Computer" i-right click mouse, piliin ang "Properties" sa menu ng konteksto. Sa window ng "System" sa kaliwa, piliin ang "Mga advanced na setting ng system", sa grupong "Boot and Recovery", i-click ang button na "Options".

Magbasa pa tungkol sa memory dumps dito.

Asul na screen ng kamatayan - kung ano ang gagawin at kung paano matukoy ang error

Kapag nangyari ang isang sakuna na error, inaabisuhan ng Windows OS ang user nito tungkol sa insidente na may iba't ibang sound at text signal. Salamat sa kanila, maaari mong malaman nang mas partikular ang tungkol sa error at ayusin ito. Gayunpaman, sa karamihan ng mga kaso, hindi naaalala ng mga may-ari ng PC ang mga ito o hindi lang alam kung ano ang ibig nilang sabihin. Ang system, sa kabaligtaran, ay kumukuha ng emergency snapshot ng error, na mas kilala bilang isang dump, at iniimbak ito sa hard drive. Naglalaman ito ng lahat ng impormasyon tungkol sa pagkasira.

Mga uri ng dump

May tatlong uri ng dump:

Upang mai-save ng system ang isang maliit na dump, kinakailangan na magtakda ng ilang mga parameter.

Para sa Windows 7 at Windows XP OS

I-click ang "Start", i-right-click ang "Computer" at piliin ang "Properties".

Pumunta sa seksyong "Mga advanced na setting ng system".

Lumilitaw ang window ng System Properties. Sa tab na "Advanced", sa seksyong "Boot and Recovery", i-click ang "Options".

Piliin ang "Small memory dump" at i-click ang "Ok" para i-save ang mga pagbabago.

Pagsusuri ng Maliit na Dump Gamit ang Blue Screen View

Ang programang Blue Screen View ay dina-download bilang isang archive dito at hindi nangangailangan ng pag-install. Upang magamit ito upang matukoy ang sanhi ng pagkabigo ng system, ginagawa namin ang mga sumusunod na hakbang.

Naglulunsad kami ng isang application sa archive na kapareho ng pangalan ng programa.

Magbubukas ang isang window ng software. Ang interface ay simple, gayunpaman, sa Ingles. Una sa lahat, ipinapahiwatig namin ang lokasyon para sa pag-save ng maliit na dump. I-click ang “Options” at piliin ang “Advanced Options”.

Maglagay ng checkmark sa tabi ng unang seksyon na "Mag-load mula sa sumusunod na folder ng Mini Dump" at ipahiwatig ang folder kung saan matatagpuan ang snapshot ng error. Kung ang isang maliit na dump ay unang itinakda sa mga setting ng system, ang program mismo ay magsasaad ng landas patungo sa snapshot na C:WINDOWSMinidump. I-click ang "Ok" upang makapunta sa interface ng programa.

Ang block na may numero 1 ay isang listahan ng mga crash dump na ginawa ng system. Sa ilalim ng numero 2 mayroong mga larawan at isang listahan ng mga driver.

Ang mga driver na nagdudulot ng pagkabigo ng system ay ipinahiwatig sa pink sa listahan.

Kung wala kang listahan ng mga driver, i-click ang “Options”. Pumunta sa "LowerPaneMode" at piliin ang "OnlyDriversFoundInStack".

Nang matukoy kung aling driver ang nabigo, inaayos namin ang problema.

Paano gumamit ng memory dump upang matukoy ang driver na nagiging sanhi ng BSOD

Dahilan ng kritikal mga error sa windows, na sinamahan ng mga asul na screen (BSOD), ay kadalasang isang driver - bagong naka-install o nasira. Ang pagkakaroon ng pagtukoy kung aling driver ang nagiging sanhi ng error, maaari mong simulan ang pag-aayos ng problema: i-update ang driver, i-roll pabalik sa isang mas bago. maagang bersyon, muling i-install o alisin ang application na nag-install ng driver, atbp. Ang pangalan ng driver ay hindi palaging ipinapakita sa asul na screen. Gayunpaman, mayroong isang napaka-simpleng paraan na nagbibigay-daan sa iyo upang makilala ang may problemang driver sa loob ng ilang minuto gamit ang memory dump.

Hakbang 1 - Paganahin ang Memory Dump Recording

Una kailangan mong tiyakin na ang pag-record ng dump ay pinagana. Upang gawin ito, buksan ang mga katangian ng system sa pamamagitan ng pagpindot sa kumbinasyon ng Win+Pause na key, [sa Vista, i-click ang link ng Advanced na mga setting ng system], pumunta sa tab na Advanced, at sa wakas ay i-click ang Startup at Recovery button.

Ang mga maliliit na memory dump ay dapat sapat para sa aming mga layunin.

Bigyang-pansin ang landas patungo sa folder kung saan sila mase-save kung may maganap na kritikal na error.

Ngayon ay maaari mong i-zip ang file sa isang archive, ilakip ito sa isang post sa Troubleshooting critical windows errors forum at maghintay hanggang may magsabi sa iyo ng pangalan ng may problemang driver :) Ngunit magagawa mo ito sa iyong sarili nang walang labis na pagsisikap.

Hakbang 2 - I-download at I-install ang Mga Diagnostic Tool

Hindi ito nakakatakot gaya ng iniisip mo :)

Hakbang 3 - Pagsusuri sa Memory Dump

Ngayon ang lahat ay bumaba sa pagpapatupad ng isang utos. Magbukas ng command prompt at pumunta sa folder kung saan mo kinuha ang kdfe.cmd. Patakbuhin ang file, na tinutukoy ang path sa memory dump file bilang isang parameter (sa halimbawa sa ibaba ang file ay tinatawag na Mini1110307-01.dmp)

kdfe.cmd "%systemroot%MinidumpMini1110307-01.dmp"

Sa isang minuto makikita mo ang resulta.

Natukoy na ang driver na sanhi ng error!

Karagdagang Mga Mapagkukunan

Ang lahat ng mga sistema ng Windows, kapag may nakitang nakamamatay na error, gumawa ng crash dump (snapshot) ng mga nilalaman ng RAM at i-save ito sa hard drive. May tatlong uri ng memory dump:

Full memory dump – sine-save ang buong nilalaman ng RAM. Ang laki ng imahe ay katumbas ng laki ng RAM + 1 MB (header). Napakadalang gamitin, tulad ng sa mga system na may malaking halaga ng memorya ang laki ng dump ay magiging masyadong malaki.

Kernel memory dump – nagse-save ng impormasyon ng RAM na nauugnay sa kernel mode lamang. Ang impormasyon ng user mode ay hindi nai-save dahil hindi ito naglalaman ng impormasyon tungkol sa sanhi ng pag-crash ng system. Ang laki ng dump file ay depende sa laki ng RAM at nag-iiba mula sa 50 MB (para sa mga system na may 128 MB ng RAM) hanggang 800 MB (para sa mga system na may 8 GB ng RAM).

Maliit na memory dump (mini dump) - naglalaman ng medyo maliit na halaga ng impormasyon: isang error code na may mga parameter, isang listahan ng mga driver na na-load sa RAM sa oras ng pag-crash ng system, atbp., ngunit ang impormasyong ito ay sapat na upang makilala ang may sira na driver . Ang isa pang bentahe ng ganitong uri ng dump ay ang maliit na laki ng file.

Setup ng system

Upang matukoy ang driver na sanhi nito, sapat na para sa amin na gumamit ng isang maliit na memory dump. Upang makapag-save ang system ng mini dump sa panahon ng pag-crash, dapat mong gawin ang mga sumusunod na hakbang:

Para sa Windows Xp Para sa Windows 7
  1. Ang computer ko Mga Katangian
  2. Pumunta sa tab Bukod pa rito;
  3. Mga Parameter;
  4. Sa bukid Itala impormasyon sa pag-debug pumili Maliit na memory dump (64 KB).
  1. Mag-right click sa icon Computer mula sa menu ng konteksto pumili Mga Katangian(o ang kumbinasyon ng Win+Pause na key);
  2. Sa kaliwang menu, mag-click sa item Mga Advanced na Setting ng System;
  3. Pumunta sa tab Bukod pa rito;
  4. Sa field na I-download at pagbawi, dapat mong i-click ang pindutan Mga Parameter;
  5. Sa bukid Pagsusulat ng Impormasyon sa Debug pumili Maliit na memory dump (128 KB).

Matapos makumpleto ang lahat ng mga manipulasyon, pagkatapos ng bawat BSoD isang file na may extension na .dmp ay ise-save sa C:\WINDOWS\Minidump folder. Ipinapayo ko sa iyo na basahin ang materyal na "". Maaari mo ring lagyan ng tsek ang kahon na “ Palitan ang kasalukuyang dump file" Sa kasong ito, ang bawat bagong crash dump ay isusulat sa luma. Hindi ko inirerekomenda na i-enable ang opsyong ito.

Pagsusuri ng crash dump gamit ang BlueScreenView

Kaya, pagkatapos lumitaw ang Blue Screen of Death, nag-save ang system ng bagong crash dump. Upang pag-aralan ang dump, inirerekomenda ko ang paggamit ng BlueScreenView program. Maaari itong i-download nang libre. Ang programa ay medyo maginhawa at may isang madaling gamitin na interface. Pagkatapos i-install ito, ang unang bagay na kailangan mong gawin ay tukuyin ang lokasyon para sa pag-iimbak ng mga dump ng memorya sa system. Upang gawin ito, pumunta sa item ng menu " Mga pagpipilian"at piliin ang" AdvancedMga pagpipilian" Piliin ang radio button " Magkargamula saangsumusunodMini Dumpfolder” at tukuyin ang folder kung saan naka-imbak ang mga dump. Kung ang mga file ay naka-imbak sa C:\WINDOWS\Minidump folder, maaari mong i-click ang " Default" I-click ang OK at pumunta sa interface ng programa.

Ang programa ay binubuo ng tatlong pangunahing mga bloke:

  1. Pangunahing menu block at control panel;
  2. Crash dump list block;
  3. Depende sa mga napiling parameter, maaaring naglalaman ito ng:
  • isang listahan ng lahat ng mga driver sa RAM bago lumitaw ang asul na screen (bilang default);
  • isang listahan ng mga driver na matatagpuan sa RAM stack;
  • screenshot ng BSoD;
  • at iba pang mga halaga na hindi namin gagamitin.

Sa block ng memory dump list (minarkahan ng numero 2 sa figure), piliin ang dump na interesado kami at tingnan ang listahan ng mga driver na na-load sa RAM (minarkahan ng numero 3 sa figure). Kulay pink ang mga driver na nasa memory stack. Sila ang dahilan ng BSoD. Susunod, pumunta sa Main Menu ng driver, tukuyin kung saang device o program sila nabibilang. Una sa lahat, bigyang-pansin ang mga di-system na file, dahil ang mga file ng system ay na-load sa RAM sa anumang kaso. Madaling makita na ang may sira na driver sa larawan ay myfault.sys. Sasabihin ko na ang program na ito ay partikular na inilunsad upang maging sanhi ng isang Stop error. Matapos matukoy ang may sira na driver, kailangan mong i-update ito o alisin ito sa system.

Upang ang programa ay magpakita ng isang listahan ng mga driver na matatagpuan sa memory stack kapag naganap ang isang BSoD, kailangan mong pumunta sa menu item " Mga pagpipilian"Mag-click sa menu" IbabaPaneMode"at piliin ang" TangingMga driverNatagpuanSasalansan” (o pindutin ang F7 key), at para magpakita ng screenshot ng error, piliin ang “ AsulScreensaXPEstilo” (F8). Upang bumalik sa listahan ng lahat ng mga driver, dapat mong piliin ang " LahatMga driver” (F6).

Sa Windows 8, ipinakilala ng Microsoft ang isang bagong memory dump - isang opsyon na awtomatikong memory dump. Ang setting na ito ay nakatakda bilang default sa operating system. Sa Windows 10 ipinakilala bagong uri dump file - aktibong dump alaala. Para sa mga hindi nakakaalam, sa Windows 7 mayroon kaming maliit na dump, core dump at buong dump alaala. Maaaring nagtataka ka kung bakit nagpasya ang Microsoft na likhain ito bagong parameter memory dump? Ayon kay Robert Simpkins, senior support engineer, ang isang awtomatikong memory dump ay maaaring lumikha ng suporta para sa pahina ng "system" sa configuration file.
Ang paging file configuration management system ay responsable para sa pamamahala sa laki ng paging file - iniiwasan nito ang hindi kinakailangang headroom o laki ng paging file. Ang pagpipiliang ito ay pangunahing ipinakilala para sa mga PC na tumatakbo sa mga SSD drive, na karaniwang mayroon mas maliit na sukat, ngunit isang malaking halaga ng RAM.

Mga pagpipilian sa memory dump

Ang pangunahing bentahe ng "Awtomatikong memory dump" ay pinapayagan nito ang subsystem session sa manager ng proseso na awtomatikong bawasan ang file ng pahina sa isang sukat na mas maliit kaysa sa laki ng RAM. Para sa mga hindi nakakaalam, ang session ng tagapamahala ng subsystem ay may pananagutan para sa pagsisimula ng system, ang kapaligiran ng pagsisimula para sa mga serbisyo at proseso na kinakailangan para mag-log in ang user sa system. Ito ay karaniwang nagtatakda ng pahina ng mga file sa virtual na memorya at simulan ang proseso ng winlogon.exe.

Kung gusto mong baguhin ang iyong mga awtomatikong setting ng memory dump, narito kung paano ito gawin. Pindutin ang Windows key + X at piliin ang - System. Susunod, mag-click sa pindutan na "Mga advanced na setting ng system - Advance Sistema Mga setting”.

Mag-click sa pindutan ng Advanced na mga setting ng system.

Dito makikita mo ang isang drop-down na menu kung saan nakasulat ang "Advanced".

Dito maaari kang pumili ang tamang opsyon. Mga iminungkahing opsyon:

Walang memory dumps.
Maliit na memory dump.
Kernel memory dump.
Kumpletuhin ang memory dump.
Awtomatikong memory dump. Idinagdag sa Windows 8.
Aktibong memory dump. Idinagdag sa Windows 10.
Ang lokasyon ng memory dump file ay nasa %SystemRoot%\MEMORY.DMP file.

Kung ikaw ay gumagamit SSD drive, pagkatapos ay mas mahusay na iwanan ito sa "Awtomatikong memory dump"; ngunit kung kailangan mo ng crash dump file, pagkatapos ay mas mahusay na itakda ito sa "maliit na memory dump", kasama nito maaari mo, kung gusto mo, ipadala ito sa isang tao upang matingnan nila ito.

Sa ilang mga kaso, maaaring kailanganin mong dagdagan ang laki ng file ng pahina nang higit sa RAM, upang ito ay tumugma sa isang buong memory dump. Sa ganitong mga kaso, kailangan mong lumikha ng isang registry key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

ito ay tinatawag na "LastCrashTime".

Awtomatiko nitong tataas ang laki ng swap file. Upang bawasan ito sa ibang pagkakataon, maaari mo lamang alisin ang key na ito.

Sa Windows 10 ipinakilala bagong file dump aktibong memory dump. Naglalaman lamang ito ng mga mahahalaga at samakatuwid ay mas maliit ang sukat.

Wala akong paraan upang subukan ito, ngunit ginawa ko ang key na ito at sinusubaybayan ang laki ng pagefile. Alam kong maya-maya ay magkakaroon ako ng kritikal na error. Pagkatapos ay susuriin ko ito.

Maaari mong suriin ang memory dump ng mga Windows.dmp file gamit ang WhoCrashed. Ang WhoCrashed Home ay isang libreng utility na nagbibigay ng mga driver na na-install sa iyong computer sa isang click. Sa karamihan ng mga kaso, maaari itong makilala ang isang may sira na driver na nagdudulot ng mga problema sa iyong computer. Isa itong system analysis crash dump, memory dumps, at lahat ng nakolektang impormasyon ay ipinakita dito sa isang naa-access na form.

Karaniwan, ang debugging toolkit ay magbubukas ng isang analysis crash dump. Sa utility na ito, hindi mo kailangan ng anumang kaalaman o kasanayan sa pag-debug upang malaman kung aling mga driver ang nagdudulot ng mga problema sa iyong computer.

Ang WhoCrashed ay umaasa sa isang debugging package (ang windbg program) mula sa Microsoft. Kung hindi naka-install ang package na ito, ida-download ng WhoCrashed at awtomatikong i-extract ang package na ito para sa iyo. Patakbuhin lamang ang programa at mag-click sa pindutang Pag-aralan. Kapag na-install mo ang WhoCrashed sa iyong system at kung nag-crash o nagsasara ito nang hindi inaasahan, ipapaalam sa iyo ng program kung pinagana ang crash dumping sa iyong computer at mag-aalok ito sa iyo ng mga mungkahi kung paano paganahin ang mga ito.

Ang maikling tala na ito ay naglalayong ipakita kung paano mo mako-configure ang system upang makakuha ng emergency Windows memory dump, iyon ay, isang dump na maaaring malikha kung ang isang kritikal na pagkabigo ay nangyari, na nailalarawan sa pamamagitan ng hitsura ng isang asul na screen ng kamatayan (BSOD). Ano ang isang dump sa pangkalahatan, bakit natin ito kailangan at ano ito, anong mga problema ang nilalayon nitong lutasin at anong impormasyon ang nilalaman nito?

Memory dump - mga nilalaman gumaganang memorya proseso, kernel o buong operating system, kabilang ang, bilang karagdagan sa mga lugar ng trabaho, karagdagang impormasyon tungkol sa estado ng mga rehistro ng processor, ang mga nilalaman ng stack at iba pang istruktura ng serbisyo.

Bakit maaaring kailanganin natin ang nilalamang ito, ibig sabihin. Windows memory dump? Marahil ang pinakakaraniwang paggamit ng memory dump ay pag-aralan ang mga sanhi ng pagkabigo ng system (), na naging sanhi ng tuluyang paghinto ng operating system. Bilang karagdagan dito, ang katayuan ng memorya ay maaaring gamitin para sa iba pang mga layunin. Mahalaga rin na ang isang memory dump ay literal ang tanging paraan makatanggap ng impormasyon tungkol sa anumang pagkabigo! At ang pagkuha (pagkuha) ng system memory dump ay, sa katunayan, ang tanging tumpak na paraan ng pagkuha ng instant fingerprint (kopya) ng mga nilalaman pisikal na memorya mga sistema.

Ang mas tumpak na mga nilalaman ng dump ay sumasalamin sa estado ng memorya sa oras ng kabiguan, mas detalyadong magagawa nating pag-aralan ang sitwasyong pang-emergency. Samakatuwid, napakahalaga na makakuha ng up-to-date na kopya ng pisikal na memorya ng system sa isang mahigpit na tinukoy na punto sa oras kaagad bago ang pagkabigo. At ang tanging paraan para gawin ito ay ang gumawa ng buong crash dump. Ang dahilan ay medyo maliit - kapag ang isang crash dump ng memorya ng system ay nangyari, alinman bilang isang resulta ng isang pagkabigo o bilang isang resulta ng isang artipisyal na kunwa sitwasyon, ang system sa sandaling ito ng pagtanggap ng kontrol ng mga emergency function (KeBugCheckEx) ay nasa isang ganap na hindi nagbabago (static) na estado, samakatuwid, sa pagitan ng sandaling nangyari ang kabiguan at sa sandaling ang data ay isinulat sa media, walang nagbabago sa mga nilalaman ng pisikal na memorya, at ito ay nakasulat sa disk sa orihinal na estado nito. Well, ito ay nasa teorya, ngunit paminsan-minsan sa buhay, ngunit may mga sitwasyon kung saan, dahil sa mga sira na bahagi ng hardware, ang memory dump mismo ay maaaring masira, o ang istasyon ay maaaring mag-freeze habang nire-record ang dump.

Sa karamihan ng mga kaso, mula sa sandaling magsimula ang proseso ng paglikha ng crash memory dump hanggang sa pagtatapos ng pagsulat ng mga nilalaman ng memorya sa disk, ang impormasyon sa memorya ay nananatiling hindi nagbabago.

Theoretically, ang static (immutability) ng memory "fingerprint" ay ipinaliwanag sa pamamagitan ng katotohanan na kapag tinawag ang KeBugCheckEx function, na nagpapakita ng impormasyon tungkol sa pagkabigo at nagsisimula sa proseso ng paglikha ng memory dump, ang system ay ganap na huminto at ang ang mga nilalaman ng pisikal na memorya ay isinulat sa mga bloke na inookupahan sa disk ng paging file, pagkatapos nito, sa panahon ng kasunod na paglo-load ng operating system, ito ay i-reset sa isang file sa system media. Well, halos isang beses ko naobserbahan ang isang sitwasyon kung saan ang isang may sira motherboard pumigil sa akin sa pag-save ng memory dump: a) pagyeyelo habang tumatakbo ang dump saving logic (ang proseso ay hindi umabot sa 100%), b) pagkasira ng memory dump file (nagreklamo ang debugger tungkol sa mga istruktura), c) pagsulat ng memory.dmp dump mga file na walang haba. Samakatuwid, sa kabila ng katotohanan na ang system ay ganap na tumigil sa oras na ang memory dump ay nilikha, at tanging ang emergency code ay tumatakbo, ang may sira na hardware ay maaaring gumawa ng mga pagsasaayos sa anumang lohika nang walang pagbubukod sa anumang yugto ng operasyon.
Ayon sa kaugalian, sa paunang yugto Upang i-save ang isang Windows memory dump, ang mga bloke ng disk na inilalaan sa pagefile ay ginagamit. Pagkatapos, pagkatapos magkaroon ng asul na screen at mag-reboot, ililipat ang data sa hiwalay na file, at pagkatapos ay papalitan ang pangalan ng file gamit ang isang pattern depende sa uri ng dump. Gayunpaman, simula sa Mga bersyon ng Windows Vista, ang kalagayang ito ay maaaring mabago ngayon ang gumagamit ay binibigyan ng pagkakataon na i-save ang isang napiling dump nang walang paglahok ng isang swap file, paglalagay ng impormasyon tungkol sa pagkabigo sa; pansamantalang file. Ginawa ito upang maalis ang mga error sa pagsasaayos na nauugnay sa mga maling setting ng laki at posisyon ng paging file, na madalas na humantong sa mga problema sa panahon ng proseso ng pag-save ng memory dump.
Tingnan natin kung anong mga uri ng dump ang pinapayagan ng operating system na gawin natin. Sistema ng Windows:

  • Proseso (application) memory dump;
  • Kernel memory dump;
  • Kumpletuhin ang memory dump (dump ng magagamit na bahagi ng pisikal na memorya ng system).

Ang lahat ng crash dump ay maaaring nahahati sa dalawang pangunahing kategorya:

  • Mga crash dump na may impormasyon tungkol sa naganap na pagbubukod. Karaniwang nilikha sa awtomatikong mode, kapag ang isang hindi nahawakang pagbubukod ay nangyari sa application/kernel at, nang naaayon, ang system (built-in) na debugger ay maaaring tawagan. Sa kasong ito, ang impormasyon tungkol sa pagbubukod ay naitala sa isang dump, na ginagawang mas madaling matukoy ang uri ng pagbubukod at kung saan ito naganap sa kasunod na pagsusuri.
  • Mga crash dump nang walang exception na impormasyon. Karaniwang ginawa ng user nang manu-mano kapag kailangan lang na gumawa ng snapshot ng isang proseso para sa kasunod na pagsusuri. Ang pagsusuri na ito ay hindi nagpapahiwatig ng pagtukoy sa uri ng pagbubukod, dahil walang eksepsiyon ang naganap, ngunit isang pagsusuri ng isang ganap na naiibang uri, halimbawa, pag-aaral ng mga istruktura ng data ng isang proseso at iba pa.

Configuration ng kernel memory dump

Dapat kang naka-log in gamit ang isang administratibong account upang maisagawa ang mga aksyon na inilarawan sa seksyong ito.

Dumiretso tayo sa pag-configure ng mga setting ng crash dump ng Windows. Una, kailangan nating pumunta sa window ng system properties sa isa sa mga sumusunod na paraan:

  1. Mag-right-click sa icon na "My Computer" - "Properties" - "Advanced system settings" - "Advanced".
  2. Button na "Start" - "Control Panel" - "System" - "Mga advanced na setting ng system" - "Advanced".
  3. Keyboard shortcut na "Windows" + "I-pause" - "Mga advanced na setting ng system" - "Advanced".

  4. control system.cpl,3
  5. Ipatupad sa command line(cmd):
    SystemPropertiesAdvanced

Ang resulta ng inilarawan na mga aksyon ay upang buksan ang window ng "System Properties" at piliin ang tab na "Advanced":

Pagkatapos nito, sa seksyong "Boot and Recovery" nag-click kami, piliin ang "Mga Pagpipilian" at sa gayon ay magbukas ng bagong window na tinatawag na "I-download at Pagbawi":

Ang lahat ng mga parameter ng crash dump ay nakapangkat sa isang bloke ng parameter na tinatawag na "System Failure." Sa block na ito maaari naming itakda ang mga sumusunod na parameter:

  1. Sumulat ng mga kaganapan sa log ng system.
  2. Magsagawa ng awtomatikong pag-reboot.
  3. Pagre-record ng impormasyon sa pag-debug.
  4. Dump file.
  5. Palitan ang isang umiiral na dump file.

Tulad ng nakikita mo, marami sa mga parameter mula sa listahan ay medyo walang halaga at madaling maunawaan. Gayunpaman, gusto kong ipaliwanag ang parameter na "Dump File". Ang parameter ay ipinakita bilang isang drop-down na listahan at may apat na posibleng mga halaga:

Maliit na memory dump

Ang maliit na memory dump (minidump) ay isang file na naglalaman ng pinakamaliit na halaga ng impormasyon tungkol sa pagkabigo. Ang pinakamaliit sa lahat ng posibleng memory dump. Sa kabila ng malinaw na mga disadvantages, ang mga minidumps ay kadalasang ginagamit bilang impormasyon tungkol sa isang pagkabigo na maipadala sa supplier. mga driver ng third party para sa karagdagang pag-aaral.
Tambalan:

  • Mensahe ng error.
  • Halaga ng error.
  • Mga parameter ng error.
  • Ang konteksto ng processor (PRCB) kung saan nangyari ang pagkabigo.
  • Iproseso ang impormasyon at konteksto ng kernel (EPROCESS) para sa proseso ng pag-crash at lahat ng mga thread nito.
  • Iproseso ang impormasyon at konteksto ng kernel (ETHREAD) para sa thread na nagdudulot ng pag-crash.
  • Ang kernel mode stack para sa thread na naging sanhi ng pag-crash.
  • Listahan ng mga na-load na driver.

tirahan: %SystemRoot%\Minidump\MMDDYY-XXXXX-NN.dmp. Kung saan ang MMDDYY ay ang buwan, araw at taon, ayon sa pagkakabanggit, ang NN ay serial number tambakan.
Volume: Depende ang laki sa bitness ng operating system: 128 kilobytes lang ang kailangan para sa 32-bit at 256 kilobytes para sa 64-bit OS sa paging file (o sa file na tinukoy sa DedicatedDumpFile). Dahil hindi kami makakapagtakda ng ganoong kaliit na sukat, bilugan namin ito hanggang 1 megabyte.

Kernel memory dump

Ang ganitong uri ng dump ay naglalaman ng isang kopya ng lahat ng kernel memory sa oras ng pag-crash.
Tambalan:

  • Listahan ng mga tumatakbong proseso.
  • Ang estado ng kasalukuyang thread.
  • Ang mga pahina ng memorya ng kernel-mode ay nasa pisikal na memorya sa oras ng pag-crash: memorya ng driver ng kernel-mode at memorya ng programa ng kernel-mode.
  • Memorya ng antas na umaasa sa hardware (HAL).
  • Listahan ng mga na-load na driver.

Ang kernel memory dump ay nawawala ang hindi inilalaang memory page at user mode page. Sumang-ayon, hindi malamang na ang mga pahina ng proseso ng user mode ay magiging interesado sa amin sa panahon ng pagkabigo ng system (BugCheck), dahil kadalasan pagkabigo ng system sinimulan ng kernel mode code.

Sukat: Nag-iiba depende sa laki ng kernel address space na inilalaan ng operating system at ang bilang ng mga driver ng kernel mode. Karaniwan, humigit-kumulang isang katlo ng pisikal na memorya ang kinakailangan sa swap file (o sa file na tinukoy sa DedicatedDumpFile). Maaaring mag-iba.

Kumpletuhin ang memory dump

Ang isang buong memory dump ay naglalaman ng isang kopya ng lahat ng pisikal na memorya (RAM) sa oras ng pagkabigo. Alinsunod dito, ang buong nilalaman ng memorya ng system ay kasama sa file. Ito ay parehong isang kalamangan at isang malaking kawalan, dahil ang laki nito ay maaaring maging makabuluhan sa ilang mga server na may malaking halaga ng RAM.
Tambalan:

  • Lahat ng mga pahina ng "nakikitang" pisikal na memorya. Ito ang halos buong memorya ng system, maliban sa mga lugar na ginagamit ng hardware: BIOS, PCI space, atbp.
  • Data mula sa mga proseso na tumatakbo sa system sa oras ng pagkabigo.
  • Mga pahina ng pisikal na memorya na hindi nakamapa sa virtual address space, ngunit makakatulong sa pagsisiyasat sa sanhi ng pagkabigo.

Bilang default, ang isang buong memory dump ay hindi kasama ang mga lugar ng pisikal na memorya na ginagamit ng BIOS.
Lokasyon: %SystemRoot%\MEMORY.DMP . Ang nakaraang dump ay na-overwrite.
Volume: Ang paging file (o ang file na tinukoy sa DedicatedDumpFile) ay nangangailangan ng volume na katumbas ng laki ng pisikal na memory + 257 megabytes (ang 257 MB na ito ay nahahati sa isang partikular na header + data ng driver). Sa katunayan, sa ilang mga OS, ang mas mababang threshold ng paging file ay maaaring itakda nang eksakto sa halaga ng pisikal na laki ng memorya.

Awtomatikong memory dump

Simula sa Windows 8/Windows Server 2012, isang bagong uri ng dump ang ipinakilala sa system na tinatawag na Automatic Memory Dump, na nakatakda bilang default na uri. Sa kasong ito, ang system mismo ang nagpapasya kung aling memory dump ang itatala sa kaganapan ng isang partikular na pagkabigo. Bukod dito, ang lohika ng pagpili ay nakasalalay sa maraming pamantayan, kabilang ang dalas ng "pag-crash" ng operating system.

Pagkatapos mong baguhin ang configuration ng Windows memory dump, maaaring kailanganin mong i-restart ang iyong computer.

Mga Setting ng Registry

Ang seksyon ng registry na tumutukoy sa mga parameter ng crash dump:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

Mga Parameter:

Parameter Uri Paglalarawan
AutoReboot REG_DWORD I-enable/disable ang awtomatikong pag-reboot kapag nangyari ang BSOD.
CrashDumpEnabled REG_DWORD Ang uri ng dump na ginagawa.
  • 0 - huwag lumikha ng isang memory dump;
  • 1 - kumpletong memory dump;
  • 2 - kernel memory dump;
  • 3 - maliit na memory dump;
DumpFile REG_EXPAND_SZ Path at pangalan ng kernel memory dump at full memory dump.
DumpFilters REG_MULTI_SZ Filter ng driver sa memory dump driver stack. Binibigyang-daan kang magdagdag ng bagong functionality sa yugto ng paglikha ng mga crash dump. Halimbawa, ang pag-encrypt ng mga nilalaman ng dump. Ang pagpapalit ng halaga ay hindi inirerekomenda.
LogEvent REG_DWORD Pagre-record ng kaganapan sa log ng system.
MinidumpDir REG_EZPAND_SZ Path at pangalan ng maliit na memory dump.
MinidumpsCount REG_DWORD Pinakamataas na bilang ng maliliit na memory dump. Kapag nalampasan, magsisimulang ma-overwrite ang mga mas lumang bersyon.
I-overwrite REG_DWORD Palitan ang isang umiiral na dump file. Para lamang sa kernel memory dump at full memory dump.
Huwag pansinin angPagefileSize REG_DWORD Hindi pinapansin karaniwang file swap bilang isang lugar para sa pansamantalang (intermediate) na imbakan ng isang memory dump. Isinasaad na ang memory dump ay dapat isulat sa isang hiwalay na file. Ginamit kasabay ng opsyon na DedicatedDumpFile.
DedicatedDumpFile REG_EZPAND_SZ Landas at pangalan ng pansamantalang alternatibong file para mag-record ng memory dump. Sa pangalawang pass, ililipat pa rin ang data sa DumpFile/MinidumpDir.

Manu-manong paggawa ng memory dump

Sa itaas ay inilarawan namin ang mga setting para sa awtomatikong paglikha crash dumps ng system kung sakaling magkaroon ng kritikal na error, ibig sabihin hindi nahawakang pagbubukod sa kernel code. Ngunit sa totoong buhay, bilang karagdagan sa pag-crash ng operating system, may mga sitwasyon kung kailan kinakailangan upang makakuha ng dump ng memorya ng system sa isang tiyak na punto ng oras. Ano ang gagawin sa kasong ito? May mga paraan para makakuha ng snapshot ng lahat ng pisikal na memorya, halimbawa gamit ang .dump command sa mga debugger ng WinDbg/LiveKD. Ang LiveKD ay isang programa na nagbibigay-daan sa iyong patakbuhin ang Kd kernel debugger sa isang tumatakbong sistema sa lokal na mode. Ang WinDbg debugger ay mayroon ding katulad na tampok. Gayunpaman, ang on-the-fly dump method ay hindi tumpak dahil ang dump na nabuo sa kasong ito ay "inconsistent" dahil nangangailangan ng oras upang mabuo ang dump, at kung sakaling gamitin ang kernel mode debugger, ang system ay patuloy na tatakbo at gumagawa mga pagbabago sa mga pahina ng memorya.

Gaano mo kadalas nakikita ang Windows Screen of Death (BSoD)? Maaaring mangyari ang BSoD sa iba't ibang kaso: pareho na kapag nagtatrabaho sa system, at sa panahon ng paglo-load ng operating system. Paano matukoy kung ano ang sanhi ng BSoD at ayusin ang problemang ito? Ang Windows operating system ay may kakayahang mag-save ng memory dump kapag may naganap na error upang tagapangasiwa ng system maaaring suriin ang data ng dump at hanapin ang sanhi ng BSoD.

Mayroong dalawang uri ng memory dumps - maliit (minidump) at puno. Depende sa mga setting ng operating system, ang system ay maaaring mag-save ng buo o maliliit na dump, o walang aksyon kapag may naganap na error.

Ang isang maliit na dump ay matatagpuan sa kahabaan ng landas %systemroot%\minidump at may pangalan tulad ng Minixxxxxx-xx.dmp
Ang buong dump ay matatagpuan sa kahabaan ng landas %systemroot% at may pangalan tulad ng Memory.dmp

Upang pag-aralan ang mga nilalaman ng memory dumps, dapat mong gamitin espesyal na utility- Microsoft Kernel Debugger.
Maaari mong makuha ang program at mga bahagi na kinakailangan para sa pagpapatakbo nito nang direkta mula sa website ng Microsoft - Mga Tool sa Pag-debug

Kapag pumipili ng isang debugger, dapat mong isaalang-alang ang bersyon ng operating system kung saan kailangan mong pag-aralan ang mga dump ng memorya. Para sa isang 32-bit na OS, ang 32-bit na bersyon ng debugger ay kinakailangan, at para sa isang 64-bit na OS, mas mainam na gamitin ang 64-bit na bersyon ng debugger.

Bilang karagdagan sa Debugging Tools package mismo para sa Windows, kakailanganin mo rin ng isang hanay ng mga simbolo ng pag-debug - Mga Simbolo sa Pag-debug. Ang hanay ng mga simbolo ng pag-debug ay partikular sa bawat OS kung saan naitala ang BSoD. Samakatuwid, kakailanganin mong mag-download ng isang hanay ng mga simbolo para sa bawat OS na ang operasyon ay kailangan mong suriin. Ang 32-bit na Windows XP ay mangangailangan ng Windows XP 32-bit character set, at ang 64-bit OS ay mangangailangan ng Windows XP 64-bit na character set. Para sa iba pang mga operating system ng pamilya ng Windows, ang mga set ng character ay pinili ayon sa parehong prinsipyo. Maaari mong i-download ang mga simbolo ng pag-debug mula dito. Inirerekomenda na i-install ang mga ito sa %systemroot%\mga simbolo

Pagkatapos i-install ang mga simbolo ng debugger at debug, ilunsad ang debugger. Ang debugger window pagkatapos ng paglunsad ay ganito ang hitsura.

Bago pag-aralan ang mga nilalaman ng isang memory dump, kakailanganin mong maliit na setup debugger Sa partikular, sabihin sa program kung saan hahanapin ang mga simbolo ng pag-debug. Upang gawin ito, pumili mula sa menu na File > Symbol File Path... I-click ang Browse... button at ipahiwatig ang folder kung saan namin na-install ang mga simbolo ng pag-debug para sa memory dump na pinag-uusapan.

Maaari kang humiling ng impormasyon tungkol sa mga kinakailangang simbolo ng pag-debug nang direkta sa Internet, mula sa isang publiko Microsoft server. Sa ganitong paraan magkakaroon ka ng pinakabagong bersyon ng mga simbolo. Magagawa mo ito bilang mga sumusunod - sa menu ng File > Symbol File Path..., ipasok ang: SRV*%systemroot%\symbols*http://msdl.microsoft.com/download/symbols

Pagkatapos tukuyin ang path sa mga simbolo ng debug, piliin ang File > I-save ang workspace mula sa menu at kumpirmahin ang aksyon sa pamamagitan ng pag-click sa OK.

Upang simulan ang pagsusuri sa memory dump, piliin ang File > Open Crash Dump... mula sa menu at piliin ang file na kinakailangan para sa pagsusuri.

Susuriin ng system ang nilalaman, pagkatapos nito ay maglalabas ng resulta tungkol sa pinaghihinalaang sanhi ng error.

Ang !analyze -v command na ibinigay sa debugger sa command line ay maglalabas ng mas detalyadong impormasyon.

Maaari mong ihinto ang pag-debug sa pamamagitan ng pagpili sa item ng menu na Debug > Ihinto ang Pag-debug

Kaya, gamit ang Debugging Tools para sa Windows package, palagi kang makakakuha ng sapat buong view tungkol sa mga sanhi ng mga error sa system.