Как исправить ошибки DRIVER_VERIFIER_DETECTED_VIOLATION типа "синий экран" (0x000000C4). Диагностика работы драйверов Windows 7 как определить косячный драйвер

Неисправный драйвер может вызвать много проблем для компьютера. Самый распространенный признак того, что драйвера нуждаются в обновлении - это "синий экран смерти". К счастью, этот синий экран показывают нам коды ошибок, дампов памяти, что позволяет выявить причину в том или ином драйвере, устройстве и обновить его или удалить. Становиться сложно, когда дампы памяти и коды ошибок не помогают или компьютер даже не показывает коды ошибок, а просто блокирует систему. Что делать в этих случаях?

Встроенная в систему Windows Driver Verifier создан для проверки драйверов, путем вызова дополнительных нагрузок на системные драйвера и стресс тестов, чтобы спровоцировать аварию. Это поможет вам выявить плохие драйвера в Windows.

Подготовка системы к проверке драйверов windows 10

Перед включением Driver Verifier , обратите внимания, что драйвера могут заблокировать вас из вашего же компьютера, если вы не будете осторожны . Driver Verifier при обнаружении плохого драйвера выдаст вам синий экран, если их несколько, то образуется цикл загрузка>загрузка>краш и вы не сможете запуститься обратно в систему windows, чтобы отключить краш-тест системных драйверов. По этому мы подготовимся на всякий пожарный, а то в наше время русское "авось прокатит" уже слабо работает. Перед включением проверки драйверов сделайте одно из следующих .

  • Проверить, что вы можете легко загрузиться в безопасном режиме без необходимости БИОСА. Обычными словами, вход в безопасный режим должен быть выполнен с помощью рабочего стола windows. Зажмите Shift+перезагрузка, нажав и удерживая кнопку шифт нажмите мышкой на перезагрузка. Попробуйте другим способом, установить вариант через Windows.
  • Создайте точку восстановления системы, отключив при этом антивирусные продукты. Откройте поиск Windows и наберите Создание точки восстановления , выберите из предложенного и действуйте предложенной вам инструкции.
  • Создать для вашего компьютера, чтобы был доступ к командной строке через параметры при использовании диска восстановления.
  • Можете или любых других данных за которые вы переживаете.
  • Обязательно прочтите мой краш-тест в конце статьи. Он поможет вам в случае неудачи, которая произошла со мной.

Активация функции windows Driver Verifier

Перед активацией драйверов, убедитесь, что вы прочитали выше раздел, как обезопасит себя от бесконечной загрузки.

В ведите следующий код в командную строку:

  • verifier

Укажите пункт (для кода программ).

Выберите все пункты, кроме "Проверка соответствия требованиям DDI" и "Эмуляция случайной нехватки ресурсов".

Нажмите на столбец поставщик, чтобы сделать сортировку. Выделять все драйвера не обязательно, только от других поставщиков, где нет надписи Microsoft Corporation. Если вы уверены, что ошибка в каком-либо драйвере, то выделите все пункты галочками.


После всех настроек нажмите Готово и вам будет сказано, что проверка будет произведена после перезагрузке системы. Если средство проверки выдаст синий экран, то запишите код ошибки, дамп памяти и перезагрузите компьютер.

Вернувшись в windows вы можете отключить проверку драйверов одним из следующих способов:

  • Зайдите обратно, как и заходили через командную строку и выберите пункт удалить существующие параметры .

Откройте командную строку и введите следующий код:

Как исправить циклическую загрузку с синим экраном смерти

  1. Хочу заметить у меня произошла циклическая загрузка с неисправным драйвером. Код ошибки или дампа памяти не был указан, что для меня удивительно.
  2. После 2-4 циклической загрузки синего экрана, был автоматически запущен параметр "восстановление системы". В котором я нажал "поиск и устранение неисправностей" > "дополнительные параметры" > "параметры загрузки" > "перезагрузить". После загрузки выберите 4 или 5 для загрузки в безопасном режиме. Отключите диспетчер проверки драйверов, как указано выше.
  3. Чтобы не загружаться в безопасном режиме, дойдите до параметра "поиск и устранение неисправностей" > "дополнительные параметры" и "КОМАНДНАЯ СТРОКА". В которой вбейте просто команду verifier /bootmode resetonbootfail .
  4. Скопируйте или с фоткайте на мобильник, перед началом проверки драйверов все 3 выше указанных пункта. Не забудьте на всякий случай скопировать ссылку на статью.

