[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CD-R/RW: ATAPI? SCSI? IDE?
On Sun, 2004-02-29 at 12:44, Harold Crouch wrote:
> The CD-ROM that I used to have in my computer was clearly an IDE/ATAPI
> device. When I replaced it with a CD-R/RW, the Libranet installation
> utility changed things here and there. The grub configuration line
> was changed to include "hdc=scsi." /etc/modules now includes the
> lines "sr-mod," "ide-cd ignore=hdc" and "ide-scsi."
> What exactly is a CD-R/RW?
It is an AT Attachment Peripherial Interface (ATAPI) device. ATAPI is
an extension of the original AT Attachment (ATA), which is little more
than a "dumb" block (512 byte/copy) device. I.e., there is little more
than bus timing, positioning and copy to/from device commands.
SCSI is intelligent. It has all sorts of commands, from advanced,
end-device controls to direct, inter-device transfer functions.
The closest we come to a set of "standards" in ATAPI is the MMC
standard. That's where ide-scsi comes in. It is an emulation layer
that translates SCSI calls into MMC-3 ones. This, of course, requires
MMC-3 support in your ATAPI device (although there are a few other ATAPI
Once that is done, a burning program like cdrecord that has to access
the device at a "low-level," like via the squential, raw SCSI
_character_ device (sg).
> Why must a CD-R/RW be treated differently than a CD-ROM?
Because CD-ROM is a "read-only" _block_ device.
CD-R (record) requires direct control over the _character_ device.
CD-RW (packet write) is a bit different, it's an advanced _block_ device
mode. I won't go into it, but it works with some CD-RW drives as well
> Why was it necesary to change the Grub configuration line and add
> additional lines to /etc/modules? Doesn't Linux auto-detect all
> hardware devices?
To prevent the "ide-cd" driver from "taking control" of the ATAPI
devices. Once this is prevented, then the "ide-scsi" emulation layer
can load and take control of the ATAPI device. If the reservation is
not made at boot time, the "ide-cd" will take control of the ATAPI and
the "ide-scsi" emulation layer driver cannot.
NT/Win (3.x, 4.0, 5.x=2000/XP/2003) actually does the _exact_ same
thing. It uses a SCSI emulation layer between ATA/ATAPI and the
kernel. It always has.
Bryan J. Smith, E.I. -- Engineer, Technologist, School Teacher
To unsubscribe, send email to firstname.lastname@example.org with
"unsubscribe silug-discuss" in the body.