Identificadores de 1394 dispositivos
El controlador de bus 1394 construye estos identificadores para un dispositivo:
1394\VendorName&ModelName
1394\UnitSpecId&UnitSwVersion
Donde:
VendorName es el nombre del proveedor de hardware.
ModelName identifica el dispositivo.
UnitSpecId identifica la entidad de especificación de software.
UnitSwVersion identifica la especificación de software.
La información que se usa para construir estos identificadores procede del ROM de configuración del dispositivo.
Si un dispositivo tiene cadenas de nombre de modelo y proveedor, el controlador de bus 1394 usa el primer identificador como identificador, el identificador de dispositivo y el identificador de hardware, y el segundo identificador como identificador compatible. Si un dispositivo no tiene una cadena de nombre de proveedor o modelo, el controlador de bus usa el segundo identificador como, el identificador de dispositivo y el identificador compatible, y devuelve double NULL si se consulta para el identificador de hardware. Por lo tanto, el controlador de autobús IEEE1394, en determinadas circunstancias, proporciona un identificador de dispositivo, pero ningún identificador de hardware. Se trata de una excepción a la regla general de que el identificador de dispositivo es uno de los identificadores de hardware.
El identificador de dispositivo de una cámara en un IEEE1394 podría ser:
1394\SONY&CCM-DS250_1.08
Los dispositivos multifunción tienen un conjunto independiente de identificadores para cada directorio de unidad en el ROM de configuración del dispositivo.
Si el controlador de funciones del dispositivo se encuentra encima del controlador de puerto SBP-2, su identificador de dispositivo tiene el formato siguiente.
SBP2\VendorName&ModelName&LUNn*
Donde:
VendorName es el proveedor de hardware.
ModelName identifica el dispositivo.
n* es una cadena que representa el orden inferior de 2 bytes del número de unidad lógica en hexadecimal. Varias funciones en un dispositivo multifunción producen identificadores de dispositivo idénticos, excepto este número.
El identificador de dispositivo de un disco duro SBP-2 1394 puede ser el siguiente:
SBP2\VST_TECHNOLOGIESINC.&VST_FULL_HEIGHT_FIREWIRE_DRIVE&LUN0
Al igual que con el bus 1394, el controlador de puerto SBP2 no clasifica el identificador de dispositivo como un identificador de hardware. Sin embargo, mientras que el bus 1394 distingue entre identificadores de hardware e identificadores compatibles, el controlador de puerto SBP2 no. Para IRP_MN_QUERY_ID IRP de tipo BusQueryHardwareIDs y IRP_MN_QUERY_ID IRP de tipo BusQueryCompatibleIDs SBP2 devuelve el mismo conjunto de cuatro identificadores:
SBP2\VendorName&ModelName&CmdSetIdn*
SBP2\Gen
Gen
SBP2\n*&d*
Donde:
n* es el número de identificador del conjunto de comandos.
Gen es uno de los nombres genéricos que se enumeran en la columna Tipo genérico de la tabla siguiente.
d* es un número formado por tomar los cinco bits inferiores de los dos bytes superiores del número de unidad lógica. Este número es el código numérico para el nombre genérico del dispositivo que corresponde al identificador de cadena gen .
El cuarto identificador, que se muestra en el ejemplo anterior (SBP2\n*&d*), es único entre todos los identificadores de hardware SBP2 en que n*, el número de id. del conjunto de comandos y d*, el código numérico del nombre genérico se encuentra en decimal, no hexadecimal.
En esta tabla se enumeran los nombres de dispositivo genéricos devueltos por el controlador de puerto SBP2. La mayoría, pero no todos, de los nombres genéricos generados por el controlador de puerto SBP2 son un subconjunto de los generados por el controlador de puerto SCSI.
Código de tipo 1394 | Tipo de dispositivo | Tipo genérico |
---|---|---|
RBC_DEVICE o DIRECT_ACCESS_DEVICE (0) |
Disco |
GenDisk |
SEQUENTIAL_ACCESS_DEVICE (1) |
Secuencial |
GenSequential |
PRINTER_DEVICE (2) |
Impresora |
GenPrinter |
WRITE_ONCE_READ_MULTIPLE_DEVICE (4) |
Gusano |
GenWorm |
READ_ONLY_DIRECT_ACCESS_DEVICE (5) |
Cdrom |
GenCdRom |
SCANNER_DEVICE (6) |
Escáner |
GenScanner |
OPTICAL_DEVICE (7) |
Óptica |
GenOptical |
MEDIUM_CHANGER (8) |
Cambiador |
GenChanger |
Tipo predeterminado (todos los valores no enumerados anteriormente) |
Otros |
GenSbp2Device |