Как проверить какой драйвер неисправен. Как выявить проблемные драйвера с помощью Driver Verifier. Выборочная проверка драйверов

Мы уже успели поговорить о том, . А вот как установить драйвер для старого оборудования, если оно не поддерживает технологию PnP? И как можно продиагностировать работу драйверов? Рассмотрим данные темы в этой статье.

Установка старого оборудования

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

Диагностика работы драйвера

Наличие конфликтов у оборудования

В наши дни конфликты драйверов встречаются все реже. Но встречаются. Обычно, конфликты возникают, когда двум субъектам требуются одни и те же ресурсы. А все войны на Земле шли ради обладания какими-то ресурсами! Так что не удивляйтесь, что данная слабость имеется и у компьютерных комплектующих. Чтобы узнать, есть ли у устройства какие-либо конфликты, необходимо продиагностировать работу драйвера. Для этого зайдите в Диспетчер устройств , выберите Устройства. Далее, в контекстном меню выберите Свойства и откройте вкладку Ресурсы . Внизу Вы найдете поле Список конфликтующих устройств , где и можно узнать если ли конфликты или нет. При наличии оных, активируется кнопка «Изменить», где Вы в роли судьи будете делить ресурсы между конфликтующими.

Сведения о системе

Так же, для диагностики работы драйверов применяется утилита Сведения о системе , открыть которую Вы можете, если введете в меню Выполнить msinfo32.
В ней Вы увидите три узла. Для диагностики драйверов можно использовать следующие:

  • В первом узле есть параметр Конфликты и совместное использование. В нем Вы увидите какие оборудования используют одинаковые ресурсы. Что в свою очередь является возможной причиной неполадок.
  • Во втором узле Вы можете найти подробные сведения о нужном оборудовании. А в целях диагностики драйверов лучше всего использовать параметр Устройства с неполадками .
  • В третьем узле, развернув параметр Системные драйверы , Вы можете узнать о состоянии драйверов ядра. Это очень важный параметр, потому что он ориентирован именно на драйвера ядра операционной системы. А восстановить драйвер ядра намного сложнее, чем драйвер принтера. И поэтому лучше диагностировать такие случаи, а иначе Вы можете наткнутся на одну из фатальных ошибок .

Диспетчер проверки драйверов

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

Если честно, у данной утилиты довольно смутный интерфейс. Это мое мнение. Да и она меня не особо интересует, так как я даже при запущенной виртуальной машине и куче программ не могу нагрузить железо выше 60%. Поэтому вниманием я данную утилиту не удостоил. Но по описанному функционалу, данная утилита очень даже неплохой инструмент.

Диагностика DirectX

Если Вы в меню Выполнить наберете dxdiag , то Вы запустите Средство диагностики . В открывшемся окне будут 4 вкладки: вторая про экран, третья про звук и четвертая про систему ввода. Каждая из них внизу имеет примечание, где указаны наличие или отсутствие проблем. Как видите, данное средство диагностирует только эти три класса оборудования. Почему? Потому что основное использование DirectX — при создании игр. А что нужно игре? Экран, чтобы видеть во что мы играем! Звук, чтобы слышать рев мотора или выстрел в спину. И систему ввода, чтобы рулить или стрелять. И пофиг то, что у тебя принтер не печатает. Вот так вот.

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

Драйвер это программа, которая необходима для операционной системы и различных программных приложений для взаимодействия с аппаратными устройствами подключенных к нему. Компоненты оборудования, такие как звук,видео карты,принтеры, сканеры и им всем нужен совместимый драйвер для их работы должным образом.

Все драйверы устройств предназначены для определенных операционных систем. Например, в Windows XP драйвера будут отличаться от Windows Vista драйверов.Следовательно,необходимо,чтобы принять дополнительные меры предосторожности при установке и обновлении драйверов устройств,поскольку установка неправильных или несовместимых драйверов может не только повредить устройство, но и вашу систему.

Общие причины ошибок драйверов

Некоторые общие причины ошибок в работе драйверов перечислены ниже:

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

Шаги для исправления ошибок драйверов
Первый шаг в установлении ошибки драйвера,это убедиться, что устройство правильно подключено к вашей системе. Многие устройства выдают ошибки, связанные с подключением,так что проверьте, что ваше устройство подключено к вашей системе правильно. Далее, вам нужно убедиться, что нет никаких проблем с драйверами.Вы можете сделать это с помощью утилиты Device Manager, которая поставляется с вашей компьютерной системой Windows. Вы можете открыть диспетчер Устройств, непосредственно запустив devmgmt.msc из командной строки Пуск >Выполн ить . Когда вы откроете Device Manager, вы увидите список всех устройств, подключенных к вашей системе. Вы можете легко определить дефектный файл,потому что он будет отмечен желтым треугольником с восклицательным знаком внутри. Щёлкните правой кнопкой мыши на устройстве, чтобы открыть диалоговое окно его свойств. В диалоговом окне свойства,проверьте раздел Состояние устройства на вкладке Общие . Драйвера отображаются на вкладке Драйвера окна свойства. Здесь, выполните одну из следующих задач:

  • Проверить и Установить Обновления Драйверов: Устаревшие драйверы одна из основных причин связанных с ошибками драйвера.Чтобы решить эту проблему, щелкните кнопку Обновить Драйвер .Откроется мастер обновления оборудования. Вы можете использовать мастер для обновления драйвера.Рекомендуется сначала загрузить обновление для драйверов и сохранить его в удобное место на жестком диске, а затем начать процесс обновления, потому что мастер обновления попросит вас указать место для установки обновления.
  • Откат драйвера: Если вы начали получать сообщение об ошибке, вскоре после установки нового обновления, то вполне вероятно, что новое обновление имеет багги. Чтобы исправить эту проблему, щелкните кнопку Откат драйвера ,чтобы вернуться к вашей предыдущей версии драйвера.
  • Деинсталляция драйвера: Если есть проблемы с вашим текущим драйверов - отсутствующие или поврежденные файлы,-то лучшее,что вы можете сделать это вы щёлкните Удалить ,чтобы удалить текущий драйвер, а затем переустановите драйвер снова.

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Готово , после чего перезагрузите компьютер. Если после перезагрузки вы увидите синий экран с ошибкой, проблемный драйвер определен - его название будет включено в сообщение об ошибке. Перезагрузите компьютер и войдите в безопасный режим, нажав F8 Пуск - Поиск / Выполнить команду 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

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

Загрузка...