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

💖 Подобається?Поділися з друзями посиланням

Усі 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 встановлений в системі і, якщо він несподівано скидає або закривається, програма дасть вам знати, якщо аварійний дамп увімкнено на вашому комп'ютері, і вона пропонуватиме Вам пропозиції про те, як їх включити.

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

REG_DWORD-параметр AutoRebootзі значенням 0x1(опція Виконати автоматичне перезавантаженнядопоміжного вікна вікна Властивості системи);

REG_DWORD-параметр CrashDumpEnabledзі значенням 0x0якщо дамп пам'яті не створюється; 0x1Повний дамп пам'яті; 0x2Дамп пам'яті ядра; 0x3Малий дамп пам'яті (64КБ);

REG_EXPAND_SZ-параметр DumpFileзі значенням %SystemRoot%\MEMORY.DMP(Місце зберігання файлу дампа);

REG_DWORD-параметр LogEventзі значенням 0x1(опція Записати подію у журналвікна);

REG_EXPAND_SZ-параметр MinidumpDirзі значенням %SystemRoot%\Minidump(Опція);

REG_DWORD-параметр Overwriteзі значенням 0x1(опція Замінювати існуючий файлвікна);

REG_DWORD-параметр SendAlertзі значенням 0x1(опція Надіслати адміністративне сповіщеннявікна).

Як система створює файл аварійної пам'яті

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

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

Спочатку ядро ​​системи перевіряє стан кожного компонента, задіяного у процесі збереження дампа. Це робиться для того, щоб під час прямого запису в сектори диска не пошкодити дані, що лежать поза файлом. Розмір файлу має бути на 1 МБбільше розміру фізичної пам'яті, тому що при записі інформації створюється заголовок, в якому містяться сигнатура аварійного і значення декількох найважливіших змінних ядра системи. Заголовок займає менше 1 МБ, але операційна система може збільшувати (або зменшувати) розмір файлу підкачки не менше ніж на 1 МБ.

Після завантаження системи Session Manager (Диспетчер сеансу Windows NT; дискова адреса – \WINDOWS\system32\smss.exe) ініціалізує файли системи, використовуючи для створення кожного файлу власну функцію NtCreatePagingFile. NtCreatePagingFileвизначає, чи існує файл, що ініціалізується, і якщо так, то є в ньому заголовок . Якщо заголовок є, то NtCreatePagingFileпосилає в Session Managerспеціальний код. Після цього Session Managerзапускає процес Winlogon (Програма входу в систему Windows NT; дискова адреса – \WINDOWS\system32\winlogon.exe), який повідомляється про існування аварійного . Winlogonзапускає програму SaveDump (Програма збереження копії пам'яті Windows NT; дискова адреса – \WINDOWS\system32\savedump.exe), яка аналізує заголовок та визначає подальші діїв аварійній ситуації

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

Зберігши файл , програма SaveDumpробить запис про створення аварійного у журналі подій , наприклад: «Комп'ютер був перезавантажений після критичної помилки: 0x100000d1 (0xc84d90a6, 0x00000010, 0x00000000, 0xc84d90a6). Копію пам'яті збережено: C:\WINDOWS\Minidump\Mini060309-01.dmp» .

Повний дамп пам'ятізаписує весь вміст пам'яті при виникненні непереборної помилки. Для цього варіанта необхідно мати на завантажувальному томі файл підкачки, розмір якого дорівнює обсягу всієї фізичної оперативної пам'яті плюс 1 МБ. За замовчуванням повний пам'яті записується у файл %SystemRoot%\Memory.dmp. При виникненні нової помилки та створенні нового файлу повногопам'яті (або пам'яті ядра) попередній файл замінюється (перезаписується). Параметр Повний дамп пам'ятінедоступний на , на яких встановлена ​​32-бітна операційна система та 2 або більше оперативної пам'яті.

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

Дамп пам'яті ядразаписує лише пам'ять ядра, завдяки чому процес запису даних у журнал при раптовій зупинці системи протікає швидше. Залежно від обсягу фізичної пам'ятіу цьому випадку для файлу підкачки потрібно від 50 до 800 МБабо третина фізичної пам'яті на завантажувальному томі. пам'яті ядра записується у файл %SystemRoot%\Memory.dmp.

