lsusb
lê seus dados do sistema de arquivos virtual sys
fornecido pelo kernel montado em /sys
; especificamente a partir da localização de diretórios relevantes para dispositivos USB. Esses dispositivos são conectados a diferentes barramentos PCI e são (principalmente) detectados por udevd
.
Por exemplo, no meu computador, aqui está um exemplo da localização de um dispositivo USB conectado a um determinado barramento PCI:
/sys/devices/pci0000:00/0000:00:1d.0/usb4/4-1/
O conteúdo do diretório:
% print -l *
4-1:1.0
authorized
avoid_reset_quirk
bcdDevice
bConfigurationValue
bDeviceClass
bDeviceProtocol
bDeviceSubClass
bmAttributes
bMaxPacketSize0
bMaxPower
bNumConfigurations
bNumInterfaces
busnum
configuration
descriptors
dev
devnum
devpath
driver
ep_00
idProduct
idVendor
ltm_capable
maxchild
port
power
quirks
removable
remove
speed
subsystem
uevent
urbnum
version
lsusb
apenas lê o (s) arquivo (s) relevante (s) deste diretório.