다음을 통해 공유


DEVICE_LB_PROVISIONING_DESCRIPTOR 구조체(ntddstor.h)

DEVICE_LB_PROVISIONING_DESCRIPTOR 구조는 IOCTL_STORAGE_QUERY_PROPERTY 요청에서 반환된 쿼리 결과 구조 중 하나입니다. 이 구조에는 스토리지 디바이스에 대한 씬 프로비저닝 기능이 포함되어 있습니다.

통사론

typedef struct _DEVICE_LB_PROVISIONING_DESCRIPTOR {
  ULONG     Version;
  ULONG     Size;
  UCHAR     ThinProvisioningEnabled : 1;
  UCHAR     ThinProvisioningReadZeros : 1;
  UCHAR     AnchorSupported : 3;
  UCHAR     UnmapGranularityAlignmentValid : 1;
  UCHAR     GetFreeSpaceSupported : 1;
  UCHAR     MapSupported : 1;
  UCHAR     Reserved1[7];
  ULONGLONG OptimalUnmapGranularity;
  ULONGLONG UnmapGranularityAlignment;
  ULONG     MaxUnmapLbaCount;
  ULONG     MaxUnmapBlockDescriptorCount;
} DEVICE_LB_PROVISIONING_DESCRIPTOR, *PDEVICE_LB_PROVISIONING_DESCRIPTOR;

회원

Version

이 구조체의 버전입니다.

Size

이 구조체의 크기입니다. 이 설정은 sizeof(DEVICE_LB_PROVISIONING_DESCRIPTOR).

ThinProvisioningEnabled

씬 프로비전 사용 상태입니다.

의미
0 씬 프로비저닝을 사용할 수 없습니다.
1 씬 프로비저닝이 사용됩니다.

ThinProvisioningReadZeros

매핑되지 않은 지역에 대한 읽기는 0을 반환합니다.

의미
0 매핑되지 않은 지역에서 읽은 데이터는 정의되지 않습니다.
1 읽기는 0을 반환합니다.

AnchorSupported

고정된 LBA 매핑 상태에 대한 지원입니다.

의미
0 고정된 LBA 매핑 상태는 지원되지 않습니다.
1 고정된 LBA 매핑 상태가 지원됩니다.

UnmapGranularityAlignmentValid

디바이스에 대한 매핑되지 않은 세분성 맞춤의 유효성입니다.

의미
0 매핑 해제 세분성 맞춤이 잘못되었습니다.
1 매핑 해제 세분성 맞춤이 유효합니다.

GetFreeSpaceSupported

DeviceDsmAction_GetFreeSpace대한 지원을 나타냅니다.

의미
0 DeviceDsmAction_GetFreeSpace 지원되지 않습니다.
1 DeviceDsmAction_GetFreeSpace 지원됩니다.

MapSupported

DeviceDsmAction_Map대한 지원을 나타냅니다.

의미
0 DeviceDsmAction_Map 지원되지 않습니다.
1 DeviceDsmAction_Map 지원됩니다.

Reserved1[7]

예약; 사용하지 마세요.

OptimalUnmapGranularity

디바이스에 대한 매핑 해제 세분성을 위한 최적의 블록 수입니다.

UnmapGranularityAlignment

디바이스의 매핑 해제 세분성 맞춤에 대해 설정된 현재 값(블록)입니다. UnmapGranularityAlignmentValid 값은 이 멤버의 유효성을 나타냅니다.

MaxUnmapLbaCount

단일 UNMAP 명령에서 논리 블록 단위로 매핑 해제할 수 있는 최대 LBA 양입니다. Windows 10부터 유효합니다.

MaxUnmapBlockDescriptorCount

단일 UNMAP 명령에서 허용되는 설명자의 최대 수입니다. Windows 10부터 유효합니다.

발언

이 구조는 STORAGE_PROPERTY_QUERYPropertyId 멤버가 storageDeviceLBProvisioningProperty 설정된 경우 IOCTL_STORAGE_QUERY_PROPERTY 요청에서 시스템 버퍼에 반환됩니다.

DEVICE_LB_PROVISIONING_DESCRIPTOR 구조체는 현재 IRP 스택 위치에 대해 Parameters.DeviceIoControl.OutputBufferLength 설정된 sizeof(DEVICE_LB_PROVISIONING_DESCRIPTOR) 값을 사용하여 Irp->AssociatedIrp.SystemBuffer 시스템 버퍼에 기록됩니다.

unmapGranularityAlignmentValid 경우 UnmapGranularityAlignment 사용하는 코드는 값이 0이라고 가정해야 합니다.

기본 스토리지 디바이스가 SCSI 디바이스인 경우 매핑 해제 기능을 쿼리할 수 있습니다. DEVICE_TRIM_DESCRIPTOR 구조체의 TrimEnabled 멤버가 TRUE이면 UNMAP가 지원됩니다. DEVICE_TRIM_DESCRIPTOR 구조체는 STORAGE_PROPERTY_QUERYPropertyId 멤버가 StorageDeviceTrimProperty설정된 경우 IOCTL_STORAGE_QUERY_PROPERTY 요청에서 시스템 버퍼에 반환됩니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows 8
헤더 ntddstor.h(Ntddstor.h 포함)

참고 항목

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_PROPERTY_QUERY