Правило ExclusiveResourceAccess (wdm)
Правило ExclusiveResourceAccess указывает, что драйвер вызывает ExAcquireResourceExclusiveLite перед вызовом ExReleaseResourceLite или ExReleaseResourceForThreadLite , и указывает, что драйвер вызывает ExReleaseResourceLite или ExReleaseResourceForThreadLite перед любыми последующими вызовами ExAcquireResourceExclusiveLite.
Вложенные вызовы разрешены, если они получают и освобождают различные ресурсы. Вложенные вызовы для получения или освобождения одних и того же ресурса нарушают это правило.
Это правило также указывает, что после завершения подпрограммы драйвер не должен иметь монопольного доступа к ресурсу. Средство проверки статических драйверов отслеживает конец процедур DriverEntry, AddDevice, StartIo, StartDevice, DpcForIsr, Cancel, Dispatch, RemoveDevice и Unload .
Модель драйвера: WDM
Проверка ошибок, обнаруженных с помощью этого правила |
Как тестировать
Во время компиляции |
---|
Запустите средство проверки статических драйверов и укажите правило ExclusiveResourceAccess . Выполните следующие действия, чтобы выполнить анализ кода.
Дополнительные сведения см. в разделе Использование средства проверки статических драйверов для поиска дефектов в драйверах. |
Применяется к
ExAcquireResourceExclusiveLiteExReleaseResourceForThreadLiteExReleaseResourceLite
См. также раздел
Предотвращение ошибок и взаимоблокировок при использовании спиновых блокировок