7. Як за допомогою дампа пам'яті визначити драйвер, що викликає BSOD. Як налаштувати створення memory dump

Здрастуйте друзі, сьогодні розберемо цікаву тему, яка допоможе вам у майбутньому з появою синього екранусмерті (BSoD).

Як і мені, так і багатьом іншим користувачам доводилося спостерігати появу екрану із синім тлом, на якому щось написано (білим по синьому). Дане явище говорить про критичну неполадку, як у програмному забезпеченні, наприклад, конфлікт драйверів, так і у фізичній несправності якогось компонента комп'ютера.

Нещодавно у мене знову з'явився блакитний екран у windows 10, але я швидко його позбувся і скоро про це вам розповім.

Хочете дивитися фільми онлайн хорошій якості? Тоді переходьте за посиланням.

Отже, більшість користувачів не знають, що BSoD можна аналізувати, щоб згодом зрозуміти проблеми критичної помилки. Для таких випадків windows створює на диску спеціальні файли- Дампи пам'яті, їх то ми і будемо аналізувати.

Є три типи дампи пам'яті:

Повний дамп пам'яті – ця функція дозволяє повністю зберегти вміст оперативної пам'яті. Він рідко використовується, тому що уявіть, що у вас 32 Гб оперативної пам'яті, при повній дампі весь цей об'єм збережеться на диску.

Дамп ядра – зберігає інформацію про режим ядра.

Малий дамп пам'яті – зберігає невеликий обсяг інформації про помилки та завантажені компоненти, які були на момент появи несправності системи. Ми будемо використовувати саме цей тип дампа, тому що вона дасть нам достатню інформацію про BSoD.

Розташування, як малого, і повного дампа відрізняється, наприклад, малий дамп перебуває наступним шляхом: %systemroot%minidump.

Повний дамп знаходиться тут: %systemroot%.

Для аналізу дампів пам'яті існують різні програмиале ми скористаємося двома. Перша – Microsoft Kernel Debuggers, як відомо з назви утиліта від Microsoft. Завантажити його можна з офіційного сайту. Друга програма - BlueScreenView, безкоштовна програма, завантажуємо звідси.

Аналіз дампи пам'яті за допомогою Microsoft Kernel Debuggers

Для різних версійДля систем потрібно завантажувати свій тип утиліти. Наприклад, для 64-х розрядної операційної системи, Потрібна 64-бітова програма, для 32-розрядної - 32-бітна версія.

Це ще не все, вам потрібно завантажити та встановити пакет налагоджувальних символів, потрібні для програми. Називається Debugging Symbols. Кожна версія даного пакетутеж скачується під певною ОС, спершу дізнайтеся яка у вас система, а потім завантажуйте. Щоб вам не шукати будь-де ці символи, ось посилання на скачування. Установка, бажано, повинна здійснюватися цим шляхом: %systemroot%symbols.

Тепер можна запускати наш відладчик, вікно якого виглядатиме ось так:

Перш ніж проаналізувати дампи, ми дещо налаштуємо в утиліті. По-перше, потрібно вказати програмі, куди ми встановили символи налагодження. Для цього натискаємо кнопку «File» і вибираємо пункт «Symbol File Path», потім вказуємо шлях до символів.

Програма дозволяє витягувати символи прямо з мережі, тому вам навіть не доведеться завантажувати їх (вибачте ті, хто вже скачав). Вони будуть братися з сервером Microsoft, тому все безпечно. Отже, вам потрібно знову відкрити "File", потім "Symbol File Path" і ввести наступну команду:

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

Таким чином, ми вказали програмі, що символи повинні братися з мережі. Як тільки ми це зробили натискаємо File і вибираємо пункт Save Workspace, потім тиснемо ОК.

От і все. Ми налаштували програму на потрібний лад, тепер приступаємо до аналізу дампів пам'яті. У програмі натискаємо кнопку «File», потім «Open Crash Dump» і вибираємо потрібний файл.

Kernel Debuggers розпочне аналіз файлу і після цього виведе результат причини помилки.

У вікні можна вводити команди. Якщо ми введемо! Analyze -v, то отримаємо більше інформації.

Ось і все із цією програмою. Щоб зупинити роботу відладчика, виберіть "Debug" і "Stop Debugging".

Аналіз дампа пам'яті за допомогою BlueScreenView

Для аналізу різних помилокта BSoD підійде і програма BlueScreenView, яка має простий інтерфейс, тому проблем із освоєнням виникнути не повинно.

Завантажте програму за вказаним вище посиланням і встановіть. Після запуску утиліти її потрібно налаштувати. Зайдіть у параметри: "Налаштування" - " Додаткові параметри». Відкриється невелике віконце, у якому є кілька пунктів. У першому пункті потрібно вказати місцезнаходження дампів пам'яті. Зазвичай вони знаходяться на шляху C:WINDOWSMinidump. Тоді просто натисніть кнопку "За замовчуванням".

Що можна бачити у програмі? У нас є пункти меню, частина вікна з назвами файлів дампів та друга частина вікна – вміст дампів пам'яті.

Як я говорив на початку статті, дампи можуть зберігати драйвера, сам скріншот «екрана смерті» та інша корисна інформація, яка нам може стати в нагоді.

Отже, у першій частині вікна, де файли дампів, вибираємо необхідний нам дамп пам'яті. У наступній частині вікна дивимось на вміст. Червоним кольором позначені драйвера, що були у стеку пам'яті. Саме вони і є причиною синього екрану смерті.

В інтернеті можна знайти все про код помилки та драйвер, який може бути виною BSoD. Для цього натискаємо "Файл", а потім "Знайти в Google код помилки + Драйвер".

Можна зробити лише драйверів, які були на момент появи помилки. Для цього потрібно натиснути "Налаштування" - "Режим нижнього вікна" - "Тільки драйвера, знайдені в креш-стеку". Або натиснути клавішу F7.

Щоб показати скріншот BSoD, натисніть клавішу F8.

Для показу всіх драйверів та файлів натискаємо F6.

Ну от, власне, і все. Тепер ви знаєте, як дізнатися про проблему «Синього екрану смерті», і в разі чого знайти рішення в інтернеті або на цьому сайті. Можете пропонувати свої коди помилок, а я постараюся писати для кожної статті щодо вирішення проблеми.

Також не забувайте ставити запитання у коментарях.

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:00EvilSin225ПроблемиBlueScreenView,Microsoft Kernel Debuggers,аналіз дампа,аналіз дампа дампа windows 7, аналіз краш дампа, причина BSoD Здрастуйте друзі, сьогодні розберемо цікаву тему, яка допоможе вам у майбутньому при появі синього екрану смерті (BSoD). Як і мені, так і багатьом іншим користувачам доводилося спостерігати появу екрану із синім тлом, на якому щось написано (білим по синьому). Дане явище говорить про критичну неполадку, як у програмному забезпеченні, наприклад, ... EvilSin225 Андрій Терехов [email protected]Комп'ютерні технології

