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 |
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로 설정하면 운영 체제에서 명령 설명자 블록(CDB)의 컨트롤 바이트에서 NACA 비트를 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를 나타내는 ASCII 데이터의 16바이트를 포함합니다. 데이터는 이 필드 내에서 왼쪽 맞춤되고 사용되지 않는 바이트는 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 작업 관리 함수를 지원한다는 것을 나타냅니다. 값이 0이면 대상 디바이스가 TERMINATE TASK 작업 관리 기능을 지원하지 않음을 나타냅니다.
Addr16
1로 설정하면 대상이 16비트 너비의 SCSI 주소를 지원한다는 것을 나타냅니다. 값이 0이면 디바이스가 32비트 전체 SCSI 주소를 지원하지 않음을 나타냅니다.
Addr32
1로 설정하면 대상이 32비트 너비의 SCSI 주소를 지원한다는 것을 나타냅니다. 값이 0이면 디바이스가 32비트 전체 SCSI 주소를 지원하지 않음을 나타냅니다.
AckReqQ
1로 설정하면 대상이 요청을 지원하고 보조 버스에서 데이터 전송 핸드셰이크를 승인한다는 것을 나타냅니다. 값이 0이면 대상이 이 함수를 지원하지 않음을 나타냅니다.
MediumChanger
1로 설정하면 디바이스가 중간 전송 요소 내에 포함되거나 연결됨을 나타냅니다. 값이 0이면 디바이스가 중간 전송 요소 내에 포함되거나 연결되지 않았음을 나타냅니다.
MultiPort
1로 설정하면 대상 디바이스가 SCSI-3 다중 포트 디바이스 요구 사항을 준수하는 다중 포트(2개 이상의 포트) 디바이스임을 나타냅니다. 값이 0이면 이 디바이스에 단일 포트가 있고 다중 포트 요구 사항을 구현하지 않음을 나타냅니다.
ReservedBit2
예약되어 있습니다.
EnclosureServices
1로 설정하면 디바이스에 포함된 엔클로저 서비스 구성 요소가 포함되어 있음을 나타냅니다. 값이 0이면 디바이스에 포함된 엔클로저 서비스 구성 요소가 포함되어 있지 않음을 나타냅니다.
ReservedBit3
예약되어 있습니다.
TransferDisable
1로 설정하면 대상이 SCSI CONTINUE TASK 및 TARGET TRANSFER DISABLE 메시지를 지원함을 나타냅니다. 값이 0이면 디바이스가 이러한 메시지 중 하나 또는 둘 다를 지원하지 않음을 나타냅니다. CONTINUE TASK 및 TARGET TRANSFER DISABLE 메시지에 대한 자세한 내용은 SCSI 기본 명령 - 2(SPC-2) 사양을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | scsi.h(Scsi.h, Minitape.h, Storport.h 포함) |