Поделиться через


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

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

Синтаксис

void READ_REGISTER_BUFFER_ULONG64(
  [in]  volatile ULONG64 *Register,
  [out] PULONG64         Buffer,
  [in]  ULONG            Count
);

Параметры

[in] Register

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

[out] Buffer

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

[in] Count

Указывает количество ULONG64 значений, считываемых в буфер.

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

None

Remarks

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

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

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

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

Требования

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