Аварійний дамп пам'яті

Всі windows-системи при виявленні фатальної помилкироблять аварійний дамп (знімок) вмісту оперативної пам'яті та зберігає його на жорсткий диск. Існують три типи дампи пам'яті:

Повний дамп пам'яті зберігає весь вміст оперативної пам'яті. Розмір знімка дорівнює розміру оперативної пам'яті + 1 Мб (заголовок). Використовується дуже рідко, оскільки в системах з великим обсягом пам'яті розмір дампи буде занадто великим.

Дамп пам'яті ядра – зберігає інформацію оперативної пам'яті, що стосується лише режиму ядра. Інформація режиму користувача не зберігається, оскільки не несе в собі інформації про причину краху системи. Об'єм файлу дампа залежить від розміру оперативної пам'яті та варіюється від 50 Мб (для систем із 128 Мб оперативної пам'яті) до 800 Мб (для систем із 8 Гб оперативної пам'яті).

Малий дамп пам'яті (міні дамп) містить досить невелику кількість інформації: код помилки з параметрами, список драйверів завантажених в оперативну пам'ять на момент краху системи і т.д., але цих відомостей достатньо, для визначення збійного драйвера. Ще однією перевагою цього виду дампа є невеликий розмір файлу.

Налаштування системи

Для виявлення драйвера, що викликав синій екран, нам достатньо буде використовувати малий дамп пам'яті. Для того, щоб система при краху зберігала міні дамп необхідно виконати такі дії:

Виконавши всі маніпуляції, після кожного BSoD у папці C:WINDOWSMinidump буде зберігатися файл з розширенням.dmp. Раджу ознайомитись із матеріалом «Як створити папку». Також можна встановити галочку на “Замінити існуючий файлдампа”. У цьому випадку кожен новий аварійний дамп буде записуватися поверх старого. Я не раджу включати цю опцію.

Аналіз аварійної дампи пам'яті за допомогою програми BlueScreenView

Отже, після появи синього екрану смерті, система зберегла новий аварійний дамп пам'яті. Для аналізу дампа рекомендую використовувати програму BlueScreenView. Її можна безкоштовно завантажити тут. Програма досить зручна та має інтуїтивний інтерфейс. Після її встановлення перше, що потрібно зробити - це вказати місце зберігання дампів пам'яті в системі. Для цього необхідно зайти в пункт меню Options і вибрати Advanced Options. Вибираємо радіокнопку “Load from the following Mini Dump folder” та вказуємо папку, у якій зберігаються дампи. Якщо файли зберігаються в папці C:WINDOWSMinidump, можна натиснути кнопку “Default”. Натискаємо OK та потрапляємо в інтерфейс програми.

Програма складається із трьох основних блоків:

У блоці списку дамп пам'яті (на малюнку позначений цифрою 2) вибираємо дамп, що цікавить нас, і дивимося на список драйверів, які були завантажені в оперативну пам'ять (на малюнку позначений цифрою 3). Рожевим кольоромпофарбовані драйвера, які перебували у стеку пам'яті. Вони і є причиною появи BSoD. Далі переходьте в Головне меню драйвера, визначайте, до якого пристрою чи програми вони належать. В першу чергу звертайте увагу на не системні файлиадже системні файли в будь-якому випадку завантажені в оперативній пам'яті. Легко зрозуміти, що зображення збійним драйвером є myfault.sys. Скажу, що ця програма була спеціально запущена для виклику Stop помилки. Після визначення збійного драйвера необхідно його або оновити, або видалити з системи.

Для того щоб програма показувала список драйверів, що знаходяться в стеку пам'яті під час виникнення BSoDнеобхідно зайти в пункт меню “Options”, натискаючи на меню “LowerPaneMode” і вибираємо “OnlyDriversFoundInStack” (або натисніть клавішу F7), а для показу скріншота помилки вибираємо “BlueScreeninXPStyle” (F8). Щоб повернутися до списку всіх драйверів, необхідно вибрати пункт AllDrivers (F6).

Буду вдячний, якщо скористаєтеся кнопками:

Аналіз аварійних дампів windows

У разі критичної помилки система зупиняє свою роботу, відображає синій екран смерті (BSOD), інформація про помилку та вміст пам'яті зберігається у файлі підкачування. При подальшому завантаженні системи, на основі збережених даних, створюється аварійний дамп з налагоджувальною інформацією. У системному журналі подій створюється запис про критичну помилку.

Якщо критична помилка виникла на ранній стадії завантаження системи або в результаті помилки відбулася відмова дискової підсистеми, аварійний дамп не буде збережено.

Аварійний дамп може бути проаналізований за допомогою утиліти BlueScreenView або системного відладчика WinDbg (Debugging Tools for windows).

Аналіз аварійного дампа утилітою BlueScreenView

Найпростішим інструментом для аналізу аварійних дампівє утиліта BlueScreenView від NirSoft.

Завантажуємо програму із сайту розробника.

BlueScreenView сканує папку з мінідампами та відображає інформацію про знайдені відмови.

По кожній відмові відображається дата, дані про помилку та драйвер, який імовірно викликав відмову.

У нижній частині вікна відображається список завантажених драйверів. Модулі, до яких виконувалося звернення в момент відмови, виділені кольором, на них слід звернути особливу увагу, вони можуть бути причиною відмови.

за подвійному клікувідображається додаткова інформація.

Аналіз аварійної дампи відладчиком WinDbg

За допомогою WinDbg з аварійного дампа можна витягнути детальнішу інформацію, включаючи розшифровку стека викликів.

Установка Debugging Tools for windows (WinDbg)

Microsoft розповсюджує WinDbg лише у складі SDK, завантажити веб-установник можна на сторінці завантаження центру розробки.

Для аналізу аварійних дампів встановлення SDKне вимагається. Завантажити Debugging Tools for windows (WinDbg) окремим пакетом можна тут чи тут.

Завантажуємо та встановлюємо WinDbg для вашої версії windows. Версія для windows 7 працює також у windows XP і windows Vista.

Для Windows 10 потрібно WinDbg версії 10.0.10586.567. Завантажуємо ізольований пакет SDK для windows 10. Буде завантажений веб-установник. При установці відключаємо всі компоненти, крім відладчика.

