функция WRITE_REGISTER_BUFFER_ULONG (wdm.h)

Подпрограмма WRITE_REGISTER_BUFFER_ULONG разыменовывает указанный указатель, вставляет барьер памяти и записывает набор значений ULONG из буфера в указанный адрес.

Синтаксис

void WRITE_REGISTER_BUFFER_ULONG(
  [in] volatile ULONG *Register,
  [in] PULONG         Buffer,
  [in] ULONG          Count
);

Параметры

[in] Register

Указатель на регистр, который должен быть сопоставлен диапазоном в пространстве памяти.

[in] Buffer

Указатель на буфер, из которого записывается массив значений ULONG.

[in] Count

Указывает количество значений ULONG, записываемых в регистр.

Возвращаемое значение

None

Remarks

Эта процедура вставляет барьер памяти в код. Этот барьер гарантирует, что каждая операция, которая отображается в исходном коде до вызова этой подпрограммы, будет завершена перед любой операцией, которая появляется после вызова.

Дополнительные сведения о барьерах памяти см. в разделе KeMemoryBarrier.

Размер буфера должен быть достаточно большим, чтобы содержать по крайней мере указанное количество значений ULONG.

Вызывающие WRITE_REGISTER_BUFFER_ULONG могут выполняться в любой среде IRQL, предполагая, что буфер является резидентным, а регистр — резидентной сопоставленной памятью устройства.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows 2000.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h, Miniport.h, Wudfwdm.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Любой уровень (см. раздел "Примечания")