Without getting into great detail:
Many new(er) drives, like HDDs and CDROM drives and whatnot, are known as 'ATAPI' devices. ATAPI is a standard protocol, for lack of a better word at the moment, by which the computer communicates with the device. It's a standard which tries to allow for different manufacturers to all have their hardware communicate happily with each other.
Older stuff, simpler stuff, like old CD drives, scanners, old external hard disks, etc., used the SCSI protocol, which has been around longer.
However: ATAPI is actually a 'wrapper' for SCSI commands; in other words, deep down inside the hardware, ATAPI commands get translated into SCSI commands anyways.
I'm not sure in technical terms why stuff like USB devices and some CDROMs (even brand new ones) still use the SCSI protocol, rather than the ATAPI one, but I suppose that since USB is literally 'Universal Serial Bus' and SCSI was created when a fairly long time ago when external hardware was connected to serial and parallel ports, it still uses SCSI for that reason. The USB system is not like PATA/IDE or SATA, it's just a modern day serial port, and because of that, as far as USB goes, adding an ATAPI wrapper/layer onto it would be overkill, cumbersome, and unnecessary.
As for all the nodes and endpoints in /dev, well, everything in the machine pretty much, gets at least ONE node by which software and hardware can locate it, communicate with it, query it, etc. So when you plug in a USB device, a bunch of nodes get created, like for the device itself, the port it's plugged into, the hub that controls the port, the controller that controls the hub, etc.. It's a hierarchy of devices, each one getting its own identifying node.
Last edited by GrapefruiTgirl; 06-22-2009 at 12:49 AM.