Цей не включає нерозподілену пам'ять або пам'ять, виділену для програм режиму. Він включає тільки пам'ять, виділену для ядра та апаратно-залежного рівня ( HAL) в Windows 2000та пізніших версіях системи, а також пам'ять, виділену для режиму ядра та інших програм режиму ядра. У більшості випадків такий є найкращим варіантом. Він займає набагато менше місця порівняно з повним пам'яті, при цьому виключаючи лише ті сектори пам'яті, які, швидше за все, не пов'язані з помилкою.

У разі виникнення нової помилки та створення нового файлу пам'яті ядра попередній файл замінюється.

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

Файли малого пам'яті містять такі відомості:

– повідомлення про непереборну помилку, її параметри та інші дані;

- Список завантажених;

- контекст ( PRCB), у якому стався збій;

EPROCESS) для процесу, що спричинив помилку;

– відомості про процес та контекст ядра ( ETHREAD) для потоку, що спричинив помилку;

– стек дзвінків у режимі ядра для потоку, що спричинив помилку.

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

При виникненні наступної помилки та створенні другого файлу малого пам'яті попередній файл зберігається. кожному додатковий файлдається унікальне ім'я. Дата закодована на ім'я файлу. Наприклад, Mini051509-01.dmp- це перший файл пам'яті, створений 15 травня 2009 р. Список усіх файлів малого пам'яті зберігається в папці %SystemRoot%\Minidump.

Операційна система , безсумнівно, значно надійніше за попередні версії, – завдяки зусиллям як розробників Microsoft, так і розробників апаратного , так і розробників прикладного програмного . Однак аварійні ситуації – усілякі збої та крахи системи – неминучі, і від того, чи володієзнаннями та навичками у їх усуненні, залежить, доведеться йому витратити кілька хвилин на пошук та усунення несправності (наприклад, на оновлення/налагодження або переустановку прикладної програми, що викликає збій), – або кілька годин на переустановку/налаштування операційної системита прикладного програмного (що не гарантує відсутності збоїв та крахів надалі!).

Багато адміністраторів нехтують аналізом аварійних дампів Windows Вважаючи, що працювати з ними занадто важко. Важко, але можна: навіть якщо, наприклад, аналіз одного з десяти виявиться успішним, - зусилля, витрачені на освоєння найпростіших прийомів аварійних аналізу , будуть не марні!

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

Що таке дамп пам'яті у Windows

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

Існує кілька видів дампів пам'яті:

Малий дамп(Small Memory Dump) – зберігає мінімальний об'єм ОЗУ, де знаходяться відомості щодо критичних помилок (BSoD) та компонентів, які були завантажені під час роботи системи, наприклад, драйвера, програми. MiniDumpзберігається шляхом C:\Windows\Minidump.

Повний дамп(Complete Memory Dump) – зберігається повний обсяг ОЗП. Це означає, що розмір файлу дорівнюватиме обсягу оперативної пам'яті. Якщо місця на диску мало, проблематично зберегти, наприклад, 32 Гб. Також трапляються проблеми зі створенням файлу дампа пам'яті більше 4 Гб. Цей видвикористовується дуже рідко. Зберігатися на шляху C:\Windows\MEMORY.DMP.

Дамп пам'яті ядра– зберігається лише інформація, що стосується ядра системи.

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

Інформація у реєстрі

Якщо заглянути в реєстр Windows, можна знайти деякі корисні параметри знімків. Клацаємо клавіші Win+R, вводимо команду regeditі відкриваємо такі гілки:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

