Інтернет Windows Android

Як виявити конфлікт драйверів. Driver Verifier - виявляємо проблемні драйвера Windows

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

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

Загальні причини помилок драйверів

Деякі загальні причини помилок в роботі драйверів перераховані нижче:

  • Ви намагаєтеся використовувати апаратний пристрій, Неправильно підключений до комп'ютера.
  • Два або більше драйверів в системі несумісні один з одним.
  • Драйвер або драйвера встановлюються не сумісними з вашою системою.
  • Є непотрібні або застарілі драйвера на ПК.

Кроки для виправлення помилок драйверів
Перший крок у встановленні помилки драйвера, це переконатися, що пристрій правильно підключено до всієї системи. Багато пристроїв видають помилки, пов'язані з підключенням, так що перевірте, що ваш пристрій підключено до всієї системи правильно. Далі, вам потрібно переконатися, що немає ніяких проблем з драйверамі.Ви можете зробити це за допомогою утиліти Device Manager, яка поставляється з вашої комп'ютерною системою Windows. Ви можете відкрити диспетчер пристроїв, що мають безпосередньо запустивши devmgmt. msc з командного рядкаПуск \u003e Викить. Коли ви відкриєте Device Manager, ви побачите список всіх пристроїв, підключених до всієї системи. Ви можете легко визначити дефектний файл, тому що він буде відзначений жовтим трикутником з оклику всередині. Клацніть правою кнопкою миші на пристрої, щоб відкрити діалогове вікно його властивостей. У діалоговому вікні властивості, перевірте розділ стан пристроюна вкладці загальні. Драйвера відображаються на вкладці драйвера вікна властивості. Тут, виконайте одну з наступних завдань:

  • Перевірити і Встановити Оновлення Драйверів: Застарілі драйвери одна з основних причин пов'язаних з помилками драйвера.Чтоби вирішити цю проблему, клацніть кнопку оновити ДрайверВідкриється майстер оновлення устаткування. Ви можете використовувати майстер для поновлення драйвера.Рекомендуется спочатку завантажити оновлення для драйверів і зберегти його в зручне місце на жорсткому диску, а потім почати процес оновлення, тому що майстер поновлення попросить вас вказати місце для установки оновлення.
  • Відкат драйвера: Якщо ви почали отримувати повідомлення про помилку, незабаром після установки нового оновлення, то цілком ймовірно, що нове оновлення має баггі. Щоб виправити цю проблему, клацніть кнопку відкат драйвера, Щоб повернутися до вашої попередньої версії драйвера.
  • Деінсталяція драйвера: Якщо є проблеми з вашим поточним драйверів - відсутні або пошкоджені файли, -то краще, що ви можете зробити це ви натиснете вилучити, Щоб видалити поточний драйвер, а потім повторно драйвер знову.

У разі, якщо ви не впевнені, що ви робите, і якщо ви знайдете описані вище виправлення трохи складними, то рекомендується, щоб ви вибрали надійний інструмент сканування драйверів. Інструменти сканування драйверів створені для того, щоб перевірити всі драйвери пристроїв і переконатися, що вони не up-to-date. Всякий раз, коли нові доступні нові оновлення, сканер драйверів автоматично завантажує і встановлює кращі поновлення на ваш комп'ютер.

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

І як тільки не лають Windows від Microsoft, Називаючи бідолаху одночасно і гальмівний, і глючной і навіть нестабільною. Тільки ось відмовлятися від неї ніхто не поспішає, та й взагалі навряд чи вже коли-небудь відмовиться. Тому, замість того щоб лаяти бідних розробників і розводити безглуздий флейм, добре б розібратися: а чому, власне, система глючить? Відкрию тобі невеликий секрет. У горезвісних екранах смерті і нестабільної роботи Windows в переважній більшості випадків винні драйвери сторонніх виробників, а сама операційка тут абсолютно ні при чому. Зараз ми розповімо, як такі драйвери виявити і з системи видалити.

Дефекти проектування драйверів можуть носити самий різний характер: від випадінь в блакитний екран смерті ( BSOD - Blue Screen of Death) і до уповільнення роботи комп'ютера і дивацтв поведінки деяких зовсім не пов'язаних з драйвером прикладних програм.

