On Sun, 24 Nov 2002, Nyk Tarr wrote: > On Sat, Nov 23, 2002 at 11:22:48PM -0800, Heather Stern wrote: >> On Thu, Nov 14, 2002 at 11:32:55PM -0500, Michel Hardy-Vall?e wrote:
[...] >> I haven't played with USB based CD/CDRW, but I have a tidbit to add; >> I use a PCMCIA/ATAPI based one. At some point I wistfully noted that >> it'd be handy to get the USB cable, then I could use it with desktops >> (well, modern ones) too. A colleague at the table tsk'tsk'd that >> PCMCIA is a faster bus. [...] > A quick check reveals: USB1.1 is certainly slower than any PCMCIA > device, USB2 is faster than the old 16-bit cards and is probably fast > enough (at up to 60MB/s ish), but is still much slower than a cardbus > interface. DMA may be an issue too. USB1.1, which is all that any currently available laptop ships with, is indeed as slow as hell -- expect a *maximum* speed of 600kb/s to or from the device on a good day, downhill and with a tail wind. USB2.0, which you can get a cardbus card for, or Firewire (iLink), are both vastly faster -- Firewire being slightly slower at 50MB/s. Both USB2 and Firewire use DMA driven engines for data transfer from the host to the bus and back again. USB has a higher load on the system, however, as continuous interrupt driven polling takes place to monitor the bus for activity. Firewire is somewhat less polished a Linux technology, though, so your mileage may vary with it more than with USB1 and, since it's very similar on the bus, USB2. 16-bit PCMCIA is the old ISA bus, for those who remember it, which is 16 bits clocked at 8MHz. It's not very fast at all. Compact Flash, for reference, is a cut down version of this bus... Cardbus is PCI, though, so it's certainly the fastest option out there, with a 32 bit, 33MHz bus rate and good DMA support. You may or may not see better performance driving a CD-ROM or hard drive over a CardBus card, though. Because CardBus is just PCI you end up with an extra IDE card in the system... This may or may not be faster than the USB or Firewire SCSI interface presented by the IDE device enclosure, but it's probably *not* lower CPU overhead. So, I would actually suggest that you look for devices in this order: 1. Firewire (low CPU use, good performance, may be built in to laptop, hotplug) 2. PCI IDE controller (low CPU use, good performance) 3. USB2 (medium/low CPU use, good performance, hotplug) 4. USB1.1 (medium/low CPU use, bad performance, hotplug) It's really worth noting that the IDE layer does *not* deal well with hotplug devices, so you will have a lot more trouble getting a PCI (CardBus) IDE solution to work nicely. Firewire and USB don't like hot-unplug from drives, and Firewire needs a manual prompt to discover the device (or the hotplug agent adapted to do so), but it's much better than IDE. Daniel -- Heu! Tintinnuntius Meus Sonat!