Після встановлення коригуємо ярлик для запуску WinDbg. У властивостях ярлика встановлюємо прапорець запуску від імені адміністратора. Також, як робочої папки, задаємо: %SystemRoot%Minidump.

Налаштування символів налагодження

Відлагоджувальні символи містять символічні імена функцій з вихідного коду. Вони необхідні для розшифровки та інтерпретації аварійного дампа.

При першому запуску WinDbg, необхідно вказати шлях до символів налагодження, для цього відкриваємо меню File, Symbol File Path, або використовуємо комбінацію Ctrl+S.

Наступним рядком включаємо завантаження символів налагодження з мережі, задаємо локальний шлях для збереження файлів і адресу для завантаження з інтернету:

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

Якщо система не підключена до Інтернету, пакет для встановлення символів можна завантажити на сторінці завантаження пакетів символів windows, центру розробки Microsoft.

Аналіз аварійної дампи

Запускаємо WinDbg.

У меню вибираємо File, Open Crash Dump, або натискаємо Ctrl+D.

Вказуємо шлях до дампи %SystemRoot%MEMORY.DMP або %SystemRoot%Minidumpфайл.dmp.

Для отримання детальної інформаціївиконуємо команду:

Дебаггер сам вам запропонує її виконати, достатньо навести покажчик миші на посилання і натиснути.

В результаті отримуємо наступний висновок:

************************************************** ***************************** * * * Bugcheck Analysis * * * ************* ************************************************** **************** Тип помилки: KMODE_EXCEPTION_NOT_HANDLED (1e) Коментар до помилки: This is a very common bugcheck. Зазвичай exception address pinpoints the driver/function that caused the problem. Always note this address as well as the link date of the driver/image that contains this address. Arguments: Аргументи помилки: Arg1: 00000000000000000, Висновок коду, що не було Arg2: 0000000000000000, address that the exception exc00 at 00 0000000000000000, Parameter 1 of exception Debugging Details: —— ———— EXCEPTION_CODE: (Win32) 0 (0) - . FAULTING_IP: +3332313336383065 00000000`00000000 ?? ??? EXCEPTION_PARAMETER1: 0000000000000000 EXCEPTION_PARAMETER2: 000000000000000 ERROR_CODE: (NTSTATUS) 0 — STATUS_WAIT_0 BUGCHECK_STR: 0x1E_0CU VER_FAULT Процес, що спричинив помилку: PROCESS_NAME: VirtualBox.exe CURRENT_IRQL: 2 EXCEPTION_RECORD: fffff80000ba24d8 — (.exr 0xfffff80000ba24d8) ExceptionAddress: fffff80003 !DbgBreakPoint) ExceptionCode: 80000003 (Break instruction exception) ExceptionFlags: 00000000 NumberParameters: 1 Parameter: 0000000000000000 TRAP_FRAME: fffff8800 0) NOTE: Trap frame не містить all registers. Деякий регістр значення можуть бути байдужі або неправильні. rax=0000000000142940 rbx=0000000000000000 rcx=fffffa80055be690 rdx=000000000009018 rsi=000000000000000 0 00034d8a71 rsp=fffff80000ba2718 rbp=fffff88006fa0000 r8=000000000002274 r9=11d0851b22c6ac61 r10=fffff80000 =0000000000000000 r13=0000000000000000 r14=0000000000000000 r15= 0000000000000000 iopl=0 nv up ei pl nz ac po nc nt!DbgBreakPoint+0x1: fffff800`034d8a71 _TEXT: Стек викликів: fffff800`00ba15b8 fffff800`034d85fe: fffffa80`03c05530 00000000`ffffffff fffff800 `00ba1d30 fffff800`0350c830: nt!KeBugCheck 24d8: nt!KiKernelCalloutExceptionHandler+0xe 00ba24d8 fffff800`03464000: nt!RtlpExecuteHandlerForException+0xd fffff800`00ba1620 fffff800`0351c361: fffff800`00ba24d8 fffff80000 000`00142940: nt!RtlDispatchException+0x415 fffff800`00ba1d00 fffff800`034e02c2: fffff800`00ba24d8 fffffa80`07149010 fffff800` 00ba2580 00000000`00000000: nt!KiDispatchException+0x135 fffff800`00ba23a0 fffff800`034de0f4: 00000000`00000016 0000000000 001 00000000`00000000: nt! KiExceptionDispatch+0xc2 fffff800`00ba2580 fffff800`034d8a71: fffff880`05861446 00000000`df029940 fffff880`02f45bec 00000000 ff800`00ba2718 fffff880`05861446: 00000000`df029940 fffff880`02f45bec 00000000`deee7000 fffff880`01229f06: nt! DbgBreakPoint+0x1 fffff800`00ba2720 00000000`df029940: fffff880`02f45bec 00000000`deee7000 fffff880`01229f06 fffffa80`05 00ba2728 fffff880`02f45bec: 00000000`deee7000 fffff880`01229f06 fffffa80`05635af8 00000000`00000000: 0xdf02990 00000000`deee7000: fffff880`01229f06 fffffa80`05635af8 00000000`00000000 00000000`00000003: VBoxDrv+0x6bec fff08 fffffa80`05635af8 00000000`00000000 00000000`00000003 fffff880`05865913: 0xdeee7000 fffff800`00ba2740 0000000 00000001 00000000`00000006 00000000`00000001 fffff800`00ba2800: CLASSPNP!ClasspServiceIdleRequest+0x26 STACK_COMMAND: kb FOLLOWUP_IP5 ??? SYMBOL_STACK_INDEX: 8 SYMBOL_NAME: cmudaxp+25446 FOLLOWUP_NAME: MachineOwner Драйвер з помилкою: MODULE_NAME: cmudaxp IMAGE_NAME: cmudaxp.sys DEBUG_FLR_IMAGE_TIMESTAMP: 47 0_cmudaxp+25446 BUCKET_ID: X64_0x1E_0_cmudaxp+25446 Followup: MachineOwner ———

Отримання інформації про проблемний драйвер

Якщо вдалося виявити драйвер, у якому виникла помилка, ім'я драйвера буде відображено в полях MODULE_NAME та IMAGE_NAME.

Щоб отримати шлях до файлу та іншу інформацію, клацаємо посилання на модуль:

start end module name fffff880`0583c000 fffff880`059ef000 cmudaxp T (no symbols) Виробник: image path: SystemRootsystem32driverscmudaxp.sys Image name: cmudaxp.sys 06A45) CheckSum: 0013077F ImageSize: 001B3000 Translations: 0000.04b0 0000.04e4 0409.04b0 0409.04e4

Якщо повний шлях до драйвера не вказано, використовується папка %SystemRoot%system32drivers.

Знаходимо вказаний файл, та вивчаємо його властивості.