Чем открыть файл DMP для просмотра анализа ошибок

  • Файлы теста находятся по пути C:\Windows\Minidump .
  • Открыть формат файлов DMP можно с помощью

Указывает на системный драйвер, который вряд ли является причиной проблемы (например, win32k.sys ). В этом случае понадобится серьезный анализ дампа, требующий очень глубоких знаний и опыта в этой области. Тем не менее, можно самостоятельно выполнить проверку драйверов с помощью встроенного в операционную систему средства проверки Verifier.exe . Хотя оно подробно описано в статье базы знаний Microsoft Использование средства проверки драйверов для устранения неполадок в работе драйверов Windows , представленный там материал изложен на довольно сложном техническом уровне. Ниже приводится краткое описание действий, которые необходимо выполнить для проверки драйверов.

На этой странице

Начало работы со средством проверки драйверов

В меню Пуск Выполнить (или Пуск Поиск ) введите verifier и нажмите Ввод. Запустится средство проверки драйверов. Выберите пункт Создать нестандартные параметры (для кода программ) и нажмите кнопку Далее .

Выбрать отдельные параметры из полного списка и нажмите кнопку Далее .

На следующем шаге поставьте все флажки кроме Имитация нехватки ресурсов и нажмите кнопку Далее .

На следующем шаге выберите пункт Автоматически выбирать неподписанные драйверы и нажмите кнопку Далее . Если неподписанных драйверов не обнаружено, переходите к .

Неподписанные драйверы

Если неподписанные драйверы обнаружены, вы увидите их список.

Драйверы могут принадлежать как устройствам, так и приложениям. Не закрывайте окно средства проверки драйверов и не нажимайте кнопку Далее сейчас .

Поиск обновленных драйверов

Вам необходимо проверить, есть ли обновленные драйверы.

  1. Если вы видите в списке драйвер приложения, посетите сайт его производителя — возможно, приложение обновилось. Если обновленной версии нет, можете попробовать удалить приложение (вы всегда можете установить его заново позже). Если критические ошибки прекратятся, оно и являлось причиной.
  2. Если вы видите в списке драйвер устройства и работаете в Windows Vista воспользуйтесь центром обновления Windows для поиска новых драйверов. Этот способ хорошо подходит для Windows Vista, поскольку многие производители устройств сотрудничают с Microsoft, предоставляя свои драйверы для загрузки средствами Windows Update. В панели управления выберите Центр обновления Windows и выполните проверку на предмет наличия обновлений для драйвера вашего устройства. Если драйвер найден, установите его.
  3. Если Windows Update не предложит вам новых драйверов, посетите сайт производителя устройства. Возможно, новые драйверы доступны там. Если вы испытываете проблемы с поиском драйверов, обратитесь в форум Поиск драйверов, прошивок и руководств на OSzone.net.

После обновления приложения или драйвера закройте окно средства проверки драйверов, нажав кнопку Отмена (а не Далее ) . Перезагрузите компьютер и продолжайте работу в операционной системе. Если критическая ошибка больше не возникает, вы устранили ее обновлением драйвера.

Удаление драйверов

Если новых драйверов обнаружить не удалось, попробуйте удалить драйвер.

Внимание! Удаление драйверов приводит к неработоспособности устройств. После перезагрузки в лучшем случае операционная система установит подходящий драйвер из собстенного хранилища драйверов. Если вы не уверены в том, нужно ли удалять тот или иной драйвер, не удаляйте его.

В диспетчере устройств (Пуск Поиск / Выполнить devmgmt.msc ОК ) найдите устройство, щелкните по нему правой кнопкой мыши и выберите из контекстного меню пункт Свойства . Затем перейдите на вкладку Драйвер и нажмите кнопку Удалить .

Проверка неподписанных драйверов

Внимание! После проверки неподписанных драйверов система может не загрузиться (ниже описано, как действовать в такой ситуации).

Если вы не хотите удалять драйвер и/или хотите выполнить проверку неподписанных драйверов, в окне средства проверки драйверов нажмите кнопку Далее . Вам будет предложено выбрать физческий диск.

Готово , после чего перезагрузите компьютер. Если после перезагрузки вы увидите синий экран с ошибкой, проблемный драйвер определен — его название будет включено в сообщение об ошибке. Войдите в безопасный режим и сбросьте все параметры проверки драйверов, введя в Пуск Поиск / Выполнить команду verifier.exe /reset .