Блакитний екран смерті чудовий (без жодної іронії!) Тим, що явно сигналізує про наявність серйозної проблеми і дає наводку, звідки рити. Найчастіше (але далеко не завжди) ім'я «провинився» драйвера висвічується безпосередньо в правому верхньому кутку блакитного екрану смерті. Однак там його може і не бути або, що ще гірше, там може стояти ім'я зовсім сторонньої драйвера.

Так, наприклад, один досить поширений драйвер від відеокарти Matrox G450 має тенденцію руйнувати базові структури графічної підсистеми Windows 2000 , В результаті чого в BSOD'е відображається ім'я системного драйвера win32k.sys, В якому реалізована значна частина функцій USER і GDI і який, природно, тут зовсім ні при чому. Так що інтерпретація свідчень блакитного екраном смерті - це і магія, і інтуїція, і наука, і мистецтво - всього потроху.

Крім дефектів драйверів, блакитні екрани смерті можуть також викликатися відмовами заліза, наприклад розігнаним процесором, несправною оперативною пам'яттю, кривим контролером жорсткого диска, Не до кінця увіткненою в слот PCI-картою, неконтакт в одному з роз'ємів, поганим блоком живлення, роздутим електролітичним конденсатором на материнській платі. А дуються останні з різних причин: через перегрів від поруч розташованого процесора, нестачі керамічних конденсаторів, «недоложенних» виробником (в результаті чого ВЧ-складова йде через електроліт і сильно його розігріває), нарешті, через витік ключових транзисторів в вузлі стабілізатора. Тому, перш ніж колоти дрова, необхідно переконатися, що залізо, на якому ми сидимо, повністю справно. А як це можна зробити?

Розборки з залізом

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

Щоб зняти з заліза всі підозри, досить підключити до системи ще один жорсткий диск, Встановити на нього невинно чисту Windows і попрацювати на ній деякий час. Якщо блакитні екрани смерті не зникнуть, значить, дійсно, винувато залізо і його прийшла пора міняти. Пошук дефективних компонентів - тема для окремої розмови, який ми залишимо на наступний раз, а поки, засукавши рукава, впритул візьмемося за ці підступні драйвери.

Дрова без сертифіката відразу в топку

Весь комплект інструментарію, необхідний для розробки драйверів ( DDK - Driver Development Kit), Microsoft поширює безкоштовно разом з супутньою йому документацією. Драйверів, часом дуже глючних і нестабільних.

Щоб такого свавілля не відбувалося, Microsoft ще в стародавні часи ввела процедуру сертифікації драйверів на відповідність пропонованим до них вимогам, після якої драйверу видається цифровий підпис. Або ... не видається, і він вирушав на доопрацювання. І хоча сертифікація - всього лише формальна процедура, що не гарантує відсутність фатальних помилок і дефектів розробки, частина відверто «піонерських» драйверів вона все-таки відсіває.

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

У цьому нам допоможе утиліта sigverif.exe, Що входить в штатний комплект поставки операційної системи і розташовується в каталозі WINNT \\ System32. Запускаємо її і бачимо діалогове вікно. Натискаємо кнопку «Додатково» і у вкладці «Пошук» налаштовуємо критерії відбору, переміщаючи радіокнопку з положення «Повідомляти про непідписані системних файлах»(Де вона і животіла за замовчуванням) в положення« Пошук інших файли, які не підписані цифровим підписом ». Після цього в «Параметрах пошуку» відкриваємо бокс «Шукати файли наступного типу» і вибираємо «* .sys», а нижче вказуємо папку для пошуку «C: \\ WINNT», обов'язково зазначивши галочку «Включаючи підпапки».

Взагалі-то, строго кажучи, драйвери не зобов'язані мати розширення sys і далеко не завжди обмежуються каталогом WINNT, перебуваючи в каталогах «своїх» додатків, а деякі додатки і зовсім зберігають драйвери ... всередині себе! Відразу ж після запуску (або в будь-який інший час) вони зберігають файл на диск в поточну або тимчасову директорію, завантажують драйвер в пам'ять і ... тут же видаляють його з диска! Так надходять не тільки шкідливі віруси, але і цілком респектабельні програми, на кшталт деяких утиліт відомого дослідника надр Windows Марка Руссиновича.

