Studio render of a small device beside an etched metal plate whose raised shapes mirror its own ports and buttons

Glossary · 2 min read

Descriptor

A descriptor is a structured block of data that a device provides to describe itself: its identity, capabilities, configurations and the endpoints it offers. Operating systems read descriptors during enumeration.

In practice

When a USB device is connected, Windows requests its device descriptor, which contains vendor and product codes that become part of its hardware IDs. Further descriptors list configurations and interfaces, telling Windows which class drivers might serve each part.

Common confusion

Descriptors are not drivers and contain no executable code; they are declarations. Displays provide a similar kind of self-description of supported resolutions, though under a different standard and name. A descriptor can only describe what the device claims, which drivers then rely on.

Why it matters to readers

Descriptors are the original source of many values you see in Device Manager's Details tab, which makes them the starting point of the whole matching process.

A closer look

Because descriptors come from the device itself, a faulty or unusual descriptor can confuse enumeration even when the device's main function is fine. Device makers sometimes address such issues through firmware updates rather than drivers. Windows also caches some descriptor information, which partly explains why a device reconnected to the same port is recognised faster the second time.