On 29 Lis, 08:32, problems@gmail wrote:
> I'm told by an 'IDE to CF' user that he can hot-plug
> data from one PC to another, instead of using a floppy.
> Is this OK ?
>
hot-plugging a CF card on a native IDE bus doesn't work.
> What types of flash-cards are commonly available
> that can store 128MB or more ?
>
Any flash card format nowadays on the market
(SD/MMC/XD/MS/CF/USB sticks).
Note that some formats have sub-formats,
older readers are not compatible with latest/largest drives.
A typical boundary is 2GB, and that's not only at the
File System level (FAT16 vs. FAT32). Note that SDHC
cards don't work in SD readers, there are several revisions
of the SD interface with different transfer rates (a backwards
compatible common denominator usually works here).
http://en.wikipedia.org/wiki/Secure_Digital_card
http://en.wikipedia.org/wiki/MultiMediaCard
> Or is IDE to USB [for old boxes without a USB],
> more viable *- with USB memory ?
>
That sounds a tad better. You mean a CF->IDE and IDE->USB, right?
That *might* work, provided that you first hot-plug the USB port,
only then the CF card in the IDE converter.
Imagine that you make your native IDE devices physically hot-
pluggable.
You attach an IDE removable harddisk drawer, or a passive IDE->CF
adapter,
to the physical IDE channel going from your PC's south bridge.
That IDE channel has no signals (wires, pins in the connector,
support in the HBA port) to indicate a hot-swap to the host PC.
The host OS is not prepared to see a device vanish or appear
on an IDE bus - XP sees IDE devices as "permanent drives"
and doesn't even offer the possibility to gracefully "remove"
(unmount, really) the disk volume from the explorer
(via the drive's context menu).
The normal way that IDE works is that
1) the drives get detected by the BIOS. Only once on startup.
2) the OS can use BIOS services to check the drives, or it can probe
the busses on its own via its native low-level IDE driver
(again just once on startup)
3) runtime operation. It's not expected that a previously detected
IDE device (since last boot) would suddenly vanish - that would
likely cause lost data in some write-back buffers. Equally,
it's not expected that a new IDE device would appear out of
nowhere.
If you actually plug an IDE drive to a free physical IDE channel at
runtime,
nothing happens - no software is looking for the new device, noone
polls
that channel, noone gets to know.
The right way to hot-plug a CF card is to use a USB-based reader.
Those readers likely use the "linear" CF access mode
(as opposed to IDE emulation), and in this mode, the CF interface
does support hot-plugging. Thus, such USB CF readers do support
hot-plugging at the CF interface (in the CF slot), without hot-
plugging
the "back end" USB interface.
To the OS, the USB reader ports appear as distinct USB Mass Storage
class devices, explicitly announced as removable. The OS is prepared
for hot-plugs on such devices, offering options such as "remove" and
"eject"
on the corresponding volumes. The aforementioned write-back buffering
issues are somehow handled within the OS - either by disabling write-
back
buffering, or by a disk cache flush hooked up to the "remove" command.
I.e., the user is still required to explicitly "unmount" these hot-
swappable
devices, before he can physically pull the card out of the dongle.
As mentioned before, you can hot-plug physical IDE drives to any
computer, as long as you use an IDE->USB converter and you really
do the hot-plug at the USB interface level. In some cases, Windows
still see such a USB-attached hard drive as a permanently connected
hard disk, and don't offer the "remove" option on the context menu
- but you still have the option to "stop" the whole USB device.
It actually seems like the "permanent/removable media" flag is at the
IDE registers level already, and passed through by the USB/IDE
converter.
It makes some sense - e.g. ATAPI CD-ROM / ZIP drives might use this
flag.
Frank Rysanek