Тому для чистоти експерименту нам зовсім не завадить отримати список драйверів, що знаходяться в даний момент в пам'яті, і порівняти їх з драйверами, розташованими на диску. Слова «в даний момент» - ключові, оскільки завантаження / розвантаження драйверів може відбуватися безкоштовно без перезавантаження операційної системи. Цю операцію бажано виконати кілька разів, запускаючи утиліту командного рядка drivers.exe, що входить до складу DDK, який можна завантажити з сервера копанні Microsoft. Запущена без будь-яких ключів командою рядка, утиліта drives.exe вивалює всю інформацію на екран, що не є добре, оскільки драйверів в системі зазвичай присутній дуже багато і на екран вони не поміщаються. Однак релігія нам дозволяє перенаправити потік виведення в текстовий файл (drivers.exe\u003e \u200b\u200bfile-name.txt), що відкривається будь-яким текстовим редактором - хоч Word'ом, хоч блокнотом. Потім залишається тільки виділити вертикальний блок (чого блокнот не дозволяє) і отримати список драйверів. Прямо з ядра операційної системи!

Якщо хоча б один з цих драйверів відсутня в каталозі C: \u200b\u200b\\ WINNT \\, то його цифровий підпис перевірена не буде! Природно, такий драйвер відразу ж привертає до себе увагу, і у нас з'являється резонне питання: звідки він береться? Спочатку скануємо всі каталоги на диску; якщо його там немає, встановлюємо точку зупину на функцію CreateFileW в Soft-Ice і дивимося на передані їй аргументи. Рано чи пізно ми зустрінемо наш глючний драйвер, після чого залишиться тільки поглянути в правий нижній кут екрану Soft-Ice, де висвічується ім'я процесу, який породив його. Більш детально - у книзі «Техніка налагодження програм без вихідних текстів», електронну копію якої можна знайти на ftp- або http-сервері nezumi.org.ru, а також на нашому диску. А ми продовжуємо мучити утиліту sigverif.exe.

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

Деякі гарячі голови пропонують, в порядку очищення системи від єресі, видалити всі непідписані драйвери - тоді, мовляв, всі проблеми як хвостом зніме. А як це можна зробити? Саме грубе рішення - просто взяти і видалити їх з диска через FAR або провідник (природно, володіючи правами адміністратора!). Але наслідки такої операції можуть виявитися вельми плачевними, і краще, клікнувши правою клавішею миші на іконку драйвера в провіднику, знайти в «Властивості» ім'я виробника, за яким можна визначити, що за додаток / залізяка встановила цей драйвер, і деінсталювати її цивілізованим шляхом. Правда, тут є одне «але».

На наведеному малюнку виділено драйвер g400m.sys, Що йде разом з картою Matrox G450, і хоча Matrox зовсім не квола компанія, цифровий підпис вона не отримала (чи то Microsoft не дала, то чи сама Matrox не захотіла морочитися). Природно, після видалення його із системи, про SVGA-режимі доведеться забути. Можна, правда, сходити на сайт Matrox, скачавши найновіший драйвер (вона вже забезпечена цифровим підписом). Тільки ось ... і підписана, і непідписана версії містять безліч фатальних помилок, зокрема, в результаті збігу певних обставин при спробі перейти в overlay mode, система падає в BSOD, оскільки драйвер намагається звільнити вже звільнену пам'ять.

Таким чином, наявність / відсутність цифрового підпису саме по собі ще ні про що не говорить, і, навіть якщо ми використовуємо тільки підписані драйвери, ніяких гарантій стабільності це нам не дає.

Ось тут-то ми і переходимо до другої частини статті, а саме до тестування драйверів в умовах, наближених до бойових.

Влаштовуємо дров справжнє випробування

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

