1394 设备的标识符

1394 总线驱动程序为设备构造以下标识符:

1394\VendorName&ModelName

1394\UnitSpecId&UnitSwVersion

Where:

  • VendorName is the name of the hardware vendor.

  • ModelName identifies the device.

  • UnitSpecId identifies the software specification authority.

  • UnitSwVersion identifies the software specification.

用于构造这些标识符的信息来自设备的配置 ROM。

如果设备具有供应商和型号名称字符串,则 1394 总线驱动程序将第一个标识符用作设备 ID 和硬件 ID,第二个标识符用作兼容 ID。 如果设备缺少供应商或模型名称字符串,则总线驱动程序将第二个标识符用作设备 ID 和兼容 ID,如果查询硬件 ID,则返回双 null。 因此,在某些情况下,IEEE1394总线驱动程序提供设备 ID,但没有硬件 ID。 这是设备 ID 是硬件 ID 之一的常规规则的例外。

IEEE1394上的相机的设备 ID 可能是:

1394\SONY&CCM-DS250_1.08

多功能设备为设备配置 ROM 中的每个单元目录都有一组单独的标识符。

如果设备的函数驱动程序位于 SBP-2 端口驱动程序的顶部,则其设备 ID 具有以下格式。

SBP2\VendorName&ModelName&LUNn*

Where:

  • VendorName is the hardware vendor.

  • ModelName identifies the device.

  • n* is a string representing the lower-order 2 bytes of the logical unit number in hexadecimal. 多功能设备上的各种功能会生成除此数字以外的相同设备 ID。

SBP-2 1394 硬盘的设备 ID 可能如下所示:

SBP2\VST_TECHNOLOGIESINC.&VST_FULL_HEIGHT_FIREWIRE_DRIVE&LUN0

与 1394 总线一样,SBP2 端口驱动程序不会将设备 ID 分类为硬件 ID。 但是,虽然 1394 总线区分硬件 ID 和兼容的 ID,但 SBP2 端口驱动程序不会。 For IRP_MN_QUERY_ID IRPs of type BusQueryHardwareIDs and IRP_MN_QUERY_ID IRPs of type BusQueryCompatibleIDs SBP2 returns the same set of four identifiers:

SBP2\VendorName&ModelName&CmdSetIdn*

SBP2\Gen

Gen

SBP2\n*&d*

Where:

  • n* is the Command Set ID number.

  • Gen is one of the generic names that are listed in the Generic Type column of the following table.

  • d* is a number formed by taking the lower five bits of the upper two bytes of the logical unit number. This number is the numeric code for the generic name of the device that corresponds to the Gen string identifier.

The fourth ID, listed in the previous example (SBP2\n*&d*), is unique among all the SBP2 hardware identifiers in that both n*, the Command Set ID number and d*, the numeric code of the generic name are in decimal, not hexadecimal.

下表列出了 SBP2 端口驱动程序返回的通用设备名称。 SBP2 端口驱动程序生成的泛型名称的大多数(但不是全部)都是 SCSI 端口驱动程序生成的泛型名称的子集。

1394 类型代码 Device Type Generic Type

RBC_DEVICE或DIRECT_ACCESS_DEVICE (0)

Disk

GenDisk

SEQUENTIAL_ACCESS_DEVICE (1)

Sequential

GenSequential

PRINTER_DEVICE (2)

Printer

GenPrinter

WRITE_ONCE_READ_MULTIPLE_DEVICE (4)

Worm

GenWorm

READ_ONLY_DIRECT_ACCESS_DEVICE (5)

CdRom

GenCdRom

SCANNER_DEVICE (6)

Scanner

GenScanner

OPTICAL_DEVICE (7)

Optical

GenOptical

MEDIUM_CHANGER (8)

Changer

GenChanger

默认类型(上面未列出的所有值)

Other

GenSbp2Device