Оновлюємо проблемний драйвер.

Апаратні причини виникнення критичних помилок

Джерелом критичних помилок нерідко бувають несправності в дисковій підсистемі або підсистемі пам'яті.

Діагностика несправностей диска

У разі помилок дискової підсистеми аварійний дамп може не зберігатися.

Щоб виключити проблеми з диском, перевіряємо системний журналподій на наявність помилок читання та запису на диск.

Перевіряємо параметри S.M.A.R.T жорсткого диска, отримати їх можна, наприклад, за допомогою SpeedFan.

Особливу увагу звертаємо на параметри: Current Pending Sector Count і Uncorrectable Sector Count, ненульові значення цих параметрів сигналізують про несправність диска.

Ненульове значення параметра: UltraDMA CRC Error Count сигналізує про проблему з SATA-кабелем.

Докладніше про параметри S.M.A.R.T. читаємо у статті Вікіпедії.

Діагностика несправностей пам'яті

Проблеми з пам'яттю нерідко можуть спричинити найрізноманітніші глюки, включаючи різні сині екрани, зависання, аварійне завершення програм, пошкодження реєстру, пошкодження файлової системита даних.

Виявити проблеми з пам'яттю можна за допомогою утиліти Memtest86+.

Починаючи з Windows Vista, у системі є свій тест пам'яті. Для його запуску натискаємо "Пуск", у рядку пошуку набираємо "пам'яті", вибираємо "Засіб діагностики пам'яті windows".

У деяких випадках проблеми з пам'яттю можуть бути усунені оновленням BIOS.

Налаштування параметрів збереження аварійної дампи

Для зміни параметрів збереження аварійного дампа натискаємо кнопку "Пуск", клацаємо на "Комп'ютер" правою кнопкоюмиші, у контекстному меню вибираємо «Властивості». У вікні "Система" зліва вибираємо "Додаткові параметри системи", у групі "Завантаження та відновлення" натискаємо кнопку "Параметри".

Докладніше про дампи пам'яті читаємо тут.

Синій екран смерті - що робити і як визначити помилку

Під час виникнення катастрофічної помилки, ОС windows сповіщає свого користувача про те, що сталося різними звуковими та текстовими сигналами. Завдяки їм можна дізнатися конкретніше про помилку та виправити її. Однак, у більшості випадків, власники ПК не запам'ятовують їх або просто не знають, що вони означають. Система навпаки робить аварійний знімок помилки, більш відомий як дамп, і зберігає його на жорсткому диску. Саме в ньому міститься вся інформація про поломку.

Типи дампа

Розрізняють три типи дампи:

Щоб система могла зберігати малий дамп, необхідно встановити певні параметри.

Для ОС windows 7 та windows XP

Тиснемо «Пуск», правою кнопкою «Комп'ютер» та вибираємо «Властивості».

Переходимо до розділу "Додаткові параметри системи".

З'явиться вікно «Властивості системи». У вкладці «Додатково» у розділі «Завантаження та відновлення» тиснемо «Параметри».

Вибираємо "Малий дамп пам'яті" і тиснемо "Ок" для збереження змін.

Аналіз малого дампа за допомогою програми Blue Screen View

Програма Blue Screen View завантажується у вигляді архіву тут і не потребує встановлення. Щоб з її допомогою визначити причину збою системи, виконуємо такі дії.

Запускаємо в архіві програму, яка ідентична назві програми.

Відкриється вікно софту. Інтерфейс простий, проте, англійською. Насамперед вказуємо місце збереження малого дампа. Тиснемо Options і вибираємо Advanced Options.

Ставимо позначку біля першого розділу "Load from the following Mini Dump folder" і вказуємо папку, де знаходиться знімок помилки. Якщо спочатку в налаштуваннях системи був встановлений малий дамп, програма сама вкаже шлях до знімку C:WINDOWSMinidump. Тиснемо «Ок», щоб потрапити в інтерфейс програми.

Блок під цифрою 1 – це список аварійних дампів, зроблених системою. Під цифрою 2 розміщуються знімки та перелік драйверів.

Рожевим у списку позначені драйвера, які є причиною збою системи.

Якщо у вас немає списку з драйверами, тиснемо Options. Переходимо до LowerPaneMode і вибираємо OnlyDriversFoundInStack.

Визначивши, який драйвер дав збій, усуваємо проблему.

Як за допомогою дампа пам'яті визначити драйвер, що викликає BSOD

Причиною критичних помилок windows, що супроводжуються синіми екранами (BSOD), часто є драйвер - знову встановлений або пошкоджений. Визначивши, який саме драйвер є причиною помилки, можна приступати до усунення проблеми: оновити драйвер, відкотитися до більш ранньої версії, повторно інсталювати або видалити програму, яка встановила драйвер тощо. Не завжди назва драйвера відображається на синьому екрані. Однак існує дуже простий спосіб, що дозволяє за допомогою дампа пам'яті визначити проблемний драйвер за кілька хвилин.

Крок 1 - Увімкнення запису дампів пам'яті

Спочатку потрібно переконатися, що запис дампів включено. Для цього потрібно відкрити властивості системи, натиснувши комбінацію клавіш Win+Pause, у Vista клацнути посилання Додаткові параметри системи, перейти на вкладку Додатково, і нарешті натиснути кнопку Завантаження та відновлення.

Малих дампів пам'яті має бути достатньо для наших цілей.

Зверніть увагу на шлях до папки, куди вони зберігатимуться у разі виникнення критичної помилки.

Тепер ви можете запакувати файл в архів, прикріпити його до повідомлення у форумі Усунення критичних помилок windows і почекати, поки вам хтось повідомить назву проблемного драйвера

Крок 2 - Завантаження та встановлення діагностичних засобів

Це не так страшно, як можна подумати 🙂

Крок 3 - Аналіз дампа пам'яті

Наразі все зводиться до виконання однієї команди. Відкрийте командний рядок і перейдіть до папки, до якої ви розпакували kdfe.cmd. Запустіть файл, вказавши як параметр шлях до файлу дампа пам'яті (у прикладі нижче файл називається Mini1110307-01.dmp)

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

За хвилину ви побачите результат.

Драйвер, який спричинив помилку, визначено!

Додаткові ресурси

Всі Windows-системи при виявленні фатальної помилки роблять аварійний дамп (знімок) вмісту оперативної пам'яті та зберігає його на жорсткому диску. Існують три типи дампи пам'яті:

Повний дамп пам'яті зберігає весь вміст оперативної пам'яті. Розмір знімка дорівнює розміру оперативної пам'яті + 1 Мб (заголовок). Використовується дуже рідко, оскільки в системах з великим обсягом пам'яті розмір дампи буде занадто великим.