Если система загрузилась в обычном режиме, проверка неподписанных драйверов завершилась успешно — они не являются источником проблем. Вы можете увидеть список проверенных драйверов, запустив verifier.exe .

Поскольку неподписанные драйверы не являются причиной критической ошибки, необходимо проверить другие драйверы.

Выборочная проверка драйверов

Если неподписанных драйверов не обнаружено или их проверка не выявила проблем, придется выполнить выборочную проверку драйверов. В этом случае в изображенном ниже окне выберите пункт Выбрать имя драйвера из списка .

На следующем шаге вам будет предложено выбрать драйверы для проверки. Не выбирайте все драйверы сразу , поскольку их проверка займет много времени и ресурсов системы.

Поэтому проверку, возможно, придется производить в несколько этапов. Поэтапная последовательность выбора драйверов может быть такой:

  1. Недавно обновленные драйверы или те, которые типично вызывают проблемы (драйверы антивирусных программ, сетевых экранов, виртуальных дисков).
  2. Драйверы, поставщиком которых не является Microsoft.
  3. Группа из 10 — 15 драйверов за один раз.

Выберите диск, на котором установлена операционная система, и нажмите кнопку Готово , после чего перезагрузите компьютер.

Внимание! После проверки драйверов система может не загрузиться (ниже описано, как действовать в такой ситуации).

Если после перезагрузки вы увидите синий экран с ошибкой, проблемный драйвер определен — его название будет включено в сообщение об ошибке. Перезагрузите компьютер и войдите в безопасный режим, нажав F8 при загрузке. После входа в систему сбросьте все параметры проверки драйверов, введя в Пуск Поиск / Выполнить команду verifier.exe /reset .

Если система загрузилась в обычном режиме, проверка выбранных драйверов завершилась успешно — они не являются источником проблем. Вы можете увидеть список проверенных драйверов, запустив verifier.exe и выбрав на первом шаге пункт Вывести сведения о текущих проверенных драйверах .

Теперь выберите следующую группу драйверов и повторите проверку.

Все драйверы проверены — что дальше?

Если проверка всех драйверов завершилась успешно, я должен снять шляпу перед вашим терпением и упорством. Скорее всего, драйверы не являются причиной критической ошибки, возникающей в вашей системе. Не исключено, что проблема кроется в аппаратной части вашего компьютера — например, в неисправном жестком диске или оперативной памяти, либо блок питания имеет недостаточную мощность для обеспечения работы всех устройств. Возможны и другие аппаратные проблемы, которые проверкой драйверов также невозможно выявить.

Утилита Driver Verifier (verifier.exe) предназначена для анализа проблемных драйверов, когда анализ дампов памяти после BSOD не позволяет найти проблемный драйвер. Driver Verifier – это “палочка выручалочка” в наиболее проблемных ситуациях.

С помощью Driver Verifier можно выполнять:

    стресс тест драйвера (имитируются условия нехватки ресурсов);

    контроль переполнения буфера;

    контроль за ошибками, возникающими при неправильной работе при заданном IRQL;

    анализ ошибок ввода-вывода;

    детектирование ситуаций deadlock и т.д.

Утилита Driver Verifier бывает очень полезной когда:

    у администратора (пользователя) есть подозрения, что именно этот драйвер вызывает крах системы и он хочет дополнительно проверить так ли это на самом деле;

    разработчики драйвера, хотят протестировать свой драйвер;

    при анализе дампа после BSOD найти проблемный драйвер нельзя.

Одним из самых непростых случаев анализа дампов памяти является случай, когда драйвер ошибочно перезаписывает данные до начала или за концом буфера, выделенного им. В таких случаях, возникают ошибки в ядре ОС (например, анализ дампа после BSOD показывает, что ошибка возникла в ntoskrnl.exe).

Давайте посмотрим подобный случай на конкретном примере. С помощью утилиты NotMyfault вызываем BSOD — “Buffer overflow”.

Результат анализа дампа с помощью windbg во вложении ниже.

Согласно анализа дампа получаем.

1. Arg1: 00000007, Attempt to free pool which was already freed (была попытка освобождения уже освобожденного пула)

2. IMAGE_NAME: ntkrpamp.exe (отношение к этому имеет само ядро системы)

