структура VDS_LUN_INFORMATION (vdslun.h)
[Начиная с Windows 8 и Windows Server 2012, COM-интерфейс службы виртуальных дисков замечается API управления хранилищем Windows.]
Определяет сведения о LUN или диске. Приложения могут использовать эту структуру для уникальной идентификации LUN в любое время.
Синтаксис
typedef struct _VDS_LUN_INFORMATION {
ULONG m_version;
BYTE m_DeviceType;
BYTE m_DeviceTypeModifier;
BOOL m_bCommandQueueing;
VDS_STORAGE_BUS_TYPE m_BusType;
char *m_szVendorId;
char *m_szProductId;
char *m_szProductRevision;
char *m_szSerialNumber;
GUID m_diskSignature;
VDS_STORAGE_DEVICE_ID_DESCRIPTOR m_deviceIdDescriptor;
ULONG m_cInterconnects;
VDS_INTERCONNECT *m_rgInterconnects;
} VDS_LUN_INFORMATION;
Члены
m_version
Версия этой структуры. Текущее значение является константой VER_VDS_LUN_INFORMATION.
m_DeviceType
Тип устройства SCSI-2 lun.
m_DeviceTypeModifier
Модификатор типа устройства SCSI-2 для LUN. Для LUN без модификатора типа устройства значение равно нулю.
m_bCommandQueueing
Если значение РАВНО TRUE, LUN поддерживает несколько невыполненных команд; в противном случае — FALSE. За синхронизацию очереди отвечает драйвер порта.
m_BusType
Тип шины LUN, перечисляемый VDS_STORAGE_BUS_TYPE.
m_szVendorId
Указатель на идентификатор поставщика LUN; строка с нулевым завершением, читаемая человеком. Для устройств без идентификатора поставщика значение равно нулю.
m_szProductId
Указатель на идентификатор продукта LUN, обычно это номер модели; строка с нулевым завершением, читаемая человеком. Для устройств без идентификатора продукта значение равно нулю.
m_szProductRevision
Указатель на редакцию продукта LUN; строка с нулевым завершением, читаемая человеком. Для устройств без редакции продукта значение равно нулю.
m_szSerialNumber
Указатель на серийный номер LUN; строка с нулевым завершением, читаемая человеком. Для устройств без серийного номера значение равно нулю.
m_diskSignature
Сигнатура LUN. Для дисков, использующих структуру секционирования главной загрузочной записи (MBR), первые 32 бита GUID составляют сигнатуру диска, а остальные биты — нули. Для дисков, использующих структуру секционирования таблицы разделов GUID (GPT), GUID состоит из идентификатора диска GPT. Если это значение равно нулю, диск не инициализирован или поставщик оборудования не смог получить подпись.
m_deviceIdDescriptor
Массив, содержащий дескриптор LUN в различных форматах, таких как VDSStorageIdTypeFCPHName и VDSStorageIdTypeVendorSpecific. Поставщики могут использовать VDSStorageIdTypeVendorSpecific для хранения произвольной байтовой строки по выбору поставщика для уникальной идентификации LUN. См. структуру VDS_STORAGE_DEVICE_ID_DESCRIPTOR и структуру VDS_STORAGE_IDENTIFIER .
m_cInterconnects
Количество портов соединения, указанное в m_rgInterconnects.
m_rgInterconnects
Указатель на массив портов межсоединения, с помощью которых можно получить доступ к LUN. См . структуру VDS_INTERCONNECT .
Комментарии
Структура VDS_LUN_INFORMATION включает поля со страниц "Данные запроса SCSI" и "Данные о жизненно важных продуктах" 0x80 и 0x83. Метод GetIdentificationData в интерфейсах IVdsLun и IVdsDisk возвращает эту структуру. Он также передается в качестве аргумента в методе IVdsHwProviderPrivate::QueryIfCreatedLun , чтобы определить, владеет ли данный поставщик указанным LUN.
Чтобы получить объект LUN, используйте метод IVdsService::GetObject . Затем можно использовать метод IVdsLun::GetProperties для получения свойств LUN.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Верхняя часть | vdslun.h (включая Vds.h, VdsHwPrv.h для поставщиков оборудования) |
См. также раздел
IVdsDisk::GetIdentificationData
IVdsHwProviderPrivate::QueryIfCreatedLun
IVdsLun::GetIdentificationData