INQUIRYDATA 结构 (scsi.h)

INQUIRYDATA 结构与 TapeMiniExtensionInitTapeMiniVerifyInquiry 例程结合使用,以报告与磁带设备关联的 SCSI 查询数据。

语法

typedef struct _INQUIRYDATA {
  UCHAR              DeviceType : 5;
  UCHAR              DeviceTypeQualifier : 3;
  UCHAR              DeviceTypeModifier : 7;
  UCHAR              RemovableMedia : 1;
  UCHAR              Versions;
  UCHAR              ResponseDataFormat : 4;
  UCHAR              HiSupport : 1;
  UCHAR              NormACA : 1;
  UCHAR              ReservedBit : 1;
  UCHAR              AERC : 1;
  UCHAR              AdditionalLength;
  UCHAR              Reserved[2];
  UCHAR              SoftReset : 1;
  UCHAR              CommandQueue : 1;
  UCHAR              Reserved2 : 1;
  UCHAR              LinkedCommands : 1;
  UCHAR              Synchronous : 1;
  UCHAR              Wide16Bit : 1;
  UCHAR              Wide32Bit : 1;
  UCHAR              RelativeAddressing : 1;
  UCHAR              VendorId[8];
  UCHAR              ProductId[16];
  UCHAR              ProductRevisionLevel[4];
  UCHAR              VendorSpecific[20];
  UCHAR              Reserved3[2];
  VERSION_DESCRIPTOR VersionDescriptors[8];
  UCHAR              Reserved4[30];
} INQUIRYDATA, *PINQUIRYDATA;

成员

DeviceType

指定设备的类型。 DeviceType 可以是以下值之一,在 scsi.h 中定义。

含义
DIRECT_ACCESS_DEVICE 0x00 磁盘
SEQUENTIAL_ACCESS_DEVICE 0x01 磁带设备
PRINTER_DEVICE 0x02 打印机
PROCESSOR_DEVICE 0x03 扫描仪、打印机等
WRITE_ONCE_READ_MULTIPLE_DEVICE 0x04 WORM
READ_ONLY_DIRECT_ACCESS_DEVICE 0x05 CD-ROM
SCANNER_DEVICE 0x06 扫描仪
OPTICAL_DEVICE 0x07 光盘
MEDIUM_CHANGER 0x08 唱机
COMMUNICATION_DEVICE 0x09 网络设备
ARRAY_CONTROLLER_DEVICE 0x0C 阵列控制器
SCSI_ENCLOSURE_DEVICE 0x0D SCSI 机箱设备
REDUCED_BLOCK_DEVICE 0x0E 例如,1394 磁盘
OPTICAL_CARD_READER_WRITER_DEVICE 0x0F 光学卡读取器/编写器
BRIDGE_CONTROLLER_DEVICE 0x10 桥控制器
OBJECT_BASED_STORAGE_DEVICE 0x11 OSD 设备
HOST_MANAGED_ZONED_BLOCK_DEVICE 0x14 主机托管的分区块设备
UNKNOWN_OR_NO_DEVICE 0x1F 未知或无设备类型
LOGICAL_UNIT_NOT_PRESENT_DEVICE 0x7F 逻辑单元不存在

DeviceTypeQualifier

DeviceType 的限定符。 此成员可以采用的值如下所示:

含义
DEVICE_QUALIFIER_ACTIVE 操作系统支持设备,并且存在设备。
DEVICE_QUALIFIER_NOT_ACTIVE 操作系统支持设备,但设备不存在。
DEVICE_QUALIFIER_NOT_SUPPORTED 操作系统不支持此设备。

DeviceTypeModifier

指定 SCSI 定义的设备类型修饰符(如果有)。 如果不存在设备类型修饰符,则此成员为零。

RemovableMedia

为 TRUE 时,指示媒体是可移动的,如果 为 FALSE ,则表示媒体不可移动。

Versions

指示此数据符合的查询数据标准的版本。 有关此字段中允许的版本值的详细信息,请参阅 SCSI 主命令 - 2 (SPC-2) 规范。

ResponseDataFormat

指示控制响应数据格式的 SCSI 标准。 此成员的值必须为 2。

HiSupport

指示当为零时,目标不使用分层寻址模型将 LUN 分配给逻辑单元。 值为 1 表示目标使用分层寻址模型将 LUN 分配给逻辑单元。

NormACA

指示当设置为 1 时,操作系统支持在 CDB () 命令描述符块的控制字节中将 NACA 位设置为 1。 值为零表示系统不支持将 NACA 位设置为 1。 有关 CDB 中 NACA 位和控制字节的功能的详细信息,请参阅 SCSI 主命令 - 2 (SPC-2) 规范。

ReservedBit

保留。

AERC