У цій гілці користувач виявить такі параметри:

  • AutoReboot– активація або вимкнення перезавантаження після створення синього екрана смерті (BSoD).
  • DumpFile- Назва видів дампів та розташування.
  • CrashDumpEnabled- Номер створюваного файлу, наприклад, число 0 - дамп не створюється; 1 - створення повного дампа; 2 – створення дампа ядра; 3 - створення малого дампа.
  • DumpFilters– Дозволяє додати нові функції перед створенням знімка. Наприклад, шифрування файлу.
  • MinidumpDir- Назва малого дампа та його розташування.
  • LogEvent– активація запису відомостей до системного журналу.
  • MinidumpsCount- Задати кількість створюваних малих дампів. (Перевищення цієї кількості знищуватиме старі файли та замінюватиме їх).
  • Overwrite- Функція для повного дампа або системного. При створенні нового знімка попередній завжди замінюватиметься на новий.
  • DedicatedDumpFile– створення альтернативного файлу знімка та вказівка ​​його шляху.
  • IgnorePagefileSize– використовується для тимчасового розташування знімка без використання файлу підкачки.

Як це працює

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

Зазвичай файл зберігається у виділеному для файлу підкачки блоці жорсткого дискаПісля появи BSoD файл перезаписується в той вигляд, який користувач сам і налаштував (Малий, повний або дамп ядра). Хоча, в сучасних ОС участь файлу підкачування не обов'язково.

Як увімкнути дампи

У Windows 7:

У Windows 8 та 10:

Тут процес трохи схожий, у відомості про систему можна потрапити так само, як у Windows 7. У «Десятці» обов'язково відкриваємо « Цей комп'ютер», натискаємо по вільному місцю правою кнопочкою мишки та вибираємо « Властивості». Інакше туди можна потрапити через панель керування.

Другий варіант для Windows 10:


Слід зазначити, що у нових версіях Windows 10 з'явилися нові пункти, яких не було у «сімці»:

  • Малий дамппам'яті 256 КБ – мінімальні дані про збій.
  • Активний дамп– з'явився в десятій версії системи та зберігає лише активну пам'ять комп'ютера, ядра системи та користувача. Рекомендується використовувати на серверах.

Як видалити дамп

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

Якщо жодних пунктів виявлено не було, можливо, дампи не були включені.

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

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

Завантажуємо з офіційного сайту Microsoft цю програмуна кроці 2, де описано « ВстановленняWDK» - https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk.

Щоб працювати з програмою ще знадобиться спеціальний пакет символів налагодження. Він називається Debugging Symbols, Раніше його можна було завантажити з сайту Microsoft, але тепер вони відмовилися від цієї ідеї і доведеться використовувати функцію програми File - Symbol File Path», куди слід вписати наступний рядок та натиснути ОК:

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

Якщо не спрацювало, пробуємо ось цю команду:

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

Знову натискаємо пункт "File" і вибираємо опцію "Save Workspace".

Утиліта налаштована. Залишається вказати шлях до файлів дампів пам'яті. Для цього натискаємо File і клацаємо опцію « OpenCrashDump». Розташування всіх дамп вказано на початку статті.

Після вибору закінчиться аналіз і проблемний компонент буде автоматично виділено. Для отримання більшої кількості інформації в цьому віконці можна ввести таку команду: !analyze -v

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

Завантажити інструмент безкоштовно можна з цього сайту - http://www.nirsoft.net/utils/blue_screen_view.html. Встановлення не потребує якихось навичок. Використовується лише у Windows 7 та вище.

Запускаємо та налаштовуємо. Натисніть «Установки» (Options) – « Додаткові параметри»(Advanced Options). Виберіть перший пункт « Завантажувати МініДампи з цієї папки» і вказуємо каталог - C:WINDOWSMinidump. Хоча можна просто натиснути кнопку "За замовчуванням". Натискаємо ОК.

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

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

Тепер натискаємо «Файл» та вибираємо, наприклад, пункт « Знайти у Google код помилки + драйвер». Якщо знайшли потрібний драйвер, встановіть та перезавантажте комп'ютер. Можливо, помилка зникне.

Або як його ще називають BSOD, може неабияк зіпсувати життя як комп'ютеру так і серверу, а ще з'ясувалося і віртуальній машині. Сьогодні розповім як аналізувати синій екран dump memory в Windows, так як правильна діагностика та отримання причини через що не працює ваша система, 99 відсотків її вирішення, тим більше системний інженер, просто зобов'язаний вміти це робити, та й ще в найкоротші терміни, так як від цього бізнес може в через простою сервісу, втрачати купу грошей.

