INQUIRYDATA 構造体 (scsi.h)

INQUIRYDATA 構造体は、TapeMiniExtensionInit ルーチンおよび TapeMiniVerifyInquiry ルーチンと組み合わせて使用され、テープ・デバイスに関連付けられている 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 (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 で定義されているように、デバイスの種類修飾子 (存在する場合) を指定します。 デバイスの種類修飾子が存在しない場合、このメンバーは 0 になります。

RemovableMedia

TRUE の場合はメディアがリムーバブルであり、FALSE の場合はメディアがリムーバブルではないことを示します。

Versions

このデータが準拠している照会データ標準のバージョンを示します。 このフィールドで使用できるバージョン値の詳細については、 SCSI プライマリ コマンド - 2 (SPC-2) の仕様に関するページを参照してください。

ResponseDataFormat

応答データ形式を管理する SCSI 標準を示します。 このメンバーの値は 2 である必要があります。

HiSupport

0 の場合、ターゲットが論理ユニットに LUN を割り当てるために階層型アドレス指定モデルを使用しないことを示します。 値 1 は、ターゲットが階層型アドレス指定モデルを使用して LUN を論理ユニットに割り当てることを示します。

NormACA

1 に設定すると、オペレーティング システムが NACA ビットをコマンド記述子ブロック (CDB) の制御バイトの 1 に設定することをサポートしていることを示します。 値 0 は、システムが NACA ビットを 1 に設定することをサポートしていないことを示します。 CDB の NACA ビットおよび制御バイトの機能の詳細については、 SCSI プライマリ コマンド - 2 (SPC-2) の仕様を参照してください。

ReservedBit

予約済み。

AERC

1 つに設定すると、ターゲット デバイスが非同期イベント レポート機能をサポートすることを示します。 0 の値は、ターゲット デバイスが非同期イベント レポートをサポートしていないことを示します。 非同期イベント レポートのサポートの詳細は、プロトコル固有です。 非同期偶数レポートの詳細については、 SCSI プライマリ コマンド - 2 (SPC-2) の仕様に関するページを参照してください。

AdditionalLength

コマンド記述子ブロック (CDB) のパラメーターの長さをバイト単位で指定します。

Reserved[2]

予約済み。

SoftReset

1 に設定すると、ターゲット デバイスがソフト リセットをサポートすることを示します。 0 の値は、ターゲットがソフト リセットをサポートしていないことを示します。

CommandQueue

1 に設定すると、ターゲット デバイスがこの論理ユニットのコマンド キューをサポートすることを示します。 ただし、0 の値は、ターゲット デバイスがコマンド キューをサポートしていないことを必ずしも示すわけではありません。 これらの値の意味は、SCSI 照会データに存在する値によって異なります。 コマンド キュー ビットの意味については、 SCSI プライマリ コマンド - 2 (SPC-2) の仕様を参照してください。

Reserved2

予約済み。

LinkedCommands

1 に設定すると、オペレーティング システムでリンクされたコマンドがサポートされることを示します。 0 の値は、オペレーティング システムがリンクされたコマンドをサポートしていないことを示します。

Synchronous

1 に設定すると、ターゲットが同期データ転送をサポートすることを示します。 0 の値は、ターゲットが同期データ転送をサポートしていないことを示します。

Wide16Bit

1 に設定すると、ターゲットが 16 ビット幅のデータ転送をサポートすることを示します。 0 の値は、デバイスが 16 ビット幅のデータ転送をサポートしていないことを示します。

Wide32Bit

1 に設定すると、ターゲットが 32 ビット幅のデータ転送をサポートすることを示します。 0 の値は、デバイスが 32 ビット幅のデータ転送をサポートしていないことを示します。

RelativeAddressing

1 に設定すると、オペレーティング システムが相対アドレス指定モードをサポートすることを示します。 0 の値は、オペレーティング システムが相対アドレス指定をサポートしていないことを示します。

VendorId[8]

製品のベンダーを識別する 8 バイトの ASCII データが含まれます。

ProductId[16]

ベンダーによって定義されている製品 ID を示す 16 バイトの ASCII データが含まれます。 データは、このフィールド内で左揃えになり、未使用のバイトは ASCII ブランクで埋められます。

ProductRevisionLevel[4]

ベンダーによって定義されているように、製品リビジョン レベルを示す 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 タスク管理機能をサポートすることを示します。 0 の値は、ターゲット デバイスが TERMINATE TASK タスク管理機能をサポートしていないことを示します。

Addr16

1 に設定すると、ターゲットが 16 ビット幅の SCSI アドレスをサポートすることを示します。 0 の値は、デバイスが 32 ビットワイド SCSI アドレスをサポートしていないことを示します。

Addr32

1 に設定すると、ターゲットが 32 ビット幅の SCSI アドレスをサポートすることを示します。 0 の値は、デバイスが 32 ビットワイド SCSI アドレスをサポートしていないことを示します。

AckReqQ

1 に設定すると、ターゲットが要求をサポートし、セカンダリ バスでのデータ転送ハンドシェイクを確認することを示します。 値 0 は、ターゲットがこの関数をサポートしていないことを示します。

MediumChanger

1 つに設定すると、デバイスが中トランスポート要素内に埋め込まれたり、中のトランスポート要素に接続されたりすることを示します。 0 の値は、デバイスが中トランスポート要素内に埋め込まれていないか、または中のトランスポート要素に接続されていないことを示します。

マルチポート

1 つに設定すると、ターゲット デバイスが SCSI-3 マルチポート デバイスの要件に準拠するマルチポート (2 つ以上のポート) デバイスであることを示します。 0 の値は、このデバイスに 1 つのポートがあり、マルチポート要件を実装していないことを示します。

ReservedBit2

予約済み。

EnclosureServices

1 つに設定すると、デバイスに埋め込みエンクロージャ サービス コンポーネントが含まれていることを示します。 値 0 は、デバイスに埋め込みエンクロージャ サービス コンポーネントが含まれていないことを示します。

ReservedBit3

予約済み。

TransferDisable

1 に設定すると、ターゲットが SCSI CONTINUE TASK および TARGET TRANSFER DISABLE メッセージをサポートすることを示します。 値 0 は、デバイスがこれらのメッセージの一方または両方をサポートしていないことを示します。 CONTINUE TASK および TARGET TRANSFER DISABLE メッセージの詳細については、 SCSI プライマリ コマンド - 2 (SPC-2) 仕様を参照してください。

要件

要件
Header scsi.h (Scsi.h、Minitape.h、Storport.h を含む)

こちらもご覧ください

TapeMiniExtensionInit

TapeMiniVerifyInquiry