Важливо відзначити, що Driver Verifier - це не ліки, а тільки засіб діагностики. Від збоїв воно все одно не врятує (навпроти, збільшить їх інтенсивність на пару порядків), але зате допоможе виявити «підлий» драйвер з достатнім ступенем вірогідності.

Отже, запускаємо verifier.exe, бачимо вікно Driver Verifier Manager, Йдемо в закладку Setting і переводимо радіокнопку в положення Verify all drivers, після чого тиснемо кнопку «Preferred Setting», яка встановлює наступні типи перевірок (verification type):

  • Special pool - перевіряється драйверам буде відведена спеціальна область пам'яті для виділення, не дуже швидко працює, зате здатна виявляти більшість типів руйнувань своїх і чужих даних.
  • Force IRQL checking. IRQL - це рівень запиту переривань (Interrupt Request Level). Найбільш частою помилкою розробників драйверів є спроба звернутися до пам'яті на такому рівні IRQL, на якому менеджер підкачки не працює. І якщо потрібна сторінка раптом виявиться витісненої на диск, система обернеться в блакитний екран з написом «IRQL_LESS_OR_EQULAR». Форсування цього режиму примусово витісняє сторінки драйвера на диск, щоб дефект розробки проявлявся в 100% випадків.
  • Low resource simulation корисно встановити, щоб подивитися, як драйвер буде вести себе при катастрофічній нестачі системних ресурсів, однак цього можна і не робити, а ось галочку Pool tracking (відстеження коректності поводження з пулом пам'яті) краще залишити. Помилки введення / виведення (I / O verification) складають незначну частину всіх помилок, тому положення цієї галки в общем-то абсолютно некритично.

Покінчивши з вибором налаштувань, натискаємо кнопку «Apply» (застосувати) і, як нам і пропонують, перезавантажується.

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

Дізнатися статус перевірки можна в будь-який момент запуском verifier.exe. У закладці Driver Status перераховані статуси всіх виявлених драйверів з поясненням поточної ситуації. Статус Loaded означає, що даний драйвер був завантажений і перевірений, по крайней мере, один раз (але, можливо, не повністю, тобто не всі ділянки драйвера встигли відпрацювати). Статус Unloaded готує про те, що драйвер був завантажений, перевірений (можливо, частково) і вивантажено використовує його системою / програмою або за своїм власним бажанням. Останнє особливо характерно для драйверів, що залишилися від обладнання, яке було видалено шляхом варварського висмикуючи плати розширення з слота, тобто без виконання деінсталяції. Що залишився в живих драйвер сканує шину, намагаючись намацати «своє» обладнання, обламується з пошуком, після чого вивантажує себе з пам'яті, до речі кажучи, сповільнюючи завантаження системи (іноді дуже значно) і конфліктуючи з іншими драйверами. Мораль: обладнання з системи потрібно видаляти за всіма правилами! Однак не всякий статус Unloaded ознака ненормальності ситуації, і, перш ніж видаляти драйвер з таким статусом, потрібно розібратися, що це за північний олень такий і звідки він взагалі тут узявся.

Статус Never Loaded вказує на те, що даний драйвер ще не був завантажений, а значить, не був і перевірений, отже, треба почекати, запускаючи різні програми, які можуть бути з ним пов'язані. Втім, деякі драйвери (особливо некоректно Деінсталювати) не завантажуються і, відповідно, не перевіряються ніколи.

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

Повернути систему в нормальний режим (тобто без додаткових перевірок, зжирає продуктивність), можна за допомогою все того ж verifier'а. Повертаємося до закладки Setting, переводимо радіокнопку в положення Verify selected drivers (при цьому ніякої драйвер не повинен бути виділений), тиснемо на «Reset All», потім на «Apply» і перезавантажуємося. Усе! Тепер система працює з нормальною швидкістю, але без перевірок.

Що робити з сирими дровами?

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

Викидати драйвер (разом з тим залізом / програмою, що його використовує) теж не варіант. Хоча якщо відомо, що в блакитних екранах смерті винна звукова карта незнайомого китайського виробника вартістю $ 20, то у нас з'являється цілком вагома мотивація її замінити чимось більш гідним. Але це, власне кажучи, всім і так зрозуміло і додаткових коментарів не потребує.

Зате далеко не кожен знає, що величезна кількість збоїв і блакитних екранів смерті пов'язано з тим, що драйвер, розроблений (і протестований) в однопроцессорной середовищі, ставлять на двухпроцессорную машину. Під «двопроцесорним» тут мається на увазі як реальна платформа з двома каменями, так і Hyper-Threading / багатоядерні процесори. Відомо (і підтверджено великою кількістю тестів), що домашнього комп'ютера два процесори абсолютно ні до чого, тому що на переважній більшості додатків збільшення продуктивності при цьому практично не спостерігається.

Тому якщо система працює нестабільно, а позбутися від дефектного драйвера з тих чи інших обставин ніяк не вдається, можна спробувати залізти в BIOS Setup, перетворивши свою «віртуальну двухпроцессорную» машину в однопроцесорних. Аналогічного ефекту можна домогтися, відкривши файл boot.ini (на комп'ютерах з Windows NT / 2000 / XP він розташований в кореневому каталозі логічного диска, На якому встановлена \u200b\u200bсистема) і додавши до нього ключ / ONECPU, після чого перезавантажитися в надії, що помилки зникнуть.

лістинг 1

Приклад типового файлу boot.ini


timeout \u003d 30

multi (0) disk (0) rdisk (0) partition (1) \\ WINNT \u003d "Windows 2000 Pro" / fastdetect / SOS

лістинг 2

Налаштовуємо систему на використання тільки одного процесора з усіх наявних


timeout \u003d 30
default \u003d multi (0) disk (0) rdisk (0) partition (1) \\ WINNT
multi (0) disk (0) rdisk (0) partition (1) \\ WINNT \u003d "Windows 2000 Pro" / fastdetect / SOS / ONECPU

А ось на Windows Vista файлу boot.ini немає, і, хоча існує (тимчасова) можливість конфігурувати її завантажувальні настройки за допомогою спеціальної утиліти, Microsoft планує повністю відмовитися від цієї лазівки, так що залишиться тільки BIOS Setup. Втім, що стосується Vista, То до моменту переходу на неї розробники драйверів, напевно, обзаведуться багатопроцесорними машинами (оскільки інших просто не залишиться в продажу) та тестуватимуть свої творіння в многопроцессорном оточенні.

Ще один тонкий момент. Пам'ятаєш, ми вище говорили, що найбільш часто зустрічається помилка розробників драйверів - звернення до витісняється пам'яті на тому рівні IRQL, на якому менеджер підкачки не працює, і якщо запитувана сторінка відсутня в пам'яті, настає крах? Очевидним рішенням тут буде збільшення оперативної пам'яті до того обсягу, при якому витіснення сторінок на диск практично не відбувається. При нинішніх цінах на пам'ять прикупити пару нових «плашок» може дозволити собі практично кожен. Але існує і більш доступне (і більш елегантне) рішення проблеми. якщо параметр DisablePagingExecutive, Що знаходиться в наступній гілці реєстру HKLM \\ SYSTEM \\ CurrentControlSet \\ Control \\ Session Manager \\ MemoryManagement, Дорівнює одиниці (за замовчуванням нулю), ядерні компоненти витіснятися не будуть. Тому просто запускаємо «Редактор реєстру», міняємо цей заповітний параметр і перезавантажуємося (зміни вступають в силу тільки після перезавантаження), сподіваючись, що це допоможе вирішити проблему збоїв.

Для таких випадків, для перевірки того, наскільки коректно працюють драйвери в Windows XP, існує спеціальна утиліта verifier.exe. утиліта Driver Verifier, Створює для драйверів максимально суворі умови, в яких імовірність відмови дуже велика, а ім'я збою драйвера визначається з найвищою точністю. Тому в разі не систематичних збоїв корисно запустити утиліту Driver Verifier.exe.Завантажити Verifier немає необхідності, так як утиліта входить до складу Windows і знаходиться в каталозі Windows \\ system32


1 Робота з Verifier.exe

1.1. запустимо Verifier.exe.Пуск - Виконати - Verifier.exe:

1.3. утиліта Driver Verifier.exe попросить перезавантаження:



1.4. З'являться в реєстрі два нові параметри:


- HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Control \\ Session Manager \\ Memory Management \\ VerifyDriverLevel

HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Control \\ Session Manager \\ Memory Management \\ VerifyDrivers


Параметри реєстру, пов'язані з Driver Verifier.exe

2 Результати перевірок

2.1. Якщо в першому вікні утиліти Driver Verifier.exeвибрати "Вивести відомості про поточні перевірених драйвери",то з'явиться вікно, на зразок цього. У ньому видно, які драйвера перевіряються, які ні. натискаючи "Далі", Можна побачити іншу інформацію про перевірених драйвери:



2.2. В результаті перевірки драйверів утилітою Driver Verifier.exeможливе випадання системи в. Коли відбувається помилка при перевірці драйверів, викликається поява системних помилок і. Типові коди і розшифровки помилок наведені нижче.

· 0xC1: SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION
· 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION
· 0xC6: DRIVER_CAUGHT_MODIFYING_FREED_POOL
· 0xC9: DRIVER_VERIFIER_IOMANAGER_VIOLATION
· 0xD6: DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION
· 0xE6: DRIVER_VERIFIER_DMA_VIOLATION


2.3. Приклади розшифровок дампов програмою :


3. Корисні посилання

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

Як перевірити версію драйверів

Якщо намагатися розібратися, то стане ясним, що на комп'ютері повинні бути встановлені драйвери для всіх пристроїв, як зовнішніх (миша, клавіатура, джойстик), так і вбудованих (відеокарта, мережевий адаптер, процесор). Розробники з Microsoft всіма силами намагаються полегшити життя користувачам, з кожним оновленням істотно розширюючи внутрішню базу драйверів, проте часом все одно доводиться шукати софт і вручну виконувати його інсталяцію. Зараз буде представлено чотири способи, як перевірити драйвери на Windows 7, 8 і 10.

Спосіб 1: офіційні сайти виробників

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

Дізнаємося модель материнської плати

Щоб дізнатися виробника і модель системної плати, вам необхідно виконати наступні дії:

  1. Відкрийте вікно «Виконати». Для цього на клавіатурі натисніть кнопки Win + R.
  2. У вікні введіть і виконайте її, натиснувши «ОК».
  3. З'явиться вікно « командного рядка». У ньому по черзі пропишіть дві команди: wmic baseboard get Manufacturer і wmic baseboard get product.
  4. У видачі на першу команду буде зазначений виробник плати, на другу - її модель.

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

Дізнаємося модель відеокарти і процесора

Дізнатися виробника і модель відеочипа і процесора можна практично таким же способом:

  1. Відкрийте вікно «Виконати».
  2. Введіть в нього команду dxdiag.
  3. Натисніть «ОК».
  4. У вікні перейдіть у вкладку «Екран».
  5. У категорії «Пристрій» навпроти рядків «Ім'я», «Виробник» і «Тип мікросхем» буде вказана відповідна інформація, що стосується процесора комп'ютера.
  6. Перейдіть у вкладку «Перетворювач».
  7. За аналогією з процесором, на не буде вказано вся необхідна інформація про відеокарту.

Запишіть всі отримані дані для здійснення пошуку відповідних драйверів для компонентів комп'ютера.

шукаємо драйвери

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

  1. Перейдіть в будь-яку пошукову систему.
  2. Пропишіть назву і модель компонента, що потребує оновлення.
  3. Зайдіть на офіційний сайт виробника.
  4. В інтерфейсі сайту знайдіть пошуковий рядок і виконайте запит з назвою пристрою.
  5. У видачі знайдете відповідний драйвер.
  6. Завантажте його на комп'ютер.
  7. Встановіть.

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

Спосіб 2: програми для оновлення драйверів

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

  1. Запустіть програму.
  2. Натисніть кнопку «Сканувати».
  3. Дочекайтеся завершення цього процесу.
  4. За підсумком будуть відображені пристрої, які потребують оновлення.
  5. Якщо ви хочете встановити нові версії окремого ПО, тоді натисніть «Встановити» навпроти відповідного компонента.
  6. Якщо ви вирішили оновити відразу всі компоненти, натисніть відповідну кнопку на верхній панелі програми.

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

Спосіб 3: онлайн-сервіси

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

  1. Відкрийте «Диспетчер пристроїв» і подивіться в ньому ідентифікатор пристрою, драйвер для якого хочете завантажити.
  2. Перейдіть на онлайн-сервіс з пошуку драйверів по їх ID.
  3. на головній сторінці введіть в пошуковий рядок ідентифікатор і натисніть кнопку «Знайти».
  4. У видачі буде відображений список всіх драйверів, які підходять для вашого обладнання.
  5. Виберіть вподобаний і натисніть кнопку «Завантажити».
  6. Встановіть.

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

Спосіб 4: оновлення штатними засобами операційної системи

Чи потрібна оновлення, як перевірити драйвери? Оновити їх без використання додаткового програмного забезпечення можна і через утиліту «Диспетчер пристроїв».

  1. У пошуку по системі впишіть «Диспетчер пристроїв» і запустіть відповідну програму з результатів.
  2. У списку всіх пристроїв виберіть те, яке хочете оновити.
  3. Натисніть по ньому правою кнопкою миші.
  4. Виберіть в меню пункт "Оновити драйвери».
  5. У новому вікні натисніть кнопку «Оновити автоматично».

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

Ми вже встигли поговорити про те,. А ось як встановити драйвер для старого обладнання, якщо воно не підтримує технологію PnP? І як можна продіагностувати роботу драйверів? Розглянемо дані теми в цій статті.

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

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

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

Наявність конфліктів у обладнання

В наші дні конфлікти драйверів зустрічаються все рідше. Але зустрічаються. Зазвичай, конфлікти виникають, коли двом суб'єктам потрібні одні і ті ж ресурси. А все війни на Землі йшли заради володіння якимись ресурсами! Так що не дивуйтеся, що дана слабкість є і у комп'ютерних комплектуючих. Щоб дізнатися, чи є у пристрої будь-які конфлікти, необхідно продіагностувати роботу драйвера. Для цього треба зайти в Диспетчер пристроїв, Оберіть Пристрої.Далі, в контекстному меню Оберіть властивості і відкрийте вкладку ресурси. Внизу Ви знайдете поле Список конфліктуючих пристроїв, Де і можна дізнатися чи є конфлікти чи ні. При наявності оних, активується кнопка «Змінити», де Ви в ролі судді будете ділити ресурси між конфліктуючими.

Відомості про систему

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

  • У першому вузлі є параметр Конфлікти і спільне використання. У ньому Ви побачите які обладнання використовують однакові ресурси. Що в свою чергу є можливою причиною неполадок.
  • У другому вузлі Ви можете знайти докладні відомості про потрібному обладнанні. А з метою діагностики драйверів найкраще використовувати параметр Пристрої з неполадками.
  • У третьому вузлі, розгорнувши параметр Системні драйвери, Ви можете дізнатися про стан драйверів ядра. Це дуже важливий параметр, тому що він орієнтований саме на драйвера ядра операційної системи. А відновити драйвер ядра набагато складніше, ніж драйвер принтера. І тому краще діагностувати такі випадки, а інакше Ви можете наткнуться на одну з фатальних помилок.

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

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

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

діагностика DirectX

Якщо Ви в меню Виконати наберете dxdiag, То Ви запустите засіб діагностики. У вікні, будуть 4 вкладки: друга про екран, третя про звук і четверта про систему введення. Кожна з них внизу має примітка, де вказані наявність або відсутність проблем. Як бачите, даний засіб діагностує тільки ці три класи обладнання. Чому? Тому що основне використання DirectX - при створенні ігор. А що потрібно грі? Екран, щоб бачити у що ми граємо! Звук, щоб чути рев мотора або постріл у спину. І систему введення, щоб кермувати або стріляти. І пофіг те, що у тебе принтер не друкується. Ось так ось.

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