Именно при подобных ошибках, на помощь приходит verifier.

Запускаем verifier.

Выбираем “Создать не стандартные параметры”. Далее выбираем “Выбрать параметры из списка”.

Выбираем все кроме “Имитация нехватки ресурсов”.

После чего выбираем “Выбрать незагруженные драйверы к этому списку” и указываем путь к драйверу myfault.sys, который находится в том же каталоге, что и программа NotMyfault.exe.

После чего отмечаем драйвер и нажимаем “Готово”. После этого, нам необходимо перегрузить компьютер.

Выполняем все те же действия, что и в начале. Запускаем NotMyfault.exe, выбираем “Buffer overflow” и нажимаем “Crash”. Как вы заметили крах может произойти не сразу, поскольку кто и когда будет пытаться работать с этой памятью неизвестно заранее. Как видим на изображении ниже, благодаря verifier система может определить проблемный драйвер.

Приведу анализ с помощью!analyze –v в windbg.exe дампа памяти после BSOD.

Программа verifier делает так, что проверяемый драйвер вместо обыкновенной памяти доступной в ядре использует специальный пул, предназначенный для определения подобной ошибки. Благодаря этому, можно найти драйвер, который приводит к BSOD.

Если посмотреть результаты анализа то мы видим следующее.

1. DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION (d6) – это одна из ошибок, которая генерируется verifier

2. IMAGE_NAME: myfault.sys – драйвер, который привел к проблеме.

Таким образом, если анализ дампа памяти после BSOD не позволяет найти “виновный драйвер” воспользуйтесь программой verifier.exe (установите все проверки, кроме нехватки памяти).

Наиболее простым вариантом использования Driver Verifier (verifier.exe) является его запуск со следующими параметрами:

verifier /standard /driver имя файла драйвера

Post Views: 1 042

Если Вы предполагаете, что какой-либо из драйверов работает некорректно или, проанализировав дамп памяти, Вы определили драйвер вызвавший ошибку, то для более тщательной проверки работы драйверов Вы можете самостоятельно выполнить проверку драйверов с помощью встроенного в операционную систему средства проверки Verifier.exe .

Проверка неподписанных драйверов.

verifier и нажмите Enter.
2) Выберите пункт и нажмите кнопку Далее .
и нажмите кнопку Далее .
Имитация нехватки ресурсов и нажмите кнопку Далее .
Автоматически выбирать неподписанные драйверы и нажмите кнопку Далее .

Если неподписанные драйверы обнаружены, система отобразит Вам их список, в котором будут указаны файлы драйверов и их описание. Причем найденные драйвера могут принадлежать как устройствам, так и приложениям. Не закрывайте пока окно средства проверки драйверов и не нажимайте никаких кнопок.

Вариант 1. Обновление программы или драйвера.

6) Посетите сайт производителя устройства или автора программы и скачайте более новую версию.
7) Переустановите программу или обновите драйвер.
8) После обновления приложения или драйвера закройте окно средства проверки драйверов, нажав кнопку Отмена .
9) Перезагрузите компьютер и продолжайте работу в операционной системе.
Если в системе не возникают ошибки связанной с данным драйвером, значит обновление драйвера или программы устранило её.

Вариант 2. Удаление программы или драйвера.

6.1) Удалите программу, которой принадлежит данный драйвер.
6.1.1) Откройте Панель управленияВсе элементы панели управленияПрограммы и компоненты и удалите приложение, которому принадлежит драйвер.
Перед удалением программы убедитесь, что у Вас присутствует ее установочный диск или ее установка сохранена у Вас на диске.

6.2) Удалите драйвер в Диспетчере устройств.
6.2.1) В меню Пуск щелкните правой кнопкой мыши на Компьютер и выберите пункт Свойства .
6.2.2) Нажмите в списке слева на Диспетчер устройств .
6.2.3) В Диспетчере устройств найдите устройство, щелкните по нему правой кнопкой мыши и выберите из контекстного меню пункт Свойства .
6.2.4) Перейдите на вкладку Драйвер и нажмите кнопку Удалить .

7) После удаления приложения или драйвера закройте окно средства проверки драйверов, нажав кнопку Отмена .
8) Перезагрузите компьютер и продолжайте работу в операционной системе.

Если в системе не возникают ошибки связанной с данным драйвером, значит удаление драйвера или программы устранило её.

Вариант 3. Проверка неподписанных драйверов.

