Driver Verifier - найновіший пристрій Windows (гл

Утиліта Driver Verifier (про яку ми вже розповідали в розділі 7) надає кілька параметрів для перевірки правильності операцій, пов'язаних із введенням-виводом. Ha рис. 9-22 у вікні Driver Verifier Manager (Диспетчер перевірки драйверів) у Windows Server 2003 ці параметри позначені прапорцями.

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

найновіший

Мал. 9-22. Параметри Driver Verifier, що стосуються операцій вводу-виводу

Параметри перевірки вводу-виводу наведені нижче.

• I/O Verification (Перевірка вводу-виводу) Якщо цей параметр вибрано, диспетчер вводу-виводу виділяє пам'ять під IRP-пакети для драйверів, що перевіряються зі спеціального пулу, і відстежує його використання. Крім того, Verifier викликає крах системи після закінчення обробки IRP з неправильним станом і при передачі невірного об'єкта "пристрій" диспетчеру вводу-виводу. (B Windows 2000 цей параметр називався I/O Verification Level 1).

• I/O Verification Level 2 (Перевірка введення-виведення рівня 2) Цей параметр існує лише у Windows 2000; він просто посилює перевірку операцій обробки IRP та використання стека.

• Enhanced I/O Verification (Розширена перевірка вводу-виводу) Цей параметр вперше з'явився в Windows XP і включає моніторинг усіх IRP для контролю того, що драйвери коректно позначають їх при асинхронній обробці, що вони правильно керують блоками стека пристрою і що вони видаляють кожен об'єкт «пристрій» лише один раз. B доповнення Verifier випадковим чиномпосилає драйверам помилкові IRP, пов'язані з керуванням електроживленням та WMI, змінює порядок перерахування пристроїв та змінює стан IRP, пов'язаних з PnP та електроживленням, після закінчення їх обробки; останнє дозволяє виявити драйвери, що повертають невірний стан своїх процедур диспетчеризації.

• DMA Checking (Перевірка DMA) DMA — апаратно підтримуваний механізм, що дозволяє пристроям передавати дані у фізичну пам'ять або отримувати їх із неї без участі процесора. Диспетчер вводу-виводу підтримує ряд функцій, що використовуються драйверами для планування DMA-операцій та управління ними. Цей параметр включає перевірку правильності застосування цих функцій та буферів, що надаються диспетчером вводу-виводу для DMA-операцій.

• Disk Integrity Verification (Перевірка цілісності диска) Після увімкнення цього параметра, доступного лише у Windows Server 2003, Verifier веде моніторинг операцій читання та запису на дисках та перевіряє контрольні суми відповідних даних. Після закінчення операцій читання з диска Verifier перевіряє раніше збережені контрольні суми та викликає крах системи, якщо нова та стара контрольні суми не збігаються, оскільки це свідчить про пошкодження диска на апаратному рівні.