BSOD розшифровка

Давайте спочатку розберемо, що означає ця абревіатура, BSOD від англійської Blue Screen of Death або ще режим STOP помилки.

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

Як налаштувати створення memory dump

за замовчуванням windowsпри синьому екрані створює аварійний дамп файл memory.dmp, зараз покажу як він налаштовується і де зберігається, я показуватиму на прикладі Windows Server 2008 R2, так як у мене нещодавно було завдання з вивчення питання синього екрану у віртуальній машині. Для того щоб дізнатися, де налаштований dump memory windows, відкриваємо пуск і клацаємо правим кліком по значку Комп'ютер і вибираємо властивості.

Як аналізувати синій екран dump memory у Windows-Властивості комп'ютера

Як аналізувати синій екран dump memory у Windows-параметри системи

Переходимо у вкладку Додатково Завантаження та відновлення. Тиснемо кнопку Параметри

Як аналізувати синій екран dump memory у Windows-Завантаження та відновлення

Де зберігається файл memory.dmp

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

Перейдемо до папки c:\windows\ і знайдемо файл MEMORY.DMP у ньому містяться коди синього екрана смерті

Як аналізувати синій екран dump memory у Windows-memory.dmp

Як налаштувати mini dump

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

Зберігається він у папці c:\windows\minidump. Перевага в тому, що він займає менше місця і кожен синій екран створюється окремим файлом. Завжди можна переглянути історію появи синього екрана.

Тепер коли ми розібралися, де шукати файл memory dump, потрібно навчитися його інтерпретувати і розуміти причину, через що відбувається синій екран смерті. У вирішенні цього завдання нам допоможе Microsoft Kernel Debugger. Завантажити Microsoft Kernel Debugger можна з офіційного сайту, головне виберіть потрібну версію ОС якщо комусь влом, то можете завантажити з яндекс диска за прямим посиланням. Також він входить до складу ADK.

Завантажуємо Microsoft Kernel Debugger, у результаті у вас буде маленький файл, який дозволить скачати з інтернету все, що вам потрібно. Запускаємо його.

приєднуватись до програми з покращення якості брати участь не будемо

тиснемо Accept і погоджуємося з ліцензією

Як встановити Microsoft Kernel Debugger - погоджуємося з ліцензією

почнеться встановлення Microsoft Kernel Debugger

Як встановити Microsoft Kernel Debugger-установка MKD

Бачимо, що Microsoft Kernel Debugger успішно встановлено

Після цього бачимо, що в пуску з'явилася папка Debugging Tools for Windows як для 32 так і 64 бітних систем.

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

Аналіз синього екрану в Debugging Tools

Після установки Debugging Symbols під систему, на якій був синій екран смерті, запускаємо Debugging Tools

Як встановити Microsoft Kernel Debugger-Запуск

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

Натискаємо кнопку Browse…

і вказуємо папку, в яку ми встановили налагоджувальні символи для дампа пам'яті, що розглядається, можна вказати кілька папок через кому і можна запитувати інформацію про необхідні налагоджувальні символи прямо через Інтернет, з публічного сервера Microsoft. Таким чином у вас буде сама Нова версіясимволів. Зробити це можна так - в меню File > Symbol File Path… вводимо:

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

Як аналізувати синій екран смерті

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

Як аналізувати синій екран смерті-01

Вибираємо для прикладу minidump

Як аналізувати синій екран смерті-відкриваємо minidump

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

Як аналізувати синій екран смерті-03

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

Як аналізувати синій екран смерті-04

Отримайте більше детальну інформаціючерез синій екран.

Як аналізувати синій екран смерті-05

Якщо відкрити memory.dmp ви отримаєте подібну картину і бачимо чому синій екран у вас з'явився.

Як аналізувати синій екран смерті-06

Ось так просто діагностувати і усунути синій екран смерті.



Розповісти друзям