I/o supervisor Guide for Windows 9x/Me Operating Systems


Supplemental Tables Table 1 - SRB Functions



Download 0.64 Mb.
Page16/16
Date31.07.2017
Size0.64 Mb.
#25729
1   ...   8   9   10   11   12   13   14   15   16

Supplemental Tables

Table 1 - SRB Functions





Value

Element

Comments

x00

SRB_FUNCTION_EXECUTE_SCSI

A SCSI device I/O request should be executed on the target logical unit.

0x01

SRB_FUNCTION_CLAIM_DEVICE

The port driver processes this request without calling the miniport driver.

0x02

SRB_FUNCTION_IO_CONTROL

(Supported in Windows NT IOCTL mechanism).

The request is an I/O control request. The SRB DataBuffer points to an SRB_IO_CONTROL header followed by the data area. The value in DataBuffer can be used by the driver, regardless of the value of MapBuffers field. If the HBA miniport driver supports this request, it should execute the request and notify the OS-specific port driver when it has completed it, using the normal mechanism of ScsiPortNotification with RequestComplete and NextRequest. Only the Function, SrbFlags, TimeOutValue, DataBuffer, DataTransferLength and SrbExtension are valid.



0x03

SRB_FUNCTION_RECEIVE_EVENT

(Defined for future versions) The HBA should be prepared to receive an Asynchronous Event Notification from the addressed target. The DataBuffer indicates where the data should be placed.

0x04

SRB_FUNCTION_RELEASE_QUEUE

The port driver processes this request without calling the miniport driver.

0x05

SRB_FUNCTION_ATTACH_DEVICE

The port driver processes this request without calling the miniport driver.

0x06

SRB_FUNCTION_RELEASE_DEVICE

The port driver processes this request without calling the miniport driver.

0x07

SRB_FUNCTION_SHUTDOWN

The system is being shut down. The request is passed to the miniport driver if CachesData was set to TRUE in the PORT_CONFIGURATION_INFORMATION data. The miniport driver can receive several of these notifications before all system activity is actually stopped; however, the last shutdown notification will occur after the last start I/O. Only the Function, PathId, TargetId and Lun fields are valid.

0x08

SRB_FUNCTION_FLUSH

The miniport should flush any cached data for the device. The request is passed to the miniport driver if CachesData is TRUE in the PORT_CONFIGURATION_INFORMATION data. Only the Function, PathId, TargetId and Lun

fields are valid.



0x10

SRB_FUNCTION_ABORT_COMMAND

A SCSIMESS_ABORT message should be sent to cancel the request pointed to by the NextSrb field. If this is tagged queue request, then a SCSIMESS_ABORT_WITH_TAG message should be used. If the indicated request has been completed, this request should be completed normally. Only the Function, PathId, TargetId, Lun, and NextSrb fields are valid.

0x11

SRB_FUNCTION_RELEASE_RECOVERY

(Defined for future versions) A SCSIMESS_RELEASE_RECOVERY message should be sent to the target controller. Only the Function, PathId, TargetId and Lun fields are valid.

0x12

SRB_FUNCTION_RESET_BUS




0x13

SRB_FUNCTION_RESET_DEVICE

(Defined for future versions) The SCSI target controller should be reset using the SCSIMESS_BUS_DEVICE_RESET message. The HBA miniport driver should complete any active requests for the target controller. Only the Function, TargetId and PathId fields are valid.

0x14

SRB_FUNCTION_TERMINATE_IO

(Defined for future versions) A SCSIMESS_TERMINATE_IO_PROCESS message should be sent to cancel the request pointed to by the NextSrb field. If the indicated request has already completed, this request should be completed normally. Only the Function, PathId, TargetId, Lun, and NextSrb fields are valid.

0x15

SRB_FUNCTION_FLUSH_QUEUE

The port driver processes this request without calling the miniport driver.

0x16

SRB_FUNCTION_REMOVE_DEVICE



Table 2 – IOS Inquiry Type Table


This table (inquiry_type_table) is used by IOS to know how to process the various devices detected by SCSI or non-SCSI device inquiries.
When IOS creates a DCB , it uses the “DCB size” column to determine how much space to allocate for the DCB.


Value

SCSI Inquiry Type

DCB style

DCB size

Sector size (bytes)

Queue type

0

SCSI_DASD_TYPE (hard disk)

DCB_type_disk

size DCB_disk

512

DCB_q_sort

1

SCSI_SEQUENTIAL_TYPE

DCB_TYPE_TAPE

size DCB

1

DCB_q_fi_fo

2

SCSI_PRINTER_TYPE

DCB_type_printer

size DCB_disk

1

DCB_q_fi_fo

3

SCSI_PROCESSOR_TYPE

DCB_type_processor

size DCB

1

DCB_q_fi_fo

4

SCSI_WORM_TYPE

DCB_type_worm

size DCB

1

DCB_q_sort

5

SCSI_CDROM_TYPE

DCB_type_cdrom

size DCB_cdrom

2048

DCB_q_fi_fo

6

SCSI_SCANNER_TYPE

DCB_type_scanner

size DCB

1

DCB_q_fi_fo

7

SCSI_OPTICAL_TYPE

DCB_type_disk

size DCB

512

DCB_q_fi_fo

8

SCSI_MEDIACHANGER_TYPE

DCB_type_changer

size DCB

1

DCB_q_fi_fo

1D

REAL_MAPPER_TYPE

DCB_type_disk

size DCB_disk

512

DCB_q_sort

1E

SCSI_FLOPPY_TYPE

DCB_type_floppy

size DCB_floppy

512

DCB_q_sort

1F

(all others / unknown)

DCB_type_disk

size DCB_disk

1

DCB_q_fi_fo




Page

Download 0.64 Mb.

Share with your friends:
1   ...   8   9   10   11   12   13   14   15   16




The database is protected by copyright ©ininet.org 2024
send message

    Main page