Набор правил IRQL (KMDF)
Используйте эти правила, чтобы убедиться, что драйвер выполняет вызовы DDI по требуемому irQL.
Драйвер, который не соответствует правилам IRQL, может вызвать серьезные проблемы во время работы, которые могут привести к взаимоблокировке или сбою компьютера.
В этом разделе
Раздел | Описание |
---|---|
Правило KmdfIrql указывает, что драйвер вызывает метод платформы в irQL, который меньше или равен максимальному значению IRQL для этого метода. |
|
Правило KmdfIrql2 указывает, что драйвер вызывает метод платформы в irQL, который меньше или равен максимальному значению IRQL для этого метода. |
|
Правило UsbKmdfIrql указывает, что драйвер KMDF не вызывает интерфейсы драйвера устройств (DDI) для USB на неправильном уровне IRQL. |
|
Правило UsbKmdfIrql2 указывает, что драйвер KMDF не должен вызывать DDIs, относящиеся к USB, на неправильном уровне IRQL. |
|
Правило UsbKmdfIrqlExplicit проверяет, вызываются ли DDIs KMDF на правильном уровне IRQL. Это правило применяется ко всем функциям EvtIoCallback. |
|
Правило WdfRequestSendSyncAtDispatch проверяет, отправлена ли функция WdfRequestSend на правильном уровне приоритета IRQL. |
|
Правило WdfRequestSendSyncAtDispatch2 проверяет, отправлена ли функция WdfRequestSend на правильном уровне приоритета IRQL. |
Выбор набора правил Irql
Выберите проект драйвера (VCXProj) в Microsoft Visual Studio. В меню Драйвер выберите Запуск средства проверки статических драйверов....
Перейдите на вкладку Правила . В разделе Наборы правил выберите Irql.
Чтобы выбрать набор правил по умолчанию в окне командной строки разработчика Visual Studio, укажите Irql.sdv с параметром /проверка. Пример:
msbuild /t:sdv /p:Inputs="/check:Irql.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
Дополнительные сведения см. в разделах Использование статического средства проверки драйверов для поиска дефектов в драйверах и Команд средства проверки статических драйверов (MSBuild).