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 값의 수를 지정합니다.

반환 값

없음

설명

이 루틴은 코드에 메모리 장벽을 삽입합니다. 이 장벽은 이 루틴에 대한 호출 전에 소스 코드에 표시되는 모든 작업이 호출 후에 나타나는 작업 전에 완료되도록 보장합니다.

메모리 장벽에 대한 자세한 내용은 KeMemoryBarrier를 참조하세요.

버퍼 버퍼의 크기는 지정된 개수 이상의 ULONG64 값을 포함할 수 있을 만큼 커야 합니다.

버퍼가 상주하고 Register 레지스터가 상주하고 매핑된 디바이스 메모리라고 가정하면 READ_REGISTER_BUFFER_ULONG64 매크로의 호출자는 모든 IRQL에서 실행될 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 64비트 버전의 Windows에서만 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 wdm.h(Wdm.h 포함)
라이브러리 NtosKrnl.exe
DLL NtosKrnl.exe
IRQL 모든 수준(설명 섹션 참조)