Функция ScsiPortGetLogicalUnit (srb.h)
Подпрограмма ScsiPortGetLogicalUnit возвращает указатель на область хранения для каждого lu драйвера мини-порта для данного периферийного устройства.
Синтаксис
SCSIPORT_API PVOID ScsiPortGetLogicalUnit(
[in] PVOID HwDeviceExtension,
[in] UCHAR PathId,
[in] UCHAR TargetId,
[in] UCHAR Lun
);
Параметры
[in] HwDeviceExtension
Указатель на расширение аппаратного устройства. Это область хранения для каждого HBA, которую драйвер порта выделяет и инициализирует от имени драйвера мини-порта. Драйверы мини-портов обычно хранят сведения, относящиеся к HBA, в этом расширении, такие как состояние HBA и сопоставленные диапазоны доступа HBA. Эта область доступна драйверу мини-порта в элементе DeviceExtension-HwDeviceExtension> объекта устройства HBA сразу после вызова драйвером мини-порта ScsiPortInitialize. Драйвер порта освобождает эту память при удалении устройства.
[in] PathId
Определяет шину SCSI.
[in] TargetId
Определяет целевой контроллер или устройство в шине.
[in] Lun
Определяет номер логической единицы целевого устройства.
Возвращаемое значение
ScsiPortGetLogicalUnit возвращает указатель на область хранения драйвера мини-порта для запрошенной логической единицы. Если драйвер порта операционной системы считает эту логическую единицу несуществующей, он возвращает значение NULL.
Комментарии
ScsiPortGetLogicalUnit не имеет значения, если подпрограмма DriverEntry драйвера мини-порта указала ноль для LuExtensionSize в HW_INITIALIZATION_DATA при вызове ScsiPortInitialize. В противном случае драйвер порта, зависящий от операционной системы, выделяет и инициализирует с нулями набор расширений LU указанного размера для используемого драйвера мини-порта.
Хранилище на единицу lu можно использовать для хранения данных, относящихся к конкретному периферийному устройству, например сохраненных указателей данных. Чтобы получить доступ к этой области, драйвер мини-порта вызывает ScsiPortGetLogicalUnit , когда драйвер хранит сведения о состоянии или текущей операции для любого конкретного периферийного устройства.
Драйвер порта, зависящий от операционной системы, может считать логическую единицу несуществующей, если для этой логической единицы нет активного запроса и устройство никогда не было успешно выбрано.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | srb.h (включая Miniport.h, Scsi.h) |
Библиотека | Scsiport.lib |