WDF_IO_TYPE_CONFIG 구조체(wdfdevice.h)

[KMDF 및 UMDF에 적용]

WDF_IO_TYPE_CONFIG 구조는 읽기 및 쓰기 요청 및 디바이스 I/O 제어 요청에 대한 드라이버의 기본 버퍼 액세스 방법을 지정합니다.

구문

typedef struct _WDF_IO_TYPE_CONFIG {
  ULONG              Size;
  WDF_DEVICE_IO_TYPE ReadWriteIoType;
  WDF_DEVICE_IO_TYPE DeviceControlIoType;
  ULONG              DirectTransferThreshold;
} WDF_IO_TYPE_CONFIG, *PWDF_IO_TYPE_CONFIG;

멤버

Size

이 구조체의 크기(바이트)입니다.

ReadWriteIoType

Kmdf 드라이버가 읽기 및 쓰기 요청에 대해 수신하는 데이터 버퍼에 액세스하는 데 사용할 메서드를 식별하는 WDF_DEVICE_IO_TYPE 형식의 열거자입니다.

Umdf 드라이버가 읽기 및 쓰기 요청의 데이터 버퍼에 액세스하는 데 사용하는 방법을 식별하는 WDF_DEVICE_IO_TYPE 형식의 열거자입니다. 유효한 값에는 WdfDeviceIoBufferedWdfDeviceIoDirect가 포함됩니다.

DeviceControlIoType

이 멤버는 KMDF에 적용되지 않습니다.

Umdf IOCTL 요청의 데이터 버퍼에 드라이버 사용을 선호하는 메서드를 식별하는 WDF_DEVICE_IO_TYPE 형식의 열거자입니다. 유효한 값에는 WdfDeviceIoBufferedWdfDeviceIoDirect가 포함됩니다.

DirectTransferThreshold

이 멤버는 KMDF에 적용되지 않습니다.

Umdf 프레임워크가 디바이스에 직접 I/O를 사용하는 가장 작은 버퍼 크기(바이트)를 지정하는 선택적 값입니다. 예를 들어 DirectTransferThreshold 를 12288로 설정하여 프레임워크가 12킬로바이트보다 작은 모든 버퍼에 버퍼링된 I/O를 사용하고 12킬로바이트보다 크거나 같은 버퍼의 경우 직접 I/O를 사용해야 함을 나타냅니다. 일반적으로 프레임워크는 최상의 성능을 제공하는 설정을 사용하기 때문에 이 값을 제공할 필요가 없습니다.

설명

WDF_IO_TYPE_CONFIG 구조체는 WdfDeviceInitSetIoTypeEx 메서드에 대한 입력으로 사용됩니다.

WDF_IO_TYPE_CONFIG 구조를 초기화하려면 드라이버가 WDF_IO_TYPE_CONFIG_INIT 호출해야 합니다.

UMDF 버전 2.0 이상을 사용하여 드라이버를 작성하는 경우 기본 버퍼 액세스 방법 지정에 대한 자세한 내용은 UMDF 드라이버에서 버퍼 액세스 메서드 관리를 참조하세요.

UMDF 버전 1을 사용하여 드라이버를 작성하는 경우 x, 드라이버는 IWDFDeviceInitialize2::SetIoTypePreference 를 호출하여 기본 버퍼 액세스 메서드를 지정합니다.

요구 사항

요구 사항
최소 KMDF 버전 1.13
최소 UMDF 버전 2.0
머리글 wdfdevice.h(Wdf.h 포함)

추가 정보

WDF_DEVICE_IO_TYPE

WDF_IO_TYPE_CONFIG_INIT

WdfDeviceInitSetIoTypeEx