Дамп пам'яті ядра – зберігає інформацію оперативної пам'яті, що стосується лише режиму ядра. Інформація режиму користувача не зберігається, оскільки не несе в собі інформації про причину краху системи. Об'єм файлу дампа залежить від розміру оперативної пам'яті та варіюється від 50 Мб (для систем із 128 Мб оперативної пам'яті) до 800 Мб (для систем із 8 Гб оперативної пам'яті).

Малий дамп пам'яті (міні дамп) містить досить невелику кількість інформації: код помилки з параметрами, список драйверів завантажених в оперативну пам'ять на момент краху системи і т.д., але цих відомостей достатньо, для визначення збійного драйвера. Ще однією перевагою цього виду дампа є невеликий розмір файлу.

Налаштування системи

Для виявлення драйвера, що викликав, нам достатньо буде використовувати малий дамп пам'яті. Для того, щоб система при краху зберігала міні дамп необхідно виконати такі дії:

Для Windows XP Для Windows 7
  1. Мій комп'ютер Властивості
  2. Перейдіть на вкладку Додатково;
  3. Параметри;
  4. В полі Запис налагоджувальної інформації обираємо Малий дамп пам'яті (64 Кб).
  1. Правою клавішею миші натиснути на піктограму Комп'ютерз контекстного менюВиберіть Властивості(або комбінація клавіш Win + Pause);
  2. У лівому меню клацаємо на пункт Додаткові параметри системи;
  3. Перейдіть на вкладку Додатково;
  4. У полі Завантаження та відновлення необхідно натиснути кнопку Параметри;
  5. В полі Запис налагоджувальної інформаціїобираємо Малий дамп пам'яті (128 Кб).

Зробивши всі маніпуляції, після кожного BSoD у папці C:\WINDOWS\Minidump буде зберігатися файл з розширенням.dmp. Раджу ознайомитись із матеріалом " ". Також можна встановити галочку на “ Замінити існуючий файл дампа”. У цьому випадку кожен новий аварійний дамп буде записуватися поверх старого. Я не раджу включати цю опцію.

Аналіз аварійної дампи пам'яті за допомогою програми BlueScreenView

Отже, після появи синього екрану смерті, система зберегла новий аварійний дамп пам'яті. Для аналізу дампа рекомендую використовувати програму BlueScreenView. Її можна безкоштовно скачати. Програма досить зручна та має інтуїтивний інтерфейс. Після її встановлення перше, що потрібно зробити - це вказати місце зберігання дампів пам'яті в системі. Для цього необхідно зайти до пункту меню “ Options” та вибрати “ AdvancedOptions”. Вибираємо радіокнопку “ LoadfromthefollowingMini Dumpfolder” та вказуємо папку, в якій зберігаються дампи. Якщо файли зберігаються в папці C:\WINDOWS\Minidump можна натисканням кнопки “ Default”. Натискаємо OK та потрапляємо в інтерфейс програми.

Програма складається із трьох основних блоків:

  1. Блок головного меню та панель управління;
  2. Блок списку аварійних дампів пам'яті;
  3. Залежно від вибраних параметрів може містити:
  • список усіх драйверів, що знаходяться в оперативній пам'яті до появи синього екрана (за замовчуванням);
  • список драйверів, що знаходяться в стеку оперативної пам'яті;
  • скріншот BSoD;
  • та інші значення, які ми не будемо використовувати.

У блоці списку дамп пам'яті (на малюнку позначений цифрою 2) вибираємо дамп, що цікавить нас, і дивимося на список драйверів, які були завантажені в оперативну пам'ять (на малюнку позначений цифрою 3). Рожевим кольором забарвлені драйвера, які перебували у стеку пам'яті. Вони і є причиною появи BSoD. Далі переходьте в Головне меню драйвера, визначайте, до якого пристрою чи програми вони належать. Насамперед звертайте увагу на не системні файли, адже системні файли у будь-якому випадку завантажені в оперативній пам'яті. Легко зрозуміти, що зображення збійним драйвером є myfault.sys. Скажу, що цю програму було спеціально запущено для виклику Stop помилки. Після визначення збійного драйвера необхідно його або оновити, або видалити з системи.

Для того, щоб програма показувала список драйверів, що знаходяться в стеку пам'яті під час виникнення BSoD, необхідно зайти в пункт меню “ Options” клацаємо на меню “ LowerPaneMode” і вибираємо “ OnlyDriversFoundInStack” (або натисніть клавішу F7), а для показу скріншота помилки вибираємо “ BlueScreeninXPStyle” (F8). Щоб повернутися до списку всіх драйверів, необхідно вибрати пункт “ AllDrivers” (F6).

У Windows 8 Microsoft представила новий дамп пам'яті - опція автоматичного дампа пам'яті. Цей параметр в операційній системі встановлено за промовчанням. У Windows 10 ввели новий типфайлу дампа - активний дамппам'яті. Для тих, хто не знає, у Windows 7 у нас є малий дамп, дамп ядра та повний дамппам'яті. Ви можете здивуватися, чому Microsoft вирішила створити цей новий параметрдамп пам'яті? За словами Роберта Сімпкінса, старшого інженера підтримки, автоматичний дамп пам'яті, може створити підтримку для сторінки системи у файлі конфігурації.
Система керування конфігурацією файлу підкачки відповідає за керування розміром файлу підкачки – це дозволяє уникнути зайвого запасу або розміру файлу підкачки. Ця опція введена в основному для ПК, які працюють на SSD-дисках, які зазвичай мають менший розмір, але дуже багато оперативної пам'яті.

Параметри дампа пам'яті

Головна перевага "Автоматичний дамп пам'яті" полягає в тому, що це дозволить сеансу підсистеми в диспетчері процесів автоматично зменшити файл підкачування до розміру меншого, ніж розмір оперативної пам'яті. Для тих, хто не знає, сесія диспетчера підсистеми відповідає за ініціалізацію системи, середовище запуску служб та процесів, які необхідні для входу користувача до системи. Він в основному встановлює сторінку файлів у віртуальну пам'ятьта запускає процес winlogon.exe.

Якщо ви хочете змінити параметри автоматичного дампа пам'яті, як це можна зробити. Натисніть клавіші Windows + X та виберіть — Система. Далі натисніть кнопку «Додаткові параметри системи — Advance System Settings”.

Натисніть кнопку Додаткові параметри системи.

Тут ви можете побачити меню, що випадає, де написано “Додатково”.

Тут ви можете вибрати потрібний варіант. Пропоновані варіанти:

