STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR structure (ntddstor.h)

The STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR structure is used to retrieve the attributes information for a device.

Syntax

typedef struct _STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR {
  ULONG   Version;
  ULONG   Size;
  ULONG64 Attributes;
} STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR, *PSTORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR;

Members

Version

Contains the version of the data reported.

Size

Indicates the quantity of data reported, in bytes. This is the sizeof(STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR).

Attributes

Value Meaning
STORAGE_ATTRIBUTE_BYTE_ADDRESSABLE_IO
0x01
Attribute that indicates a storage device supports byte addressable IO.
STORAGE_ATTRIBUTE_BLOCK_IO
0x02
Attribute that indicates a storage device supports block IO.
STORAGE_ATTRIBUTE_DYNAMIC_PERSISTENCE
0x04
Attribute that indicates that persistence of data on storage device may change.
STORAGE_ATTRIBUTE_VOLATILE
0x08
Attribute that indicates a storage device is volatile and does not support persistence of data.
STORAGE_ATTRIBUTE_ASYNC_EVENT_NOTIFICATION
0x10
Reserved
STORAGE_ATTRIBUTE_PERF_SIZE_INDEPENDENT
0x20
Attribute that indicates a storage device has IO performance independent of IO sizes.

Requirements

Requirement Value
Minimum supported client Windows 10
Minimum supported server Windows Server 2016
Header ntddstor.h (include Ntddstor.h)