Уровень запроса прерывания (IRQL) - это приоритет, отдаваемый любому запросу на прерывание, генерируемому компьютерным оборудованием.
1 ответ

На первый взгляд невозможный баг-чек

Я пишу свой первый драйвер ядра, и он падает на следующей строке DriverEntry: status = FwpsCalloutRegister(wdfDevice, &sCallout, &Globals.FlowCalloutId); !analyze v в WinDbg выводит следующее: ************************************************…
28 апр '18 в 19:56
1 ответ

Доступ к глобальной переменной после вызова NdisAcquireSpinLock вызывает IRQL_NOT_LESS_OR_EQUAL BSoD

У меня есть NDIS Filter driver (обновление для WinPcap) и протестировал его на Windows 10 10586 x64 VM. Я включил верификатор, и это вызывает IRQL_NOT_LESS_OR_EQUAL BSoD при запуске Wireshark (он же использует функцию моего драйвера). Вот свалка: 1:…
18 мар '16 в 03:19
1 ответ

Определение уровня IRQL

Как определить уровень IRQL для фрагмента кода драйвера? Макрос PAGED_CODE() указывает, что фрагмент кода может быть выполнен на уровне IRQL меньше, чем DISPATCH_LEVEL. Но как можно определить точный уровень IRQL.
11 мар '15 в 05:24
0 ответов

Как я могу настроить сходство прерывания в Windows 10?

У меня проблемы с пропаданием звука под Windows 10 из-за чрезмерной задержки DPC, вызванной драйвером ACPI.sys. После поиска в теме я хочу поэкспериментировать с уровнями запросов на прерывание и сродством процессора прерываний. как установка ACPI.s…
19 июл '18 в 17:41
0 ответов

Почему функция IoGetInitialStack ограничена IRQL<=APC_LEVEL?

Я пытаюсь найти вершину (или основание) стека в моей функции обратного вызова, которая используется в ядре Windows. Я думал использовать IoGetInitialStack функция для этого, но, к сожалению, в документации говорится: IRQL "<= APC_LEVEL" Я посмотрел …
18 июл '18 в 07:18
0 ответов

KeAcquireSpinLock долгое время выполнения

В настоящее время я разрабатываю драйвер ядра Windows, который реализует собственный сетевой стек. Во время тестирования некоторых базовых функций реализованного стека я заметил, что ответы на эхо-запросы иногда занимали значительно больше времени, …
26 окт '21 в 20:11
0 ответов

Можно ли разблокировать раздел, защищенный мьютексом, с помощью более высокой процедуры Irql в ядре Windows

Я новичок в драйвере ядра Windows, поэтому пытаюсь понять связь мьютекса и irql. Я вижу, что быстрый мьютекс работает в APC irql. Скажем, подпрограмма A выполняет раздел кода, защищенный быстрым мьютексом. Но скажем, в Dispatch irql есть еще одна по…
13 авг '22 в 14:52
1 ответ

использование операций с плавающей запятой на высоком уровне irql

В моей процедуре ядра, которая выполняется с HIGH_LEVEL IRQL, я пытался управлять состоянием с плавающей запятой, напрямую вызывая FXSAVE и FXRSTOR. Поскольку KeSaveExtendedProcessorState и KeRestoreExtendedProcessorState на этом уровне использовать…
18 июл '23 в 18:19