Жодних дампів пам'яті.
Невеликий дамп пам'яті.
Дампа пам'яті ядра.
Повний дамп пам'яті.
Автоматичний дамп пам'яті. Додані до Windows 8.
Активний дамп пам'яті. Додали до Windows 10.
Розташування файлу дампа пам'яті у файлі %SystemRoot%\MEMORY.DMP.

Якщо ви використовуєте SSD дисккраще залишити його на “Автоматичний дамп пам'яті”; але якщо ви потребуєте файл аварійного дампа, то краще встановити його на "малий дамп пам'яті", з ним ви можете, якщо ви хочете, відправити його комусь, щоб він міг глянути на нього.

У деяких випадках вам, можливо, потрібно збільшити розмір файлу підкачки більше, ніж оперативна пам'ятьщоб він міг відповідати повному дампу пам'яті. У таких випадках вам потрібно створити ключ реєстру:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

він називається "LastCrashTime".

Це автоматично збільшить розмір файлу підкачування. Щоб зменшити його, пізніше ви можете просто видалити цей ключ.

У Windows 10 ввели новий файлдампа активний дамп пам'яті. Він містить лише найнеобхідніше і, отже, він меншого розміру.

Я не маю можливості протестувати його, але я створив цей ключ і виконав моніторинг розміру файлу підкачки. Я знаю, що рано чи пізно я отримаю критичну помилку. Тоді я перевірятиму його.

Ви можете проаналізувати дамп пам'яті Windows.dmp файлів за допомогою WhoCrashed. Утиліта WhoCrashed Home безкоштовна, в ній представлені драйвери, які були врізані на ваш комп'ютер за допомогою одного кліка. У більшості випадків вона може визначити несправний драйвер, який завдають страждання вашому комп'ютеру. Це краш-дамп аналізу системи, дампи пам'яті, і тут представлена ​​вся зібрана інформація у доступній формі.

Як правило, набір налагоджувальних інструментів відкриває аварійний дамп аналізу. За допомогою цієї утиліти вам не потрібні жодні знання та навички налагодження, щоб з'ясувати, які драйвери викликають проблеми на вашому комп'ютері.

WhoCrashed покладається пакет налагодження (програми windbg) від Microsoft. Якщо цей пакет не встановлений, WhoCrashed сама завантажуватиме і автоматично витягне цей пакет для вас. Просто запустіть програму та натисніть кнопку Аналіз. Коли у вас є WhoCrashed встановлений в системі і, якщо він несподівано скидає або закривається, програма дасть вам знати, якщо аварійний дамп увімкнено на вашому комп'ютері, і вона пропонуватиме Вам пропозиції про те, як їх включити.

Дана невелика замітка ставить за мету показати, яким же чином можна сконфігурувати систему, щоб отримати в своє розпорядження аварійний дамп пам'яті Windowsтобто дамп, який може бути створений у разі виникнення критичного збою, що характеризується появою синього екрану смерті (BSOD). Що ж таке дамп взагалі, для чого він нам потрібний і що являє собою, які проблеми він покликаний вирішити і яку інформацію містить в собі?

Дамп пам'яті (memory dump) – вміст робочої пам'ятіпроцесу, ядра або всієї операційної системи, що включає, крім робочих областей, додаткову інформаціюпро стан регістрів процесора, вміст стека та інші службові структури.

Для чого нам може знадобитися цей вміст, тобто дамп пам'яті Windows? Мабуть, найчастіше дамп пам'яті використовується вивчення причин виникнення системного збою (), який став причиною повного зупинки операційної системи. Крім того, стан пам'яті може використовуватися і для інших цілей. Немаловажний і той факт, що дамп пам'яті – це буквально єдиний спосіботримання інформації про будь-який збій! А зняття (отримання) дампа пам'яті системи - це, власне, єдиний точний спосіб отримання миттєвого відбитка (копії) вмісту фізичної пам'ятісистеми.

Чим точніше вміст дампи відображатиме стан пам'яті в момент збою, тим докладніше ми зможемо проаналізувати аварійну ситуацію. Тому вкрай важливо отримати саме актуальну копію фізичної пам'яті системи в певний момент часу, що безпосередньо передує збою. А єдиний спосіб зробити це – створити повний аварійний дамп пам'яті. Причина досить тривіальна - коли відбувається створення аварійного дампа пам'яті системи, чи в результаті збою, чи внаслідок штучно змодельованої ситуації, система в цей момент отримання управління аварійними функціями (KeBugCheckEx) перебуває в абсолютно незмінному (статичному) стані, тому між моментом виникнення збою та моментом закінчення запису даних на носій ніщо не змінює вміст фізичної пам'яті, і у оригінальному стані записується на диск. Ну це теоретично, а в житті зрідка, але трапляються ситуації, що через несправні апаратні компоненти, сам дамп пам'яті може бути пошкоджений, або в процесі запису дампа станція може підвиснути.

Переважна більшість випадків, з моменту початку процесу створення аварійного дампа пам'яті, і до моменту завершення запису вмісту пам'яті на диск, інформація в пам'яті залишається незмінною.

Теоретично, статичність (незмінність) "відбитка" пам'яті пояснюється тим, що коли викликається функція KeBugCheckEx, що виводить на екран інформацію про збій і процес створення дампи пам'яті, що стартує, система вже повністю зупинена і вміст фізичної пам'яті записано в блоки, займані на диску файлом підкачки, після цього, вже в процесі подальшого завантаження операційної системи воно скидається у файл на системному носії. Ну а практично один раз спостерігав ситуацію, коли боїться материнська платане давала зберегти дамп пам'яті: а) підвисаючи в процесі роботи логіки збереження дампа (процес не доходив до 100%); Тому, незважаючи на те, що система в момент створення дампи пам'яті вже повністю зупинена, і працює тільки аварійний код, збійне залізо може вносити свої корективи в будь-яку логіку на будь-якому етапі функціонування.
Традиційно, на початковому етапіДля збереження дампа пам'яті Windows використовуються блоки диска, виділені файлу підкачки (pagefile). Потім, після виникнення синього екрана та перезавантаження, дані переміщаються в окремий файл, а потім файл перейменовується за шаблоном, який залежить від типу дампа. Однак, починаючи з версії Windows Vista, подібний стан речей можна змінити, тепер користувачу дана можливість зберігати виділений дамп без участі файлу підкачки, поміщаючи інформацію про збій у тимчасовий файл. Зроблено це для того, щоб унеможливити помилки конфігурації, пов'язані з неправильним налаштуванням розміру та положення файлу підкачки, що часто призводило до проблем у процесі збереження дампа пам'яті.
Давайте подивимося, які ж різновиди дамп дозволяє нам створювати операційна система Windows:

  • Дамп пам'яті процесу (додатки);
  • Дамп пам'яті ядра;
  • Повний дамп пам'яті (Дамп доступної частини фізичної пам'яті системи).

