Як проаналізувати дамп пам'яті в Windows після помилки на синьому екрані?


15

Мій комп'ютер під керуванням Windows 7 x64 час від часу притискає. Чи можете ви порадити, як проаналізувати дамп пам'яті або вказати можливу причину та подальші кроки щодо усунення несправностей?

Комп'ютер перезавантажився з помилки. Помилка була: 0x0000003b (0x00000000c0000005, 0xfffff96000015de8, 0xfffff88007db9fb0, 0x0000000000000000). Дамп був збережений у: C: \ Windows \ MEMORY.DMP. Ідентифікатор звіту: 080210-24819-01.

Цитата з результату запуску WinDbg

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Інструкція на 0x% 08lx посилається на пам'ять при 0x% 08lx. Пам'ять не може бути% s.

...

DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT

BUGCHECK_STR: 0x3B

PROCESS_NAME: explorer.exe

...

MODULE_NAME: win32k

IMAGE_NAME: win32k.sys

Чи є спосіб зрозуміти, у якого конкретного водія є проблеми?


Відповіді:


19

Я б скористався інструментом налагодження Microsoft: WinDbg . Він може читати та автоматично аналізувати скиди пам'яті, як ваша. (Команда WinDbg влучно назвав: !analyze)

Інструмент потужний, але досить складний. Ось детальне КАК ДОВІДИТИ .

Цей же форум пропонує BlueScreenView . Я цього не пробував; це, мабуть, простіше у використанні, але не дає такої детальної інформації.


оновлення:

Чи є спосіб зрозуміти, у якого конкретного водія є проблеми?

Після !analyzeзапуску kабо kd. Це покаже слід стека безпосередньо перед збоєм. Трасування стека - це список викликів функцій, здійснених безпосередньо перед збоєм, з останніми вгорі. Ви повинні принаймні мати можливість дізнаватися назви файлів модулів (DLL).

Я пропоную поділитися повними результатами !analyzeта / або дампами пам’яті з людьми, які є кваліфікованими в WinDbg та зацікавлені у наданні допомоги. Раніше пов'язаний форум MajorGeeks виглядає як непогане місце.


Спасибі! Чи є у вас ідеї, що наступний крок? Я додав результати запуску WinDbg
bublegumm

1
Ця тема форуму MajorGeeks чудова, пропонує досить непоганий крок за кроком про те, як прочитати файл memory.dmp.
russds

Без певних глибоких знань намагатися осмислити один !analyze -vвихід (а BlueScreenView пропонує це майже все), майже безглуздо. Запропонувати переглянути стек викликів може бути зрозумілим у StackOverflow, але тут трохи нерозумно. Крім того, я зробив свою частку після налагодження драйвера Windows драйвера, і багато випадків на сьогоднішній день не настільки чіткі, як ви звучите.
0xC0000022L

1

Існує безкоштовний інструмент під назвою BlueScreenView, який аналізуватиме файли дампів c:\windows\minidumpта показує графічне вікно, щоб користувач міг визначити помилки


-1

Це може спричинити його http://support.microsoft.com/kb/980932 (Використовуйте "Переглянути та запитувати завантаження виправлень" у верхній частині сторінки, щоб запитувати виправлення, не застосовувати виправлення, якщо це не Firewire 1394 проблема)

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

Перевірка помилок 0x3B: SYSTEM_SERVICE_EXCEPTION

http://msdn.microsoft.com/en-us/library/ff558949(v=VS.85).aspx

Перевірка помилок SYSTEM_SERVICE_EXCEPTION має значення 0x0000003B. Це вказує на те, що виняток стався під час виконання процедури, яка переходила від непривілейованого коду до привілейованого коду. Параметри

Наступні параметри відображаються на синьому екрані. Параметр Опис 1 Виняток, який спричинив перевірку помилок 2 Адреса запису про виключення для винятку, що спричинила перевірку помилок

Причина

Ця помилка була пов’язана з надмірним використанням підключеного пулу і може виникнути через перехрещення графічних драйверів у режимі користувача та передачі поганих даних у код ядра.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.