CD-ROMS

CD-ROMS

Linux distribution media is becoming more and more prevalent on CD-ROMs. One CD-ROM takes a lot less space than 50 floppies or even one QIC tape, so the media is easier to handle. In fact, I would be hard-pressed to find a version that is still being distributed on floppies. Added to this, CD-ROMs are significantly faster than either floppies or tape media.

Another important aspect of CD-ROMs when it comes to installing media is their size. Therefore, it is possible to get numerous products on the CD-ROM. You can get a single CD-ROM that contains a runnable copy of Linux and the source code with room to spare.

CD-ROMs, in fact CD-ROMs technology in general, have always fascinated me. I am amazed that you could get so much information into such a small place and still have such quick access to your data.

The basic principle behind data storage on a CD-ROM is really nothing more than Morse code. A series of light and dark (dots and dashes) compose the encoded information on the disk. Commercial CD-ROMs, whether music or data, almost universally have data on one side of the disk. Although there is nothing technologically preventing a CD-ROM from having a flip side, current convention limits data to just a single side. This is enough when you consider that you can get more than 600Mb of data on a single CD-ROM. As the technology improves, the amount is steadily increasing. In addition, certain manufacturers are working on dual-sided CD-ROMs.

On the surface of the disk are a series of dents, or holes, called “lands.” The areas between the lands are called “pits.” A laser is projected onto the surface of the disk and the light is either reflected by the pits or scattered by the lands. If reflected, the light reaches a light-sensing receptor, which then sends an electrical signal that is received by the control mechanism of the CD-ROM drive. Just as the pattern of alternating dots and dashes forms the message when using Morse code, it is the pattern of reflected light and no light that indicates the data stored on the disk.

When I first thought of CD-ROMs, I conceptualized them as being like WORM (Write-Once, Read-Many) drives, which they are, somewhat. I visualized them as being a read-only version of a hard disk. However, after looking more closely at the way data is stored, I saw that CD-ROMs have less in common with hard disks.

As you remember from our discussion of hard disks, each surface is composed of concentric rings called tracks, and each track is divided into sectors. The disk spins at a constant speed as the heads move in and out across the drives surface. Therefore, the tracks on the outer edges move faster than those on the inside.

For example, take a track that is a half-inch away from the center of the disk. The diameter of the circle representing the track is one inch, so the radius of that circle is approximately 3.1415 inches. Spinning 60 times a second, the track goes at a speed of about 190 inches per second. Now, take a track at one inch from the center, or twice as far. The diameter of the circle representing that track is 6.2830 inches. It, too, is going around at 60 revolutions per second. However, because it has to travel twice as far in each revolution, it has to go twice as fast.

A CD-ROM isn’t like that. CD-ROMS rotate in a manner called “constant linear velocity.” The motor keeps the CD-ROM moving at the same speed, regardless of where the CD-ROM reader is reading from. Therefore, as the light detector moves inward, the disks slows down so that each revolution takes the same amount of time per track.

Lets look at hard disks again. They are divided into concentric tracks that are divided into sectors. Because the number of sectors per track remains constant, the sectors must get smaller toward the center of the disk (because the circumference of the circle representing the track is getting smaller as you move in).

Again, a CD-ROM isn’t like that. Actually, there is no reason why it should work that way. Most CD-ROMs are laid out in a single spiral, just like a phonograph record. There are no concentric circles, so there is no circumference to get smaller. As a result, the sectors in a CD-ROM can remain the same size no matter what. The added advantage of sectors remaining the same size means there can be more on the disk and therefore more data for the user.

Currently, CD-ROMS have a capacity of at least 650Mb, although I am aware of some that are already more than 700Mb. Several companies are currently working on technology to get even more out of them. The simplest technology involves making the CD-ROM writable on both sides, which simply doubles the capability. Others involve storing the data in different layers on the CD-ROM and using light that is polarized differently to read the different layers.

The single-speed CD-ROM drives are the oldest and have a transfer rate of about 150Kb a second. Recently (as of this writing), eight-speed CD-ROM drives are available. I often see both four-speed and six-speed drives sold in machines, but the single- and double-speed drives are slowly dying out.

Most CD-ROMS are formatted with the ISO-9660 format, which allows them to be read by a wide range of machines, including DOS/Windows, Macintosh, as well as Linux and other UNIX dialects. The shortcoming, though, is just that: short, as in short file names. The ISO-9660 format only recognizes the DOS 8.3 file names, so the long file names that we have grown to love in UNIX are not possible. As a result, the Rock Ridge Extensions to the ISO-9660 format allow many of the typical UNIX file stuff, like longer file names, file ownership, and even symbolic links, etc.

Another standard is the PhotoCD, which was developed by Kodak to store photographic information. Not every CD-ROM drive can access these CD-ROMs, which require special software. (As a side note, one system administrator working on the PhotoCD project at Kodak had Linux installed to do network monitoring!)

CD-ROMs first became popular as SCSI devices. However, because most people could not afford a SCSI host adapter, companies began producing CD-ROM drives that ran on IDE controllers, and therefore looked just like a hard disk, or would run on their own controllers. Some even enabled you to run the CD-ROM off a sound card or through your parallel port. For details on how to get these to work correctly, see the CD-ROM HOWTO.