Усі аварійні дампи можна розділити на дві основні категорії:

  • Аварійні дампи з інформацією про виключення, що виникло. Зазвичай створюються в автоматичному режимі, коли у додатку/ядрі виникає необроблений виняток (unhandled exception) і, може бути викликаний системний (вбудований) отладчик. У цьому випадку інформація про виключення записується в дамп, що полегшує визначення типу виключення та місця виникнення при подальшому аналізі.
  • Аварійні дампи без інформації про виключення. Зазвичай створюються користувачем вручну, коли необхідно створити миттєвий знімок процесу для подальшого аналізу. Аналіз цей має на увазі не визначення типу виключення, оскільки ніякого винятку і не виникало, а аналіз зовсім іншого роду, наприклад, вивчення структур даних процесу та інше.

Конфігурація дампа пам'яті ядра

Ви повинні бути залогінені під адміністративним обліковим записом для виконання дій, описаних у цьому розділі.

Давайте безпосередньо перейдемо до налаштування параметрів аварійного дампа пам'яті Windows. Для початку нам необхідно зайти у вікно властивостей системи одним і наведених способів:

  1. Натисніть правою кнопкою миші на піктограмі "Мій комп'ютер" - "Властивості" - "Додаткові параметри системи" - "Додатково".
  2. Кнопка "Пуск" - "Панель керування" - "Система" - "Додаткові параметри системи" - "Додатково".
  3. Поєднання клавіш "Windows" + "Pause" - "Додаткові параметри системи" - "Додатково".

  4. control system.cpl,3
  5. Виконати у командному рядку(cmd):
    SystempropertiesAdvanced

Результатом описаних дій є відкриття вікна "Властивості системи" та вибір вкладки "Додатково":

Після цього в розділі "Завантаження та відновлення" ми натискаємо вибираємо "Параметри" і цим відкриваємо нове вікно під назвою "Завантаження та відновлення":

Усі параметри аварійного дампа згруповані у блоці параметрів під назвою "Відмова системи". У цьому блоці ми можемо задати такі параметри:

  1. Записати події до системного журналу.
  2. Виконати автоматичне перезавантаження.
  3. Запис налагоджувальної інформації.
  4. Дампа файл.
  5. Замінювати існуючий файл дампа.

Як бачите, багато параметрів зі списку досить тривіальні та прості у розумінні. Однак, я хотів би докладніше зупинитися на параметрі "Файл дампа". Параметр представлений у вигляді спадаючого списку, і має чотири можливі значення:

Малий дамп пам'яті (Small memory dump)

Малий дамп пам'яті (мінідамп, minidump) – це файл, який містить найменший обсяг інформації про збій. Найменший з усіх можливих дампів пам'яті. Незважаючи на очевидні мінуси, найчастіше саме мінідампи використовуються як інформація про збій для передачі постачальнику сторонніх драйверівз метою подальшого вивчення.
Склад:

  • Повідомлення про помилку.
  • Значення помилки.
  • Параметри помилки.
  • Контекст процесора (PRCB), у якому стався збій.
  • Відомості про процес та контекст ядра (EPROCESS) для процесу, що є причиною збою, з усіма його потоками.
  • Відомості про процес та контекст ядра (ETHREAD) для потоку, що є причиною збою.
  • Стек режиму ядра для потоку, що спричинив збій.
  • Список завантажених драйверів.

Розміщення: %SystemRoot%\Minidump\MMDDYY-XXXXX-NN.dmp. Де MMDDYY - місяць, день та рік відповідно, NN - порядковий номердампа.
Об'єм: Розмір залежить від розрядності операційної системи: потрібно всього 128 кілобайт для 32-розрядної і 256 кілобайт для 64-розрядної ОС у файлі підкачки (або у файлі, вказаному в DedicatedDumpFile). Оскільки виставити настільки малий розмір ми зможемо, то округляємо до 1 мегабайта.

Дамп пам'яті ядра (Kernel memory dump)

Даний тип дампа містить копію всієї пам'яті ядра на момент збою.
Склад:

  • Список виконуваних процесів.
  • Стан потоку.
  • Сторінки пам'яті режиму ядра, які знаходяться у фізичній пам'яті під час збою: пам'ять драйверів режиму ядра та пам'ять програм режиму ядра.
  • Пам'ять апаратно-залежного рівня (HAL).
  • Список завантажених драйверів.

У дампі пам'яті ядра відсутні нерозподілені сторінки пам'яті та сторінки режиму користувача. Погодьтеся, адже малоймовірно, що сторінки процесу режиму користувача будуть нам цікаві при системному збої (BugCheck), оскільки зазвичай системний збійініціюється кодом режиму ядра.

Об'єм: Варіюється залежно від розміру адресного простору ядра, виділеної операційною системою та кількості драйверів режиму ядра. Зазвичай потрібно близько третини обсягу фізичної пам'яті у файлі підкачки (або у файлі, вказаному в DedicatedDumpFile). Може змінюватись.

Повний дамп пам'яті (Complete memory dump)

Повний дамп пам'яті містить копію фізичної пам'яті (ОЗУ, RAM) в момент збою. Відповідно, до файлу потрапляє і весь вміст пам'яті системи. Це одночасно перевага і головний недолік, оскільки його розмір на деяких серверах з великим обсягом ОЗУ може виявитися суттєвим.
Склад:

  • Усі сторінки "видимої" фізичної пам'яті. Це практично вся пам'ять системи, за винятком областей, що використовуються апаратною частиною: BIOS, простір PCI та ін.
  • Дані процесів, які виконувались у системі на момент збою.
  • Сторінки фізичної пам'яті, які не відображені на віртуальний адресний простір, але можуть допомогти у вивченні причин збою.

У повний дамп пам'яті не включаються, за замовчуванням, області фізичної пам'яті, що використовується BIOS.
Розміщення: %SystemRoot%\MEMORY.DMP . Попередній дамп перезаписується.
Об'єм: У файлі підкачки (або у файлі, вказаному в DedicatedDumpFile) потрібен обсяг, що дорівнює розміру фізичної пам'яті + 257 мегабайт (ці 257 Мб діляться на якийсь заголовок + дані драйверів). Насправді ж, у деяких ОС, нижній поріг файлу підкачки можна виставити точно значення розміру фізичної пам'яті.

Автоматичний дамп пам'яті (Automatic memory dump)