Внимание! После проверки неподписанных драйверов система может не загрузиться (прежде чем переходить к дальнейшим действиям, прочтите данный вариант до конца).

6) Нажмите кнопку Готово и перезагрузите компьютер.

7) Перезагрузите компьютер
8) До начала запуска Windows нажмите на клавишу F8. При появлении окна выбора дисков: выберите диск на котором у Вас установлена Windows, нажмите Enter, а затем сразу F8.
9) Выберите пункт Безопасный режим
10) Откройте диалоговое меню Выполнить : Пуск ->
11) Введите команду verifier.exe /reset и нажмите Enter.

Если система загрузилась в обычном режиме, проверка неподписанных драйверов завершилась успешно - они не являются источником проблем.

Проверка подписанных драйверов.

1) В строке поиска меню Пуск введите verifier и нажмите Enter.
2) Выберите пункт Создать нестандартные параметры (для кода программ) и нажмите кнопку Далее .
3) Установите переключатель в значение Выбрать отдельные параметры из полного списка и нажмите кнопку Далее .
4) Отметьте все флажки кроме флажка Имитация нехватки ресурсов и нажмите кнопку Далее .
5) Установите переключатель в значение Выбрать имя драйвера из списка и нажмите кнопку Далее .
6) Нажмите на заголовок колонки Поставщик для сортировки драйверов по их поставщику.
7) Выберите первые 10-15 драйверов установив напротив них флажки в колонке Проверить .
Не выбирайте все драйверы сразу, так как их проверка займет много времени и ресурсов системы.
8) Нажмите кнопку Готово и перезагрузите компьютер. Если система загрузилась в обычном режиме, проверка выбранных драйверов завершилась успешно - они не являются источником проблем. В таком случае повторите описанные выше действия выбрав следующие 10-15 драйверов.

Если же после перезагрузки появился синий экран с ошибкой, проблемный драйвер определен - его название будет включено в сообщение об ошибке. В таком случае:

1) Перезагрузите компьютер
2) До начала запуска Windows нажмите на клавишу F8. При появлении окна выбора дисков: выберите диск на котором у Вас установлена Windows, нажмите Enter, а затем сразу F8.
3) Выберите пункт Безопасный режим
4) Откройте диалоговое меню Выполнить : Пуск -> Выполнить или нажмите комбинацию Win+R
5) Введите команду verifier.exe /reset и нажмите Enter. Если проверка всех драйверов завершилась успешно, то скорее всего, драйверы не являются причиной критической ошибки, возникающей в Вашей системе.


Иногда ошибки DRIVER_VERIFIER_DETECTED_VIOLATION типа "синий экран", связанные с аппаратным обеспечением, могут быть вызваны повреждением оперативной памяти (RAM). Если вы сталкиваетесь со случайными перезагрузками компьютера, звуковыми сигналами при загрузке или другими неисправностями компьютера (в дополнение к ошибкам BSOD 0xC4), то весьма вероятно, что имеются повреждения памяти. На самом деле, почти 10% падений приложений в ОС Windows вызваны повреждениями памяти.

Если вы недавно добавили новую память в компьютер, мы рекомендуем временно убрать ее, чтобы убедиться, что она не является причиной ошибки DRIVER_VERIFIER_DETECTED_VIOLATION. Если это действие устранило BSOD, знаичит, это источник проблемы, и, следовательно, новая память либо несовместима с каким-то вашим оборудованием, либо повреждена. В таком случае, вам потребуется замена новых модулей памяти.

Если вы не добавляли новой памяти, на следующем этапе необходимо провести диагностический тест имеющейся памяти компьютера. Тест памяти позволяет провести сканирование на наличие серьезных сбоев памяти и периодических ошибок, которые могут быть причиной вашего синего экрана смерти 0xC4.

Хотя последние версии Windows содержат утилиту для проверки оперативной памяти, я крайне рекомендую вместо нее использовать Memtest86 . Memtest86 представляет собой тестирующее программное обеспечение на основе BIOS, в отличие от других тестовых программ, запускаемых в среде Windows. Преимущество такого подхода в том, что утилита позволяет проверять ВСЮ операционную память на наличие ошибок DRIVER_VERIFIER_DETECTED_VIOLATION, в то время как другие программы не могут проверять области памяти, занятые собственно программой, операционной системой и другими запущенными программами.



Понравилась статья? Поделиться с друзьями: