"When Linux was created, it supported the common hardware of the
day, including ATA hard disks, parallel ports, and RS-232 serial
ports. Those devices are all fairly straightforward, especially
when compared to recent hardware interfaces.
"In particular, the very popular Universal Serial Bus (USB)
connection technology has a number of features that require special
configuration in Linux. To further complicate matters, the methods
of using USB devices have changed over time. Most notably, libusb
and the USB filesystem are now the preferred means to access many
USB devices, displacing the more traditional /dev/ file entries.
Configuring the USB filesystem requires making adjustments to
Linux's hot-plugging subsystem..."