Починаючи з Windows 8/Windows Server 2012, в систему введено новий тип дампа під назвою "Автоматичний дамп пам'яті", який встановлюється за замовчуванням. І тут система сама вирішує, який дамп пам'яті записати у ситуації тієї чи іншої збою. Причому логіка вибору залежить від багатьох критеріїв, у тому числі від частоти падіння операційної системи.

Після зміни конфігурації дампа пам'яті Windows може знадобитися перезавантаження комп'ютера.

Параметри реєстру

Розділ реєстру, який визначає параметри аварійного дампа:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

Параметри:

Параметр Тип Опис
AutoReboot REG_DWORD Увімкнення/вимкнення автоматичного перезавантаження у разі виникнення BSOD.
CrashDumpEnabled REG_DWORD Вид створюваної дампи.
  • 0 – не створювати дамп пам'яті;
  • 1 – повний дамп пам'яті;
  • 2 – дамп пам'яті ядра;
  • 3 – малий дамп пам'яті;
DumpFile REG_EXPAND_SZ Шлях та назва дампа пам'яті ядра та повного дампа пам'яті.
DumpFilters REG_MULTI_SZ Драйвер-фільтр у стеку драйверів дампа пам'яті. Дозволяє додавати новий функціонал на етапі створення аварійних дампів. Наприклад, шифрування вмісту дампа. Змінювати значення не рекомендується.
LogEvent REG_DWORD Запис події у системний журнал.
MinidumpDir REG_EZPAND_SZ Шлях та назва малого дампа пам'яті.
MinidumpsCount REG_DWORD Максимальна кількість малих дампів пам'яті. При перевищенні починають затиратися старіші версії.
Overwrite REG_DWORD Замінювати існуючий файл дампа. Тільки для дампа пам'яті ядра та повного дампа пам'яті.
IgnorePagefileSize REG_DWORD Ігнорує стандартний файлпідкачування як місце для тимчасового (проміжного) зберігання дампи пам'яті. Вказує необхідність записати дамп пам'яті в окремий файл. Використовується разом із опцією DedicatedDumpFile.
DedicatedDumpFile REG_EZPAND_SZ Шлях та назва тимчасового альтернативного файлудля запису дампи пам'яті. У другому проході дані все одно будуть переміщені DumpFile/MinidumpDir.

Ручне створення дампа пам'яті

Вище ми описували налаштування для автоматичного створенняаварійних дамп системи у разі виникнення критичної помилки, тобто необроблюваного виключенняу коді ядра. Але ж у реального життяКрім падіння операційної системи, існують ситуації, коли необхідно отримати дамп пам'яті системи в конкретний момент часу. Як бути у цьому випадку? Існують методи отримання миттєвої копії всієї фізичної пам'яті, наприклад, за допомогою команди.dump у відладчиках WinDbg/LiveKD. LiveKD - програма, що дозволяє запускати відладчик ядра Kd у системі, що функціонує в локальному режимі. У відладчику WinDbg також є така можливість. Однак метод отримання дампа "на льоту" не точний, оскільки дамп створюється в цьому випадку "суперечливий", так як для створення дампа потрібен час, а у разі використання відладчика режиму ядра система продовжує працювати та вносити зміни до сторінок пам'яті.

Як часто Вам доводиться бачити екран смерті Windows (BSoD)? BSoD може виникати в різних випадках: як при роботі з системою, так і в процесі завантаження операційної системи. Як визначити, чим викликана поява BSoD і усунути цю проблему? Операційна система Windows здатна зберігати дамп пам'яті при появі помилки, щоб системний адміністраторміг проаналізувати дані дампа і визначити причину виникнення BSoD.

Існує два види дампів пам'яті – малий (minidump) та повний. Залежно від налаштувань операційної системи, система може зберігати повний або малий дампи, або не робити жодних дій при виникненні помилки.

Малий дамп розташовується по дорозі %systemroot%\minidumpта має ім'я на кшталт Minixxxxxx-xx.dmp
Повний дамп розташовується по дорозі %systemroot%та має ім'я на кшталт Memory.dmp

Для аналізу вмісту дампів пам'яті слід застосовувати спеціальну утиліту- Microsoft Kernel Debugger.
Отримати програму та компоненти, необхідні для її роботи, можна безпосередньо із сайту Microsoft - Debugging Tools

При виборі відладчика слід враховувати версію операційної системи, де Вам доведеться аналізувати дампи пам'яті. Для 32-розрядної ОС необхідна 32-бітова версія налагоджувача, а для 64-розрядної ОС переважно використовувати 64-бітову версію відладчика.

Окрім самого пакету Debugging Tools for Windows, також знадобляться набір символів налагодження - Debugging Symbols. Набір символів налагодження специфічний для кожної ОС, на якій був зафіксований BSoD. Тому доведеться завантажити набір символів для кожної ОС, аналізувати роботу якої Вам доведеться. Для 32-розрядної Windows XP знадобиться набір символів для Windows XP 32-біт, для 64-розрядної ОС знадобиться набір символів для Windows XP 64-біт. Для інших ОС сімейства Windows набори символів підбираються за таким же принципом. Завантажити символи налагодження можна звідси . Встановлювати їх рекомендується за адресою %systemroot%\symbols

Після встановлення відладчика та налагоджувальних символів, запускаємо відладчик. Вікно відладчика після запуску виглядає так.

Перед аналізом вмісту дампа пам'яті потрібно провести невелике налаштуваннявідладчика. Конкретно - повідомити програму, яким шляхом слід шукати налагоджувальні символи. Для цього вибираємо в меню File > Symbol File Path… Натискаємо кнопку Browse… і вказуємо папку, в яку ми встановили налагоджувальні символи для дампа пам'яті, що розглядається.

Можна запитувати інформацію про необхідні налагоджувальні символи прямо через Інтернет, з публічного сервера Microsoft. Таким чином, у вас буде найновіша версія символів. Зробити це можна так - в меню File > Symbol File Path… вводимо: SRV*%systemroot%\symbols*http://msdl.microsoft.com/download/symbols

Після вказівки шляху до символів налагодження, вибираємо в меню File > Save workspace і підтверджуємо дію натисканням на кнопку OK.

Щоб приступити до аналізу дампа пам'яті, вибираємо в меню File > Open Crash Dump і вибираємо необхідний для розгляду файл.

Система проведе аналіз вмісту, після якого видасть результат про передбачувану причину помилки.

Команда!analyze -v, дана відладчику в командному рядку, виведе більш детальну інформацію.

Завершити налагодження можна, вибравши пункт меню Debug > Stop Debugging

Таким чином, використовуючи пакет Debugging Tools for Windows, завжди можна отримати достатньо повне уявленняпро причини виникнення системних помилок