指示当设置为 1 时,目标设备支持异步事件报告功能。 值为零表示目标设备不支持异步事件报告。 异步事件报告支持的详细信息是特定于协议的。 有关异步偶数报告的详细信息,请参阅 SCSI 主命令 - 2 (SPC-2) 规范。

AdditionalLength

指定 CDB) (命令描述符块的参数的长度(以字节为单位)。

Reserved[2]

保留。

SoftReset

指示当设置为 1 时,目标设备支持软重置。 值为零表示目标不支持软重置。

CommandQueue

指示当设置为 1 时,目标设备支持此逻辑单元的命令队列。 但是,值为零并不一定表示目标设备不支持命令队列。 这些值的含义取决于 SCSI 查询数据中存在的值。 有关命令队列位的含义的信息,请参阅 SCSI 主命令 - 2 (SPC-2) 规范。

Reserved2

保留。

LinkedCommands

指示当设置为 1 时,操作系统支持链接的命令。 值为零表示操作系统不支持链接的命令。

Synchronous

指示当设置为 1 时,目标支持同步数据传输。 值为零表示目标不支持同步数据传输。

Wide16Bit

指示当设置为 1 时,目标支持 16 位宽数据传输。 值为零表示设备不支持 16 位宽数据传输。

Wide32Bit

指示当设置为 1 时,目标支持 32 位宽数据传输。 值为零表示设备不支持 32 位宽数据传输。

RelativeAddressing

指示当设置为 1 时,操作系统支持相对寻址模式。 值为零表示操作系统不支持相对寻址。

VendorId[8]

包含八个字节的 ASCII 数据,用于标识产品的供应商。

ProductId[16]

包含 16 个字节的 ASCII 数据,这些数据指示供应商定义的产品 ID。 数据应在此字段中左对齐,未使用的字节用 ASCII 空白填充。

ProductRevisionLevel[4]

包含四个字节的 ASCII 数据,用于指示供应商定义的产品修订级别。

VendorSpecific[20]

包含 20 字节的供应商特定数据。

Reserved3[2]

保留。

VersionDescriptors[8]

定义 UCHAR 成员 VersionDescriptors[8]

Reserved4[30]

保留。

注解

在 scsi.h 结构定义的 #else 条件指令中定义的其他成员。

ANSIVersion

指示此数据符合的查询数据标准的 ANSI 版本。 有关此字段中允许的版本值的详细信息,请参阅 SCSI 主命令 - 2 (SPC-2) 规范。

ECMAVersion

指示此数据符合的查询数据标准的 ECMA 版本。 有关此字段中允许的版本值的详细信息,请参阅 SCSI 主命令 - 2 (SPC-2) 规范。

ISOVersion

指示此数据符合的查询数据标准的 ISO 版本。 有关此字段中允许的版本值的详细信息,请参阅 SCSI 主命令 - 2 (SPC-2) 规范。

TerminateTask

指示当设置为 1 时,目标设备支持 SCSI TERMINATE TASK 任务管理功能。 值为零表示目标设备不支持 TERMINATE TASK 任务管理功能。

Addr16

当设置为 1 时,指示目标支持 16 位宽 SCSI 地址。 值为零表示设备不支持 32 位宽 SCSI 地址。

Addr32

当设置为 1 时,指示目标支持 32 位宽 SCSI 地址。 值为零表示设备不支持 32 位宽 SCSI 地址。

AckReqQ

当设置为 1 时,指示目标支持请求并确认辅助总线上的数据传输握手。 值为零表示目标不支持此函数。

MediumChanger

当设置为 1 时,指示设备嵌入或附加到中等传输元素。 如果值为零,则表示设备未嵌入到中型传输元素中或未附加到介质传输元素中。

MultiPort

指示当设置为 SCSI-3 多端口设备时,目标设备是多端口 (2 个或更多个端口,) 设备符合 SCSI-3 多端口设备要求。 值为零表示此设备具有单个端口,并且不实现多端口要求。

ReservedBit2

保留。

EnclosureServices

当设置为 1 时,指示设备包含嵌入式机箱服务组件。 值为零表示设备不包含嵌入式机箱服务组件。

ReservedBit3

保留。

TransferDisable

指示当设置为 1 时,目标支持 SCSI CONTINUE TASK 和 TARGET TRANSFER DISABLE 消息。 值为零表示设备不支持其中一条或两条消息。 有关 CONTINUE TASK 和 TARGET TRANSFER DISABLE 消息的详细信息,请参阅 SCSI 主命令 - 2 (SPC-2) 规范。

要求

要求
Header scsi.h (包括 Scsi.h、Minitape.h、Storport.h)

另请参阅

TapeMiniExtensionInit

TapeMiniVerifyInquiry