Id's gegenereerd door USBSTOR.SYS

Vanaf Windows 2000 biedt het besturingssysteem systeem systeemeigen ondersteuning voor veel USB-apparaten voor massaopslag. Het usbstor.inf-installatiebestand bevat apparaat-id's voor apparaten die expliciet worden ondersteund. Als het STUURPROGRAMMA van de USB-hub een van deze apparaten opsommen, laadt het besturingssysteem automatisch het stuurprogramma van de USB-opslagpoort ,Usbstor.sys.

De apparaat-id's voor USB-massaopslagapparaten in Usbstor.inf hebben de gebruikelijke vorm voor USB-apparaat-id's die zijn samengesteld met behulp van informatie in de apparaatdescriptor van het USB-apparaat:

USB\VID_v(4)&PID_d(4)&REV_r(4)

Where:

  • v(4) is de 4-cijferige leverancierscode die het USB-comité aan de leverancier toewijst.

  • d(4) is de 4-cijferige productcode die de leverancier aan het apparaat toewijst.

  • r(4) is de revisiecode.

Naast deze apparaat-id's bevat Usbstor.inf compatibele id's voor klasse 8 ATAPI-CD-ROM en verwisselbare mediaapparaten die bulksgewijs transport ondersteunen:

USB\CLASS_08&SUBCLASS_02&PROT_50

USB\CLASS_08&SUBCLASS_05&PROT_50

USB\CLASS_08&SUBCLASS_06&PROT_50

Where:

  • klasse 08h = massaopslagapparaten.

  • subklasse 02h = SFF-8020i ATAPI CD-ROM apparaten.

  • subklasse 05h = SFF-8070i ATAPI verwisselbare media.

  • subklasse 06h = algemene SCSI-media.

  • protocol 50h = het bulk-only transportprotocol.

Als de gegevens die zijn opgehaald uit de apparaatdescriptor van het apparaat overeenkomen met een van deze compatibele id's, wordt het besturingssysteem Usbstor.sysgeladen.

Zodra deze is geladen, maakt het stuurprogramma voor de USB-opslagpoort een nieuwe PDO voor elk van de logische eenheden van het apparaat. Zie voor meer informatie de voorbeeldapparaatstack die is gemaakt door Usbstor.sys geïllustreerd in het voorbeeld van apparaatobjecten voor een USB-apparaat voor massaopslag.

Wanneer de PnP-manager query's uitvoert op de apparaatidentificatiereeksen van de zojuist gemaakte PnP-beheerprogramma's, maakt het stuurprogramma voor usb-opslagpoorten een nieuwe set apparaat-, hardware- en compatibele id's die zijn afgeleid van de SCSI-aanvraaggegevens van het apparaat. De indeling van de apparaat-id is als volgt:

USBSTOR\v(8)p(16)r(4)

Where:

  • v(8) is een leverancier-id van 8 tekens.

  • p(16) is een product-id van 16 tekens.

  • r(4) is een revisieniveauwaarde van 4 tekens.

Een voorbeeld van een apparaat-id voor een schijfstation is als volgt:

USBSTOR\SEAGATE_ST39102LW_______0004

De hardware-id's die door het stuurprogramma voor de USB-opslagpoort worden gegenereerd, zijn als volgt:

USBSTOR\t*v(8)p(16)r(4)

USBSTOR\t*v(8)p(16)

USBSTOR\t*v(8)

USBSTOR\v(8)p(16)r(1)

v(8)p(16)r(1)

USBSTOR\GenericTypeString

GenericTypeString

Where:

  • t* is een SCSI-apparaattypecode van variabele lengte.

  • v(8) is een leverancier-id van 8 tekens.

  • p(16) is een product-id van 16 tekens.

  • r(4) is een revisieniveauwaarde van 4 tekens. In deze aanvullende id's vertegenwoordigt r(1) alleen het eerste teken van de revisie-id.

De volgende tabel bevat de SCSI-apparaattypecodes die door het stuurprogramma voor de USB-opslagpoort worden gebruikt om id-tekenreeksen te genereren.

SCSI-typecode Apparaattype Algemeen type

DIRECT_ACCESS_DEVICE (0)

Schijf of SFloppy

GenDisk of GenSFloppy

SEQUENTIAL_ACCESS_DEVICE (1)

Sequential

GenSequentiële

WRITE_ONCE_READ_MULTIPLE_DEVICE (4)

Worm

GenWorm

READ_ONLY_DIRECT_ACCESS_DEVICE (5)

CdRom

GenCdRom

OPTICAL_DEVICE (7)

Optisch

GenOptical

MEDIUM_CHANGER (8)

Changer

GenChanger

Standaardtype (alle waarden die niet eerder worden vermeld)

Other

UsbstorOther

In deze voorbeelden ziet u de hardware-id's die worden gegenereerd door het stuurprogramma voor de USB-opslagpoort:

USBSTOR\DiskSEAGATE_ST39102LW_______0004

USBSTOR\DiskSEAGATE_ST39102LW_______

USBSTOR\DiskSEAGATE_

USBSTOR\SEAGATE_ST39102LW_______0

SEAGATE_ST39102LW_______0

USBSTOR\GenDisk

GenDisk

Het stuurprogramma voor de USB-opslagpoort genereert twee compatibele id's.

USBSTOR\t*

USBSTOR\RAW

waarbij t* een SCSI-apparaattypecode van variabele lengte is.

De compatibele id's die door het stuurprogramma voor de USB-opslagpoort worden gegenereerd, worden geïllustreerd door de volgende voorbeelden:

USBSTOR\Disk

USBSTOR\RAW