This is a neat little CompactFlash reader from PNY Technologies
which connects via USB. It has so far been fast and reliable and has no
trouble handling 128Mb CF cards (I expect it will handle bigger, but 128 is the
biggest I have). The instructions are in slightly dodgy English, but it is
good value for money at less than 30 GBP. One thing I like is that it has an
eject button rather than relying on brute force.

Windows Support
The unit is supplied with 98/2000 drivers and works well with Windows 98 and
XP. When plugged in it shows up as a Removable Disk.

98 once threw a wobbly when I left the drive plugged in and with the PC off
but with the wall socket on, refusing to boot for a while. I now unplug the
reader when not in use.

XP can detect when a card is inserted and can be made to open a window or
start an application if you wish. One word of warning with XP - do NOT insert
the reader when the machine is running - XP hangs. The unit can be removed
safely, with the machine running, by clicking on the remove hardware tray icon.

Linux Support
From RedHat 7.3 drivers for this particular unit are included in the
usb/usbstorage module. This is loaded auto-magically by the kernel hotplugger.
The reader shows up as an extra SCSI disk and can be mounted using 'mount'. I
found that the usbstorage driver would load before SCSI-IDE for my CD Writer,
thus mixing up the SCSI ids (as they are generated not proper ids). There is
no problem inserting/removing the reader whilst the machine is running, but
note that the SCSI id will increment each time the unit is inserted. For those
of you, like me, who build your own kernels, you need to build in SCSI support,
otherwise it will not work.