CD-ROM File Systems

Manufacturers of early CD-ROM discs required their own custom software to read the discs. This is because the Yellow Book specification for CD-ROM details only how data sectors—rather than audio sectors—can be stored on a disc and did not cover the file systems or deal with how data should be stored in files and how these should be formatted for use by PCs with different operating systems.

Obviously, noninterchangeable file formats presented an obstacle to the industry-wide compatibility for CD-ROM applications. In 1985–1986, several companies got together and published the High Sierra file format specification, which finally enabled CD-ROMs for PCs to be universally readable.

That was the first industry-standard CD-ROM file system that made CD-ROMs universally usable in PCs. Today several file systems are used on CDs, including:

  • High Sierra

  • ISO 9660 (based on High Sierra)

  • Joliet

  • UDF (Universal Disk Format)

  • Mac HFS (Hierarchical File Format)

  • Rock Ridge

  • Mount Rainier

Not all CD file system formats can be read by all operating systems.

High Sierra

To make CD-ROM discs readable on all systems without having to develop custom file systems and drivers, it was in the best interests of all PC hardware and software manufacturers to resolve the CD-ROM file format standardization issue.

In 1985, representatives from TMS, DEC, Microsoft, Hitachi, LaserData, Sony, Apple, Philips, 3M, Video Tools, Reference Technology, and Xebec met at what was then called the High Sierra Hotel and Casino in Lake Tahoe, Nevada, to create a common logical format and file structure for CD-ROMs.

In 1986, they jointly published this standard as the "Working Paper for Information Processing: Volume and File Structure of CD-ROM Optical Discs for Information Exchange (1986)." This standard was subsequently referred to as the High Sierra format.

This agreement enabled all drives using the appropriate driver (such as MSCDEX.EXE supplied by Microsoft with DOS) to read all High Sierra format discs, opening the way for the mass production and acceptance of CD-ROM software publishing.

Adoption of this standard also enabled disc publishers to provide cross-platform support for their software and easily manufacture discs for DOS, Unix, and other operating system formats. Without this agreement, the maturation of the CD-ROM marketplace would have taken years longer and the production of CD-ROM-based information would have been stifled.

The High Sierra format was submitted to the International Organization for Standardization (ISO). Two years later (in 1988), with several enhancements and changes, it was republished as the ISO 9660 standard. ISO 9660 was not exactly the same as High Sierra, but all drivers that would read High Sierra–formatted discs were quickly updated to handle both ISO 9660 and the original High Sierra format on which it was based.

For example, Microsoft wrote the MSCDEX.EXE (Microsoft CD-ROM extensions) driver in 1988 and licensed it to CD-ROM hardware and software vendors to include with their products. It wasn't until 1993 when MS-DOS 6.0 was released that MSCDEX was included with DOS as a standard feature.

MSCDEX enables DOS to read ISO 9660–formatted (and High Sierra–formatted) discs. This driver works with the AT Attachment Packet Interface (ATAPI) or Advanced SCSI Programming Interface (ASPI) hardware-level device driver that comes with the drive. Microsoft built ISO 9660 and Joliet file system support directly into Windows 95 and later, with no additional drivers necessary.

ISO 9660

The ISO 9660 standard enabled full cross compatibility among different computer and operating systems. ISO 9660 was released in 1988 and was based on the work done by the High Sierra group. Although based on High Sierra, ISO 9660 does have some differences and refinements.

It has three levels of interchange that dictate the features that can be used to ensure compatibility with different systems. ISO 9660 Level 1 is the lowest common denominator of all CD file systems and is capable of being read by almost every computer platform, including Unix and Macintosh.

The downside of this file system is that it is very limited with respect to filenames and directories. Level 1 interchange restrictions include:

  • Only uppercase characters A–Z, numbers 0–9, and the underscore (_) are allowed in filenames.

  • 8.3 characters maximum for the name.extension (based on DOS limits).

  • Directory names are eight characters maximum (no extension allowed).

  • Directories are limited to eight levels deep.

  • Files must be contiguous.

Level 2 interchange rules have the same limitations as Level 1, except that the filename and extension can be up to 30 characters long (both added together, not including the . separator). Finally, Level 3 interchange rules are the same as Level 2 except that files don't have to be contiguous.

Note that Windows 95 and later versions enable you to use file and folder names up to 255 characters long, which can include spaces as well as lowercase and many other characters not allowed in ISO 9660. To maintain backward compatibility with DOS, Windows 95 and later associate a short 8.3 format filename as an alias for each file that has a longer name.

These alias short names are created automatically by Windows and can be viewed in the Properties for each file or by using the DIR command at a command prompt. To create these alias names, Windows truncates the name to six (or fewer) characters followed by a tilde (~) and a number starting with 1 and truncates the extension to three characters.

Other numbers are used in the first part if other files that would have the same alias when truncated already exist. For example, the filename This is a.test gets THISIS~1.TES as an alias.

This filename alias creation is independent of your CD drive, but it is important to know that if you create or write to a CD using the ISO 9660 format using Level 1 restrictions, the alias short names are used when recording files to the disc, meaning any long filenames will be lost in the process.

In fact, even the alias short name will be modified because ISO 9660 Level 1 restrictions don't allow a tilde—that character is converted to an underscore in the names written to the CD.

The ISO 9660 data starts at 2 seconds and 16 sectors into the disc, which is also known as logical sector 16 of track one. For a multisession disc, the ISO 9660 data is present in the first data track of each session containing CD-ROM tracks. This data identifies the location of the volume area—where the actual data is stored.

A significant difference between the CD directory structure and that of a normal hard disk is that the CD's system area also contains direct addresses of the files within the subdirectories, allowing the CD to seek specific sector locations on the spiral data track. Because the CD data is all on one long spiral track, when speaking of tracks in the context of a CD, we're actually talking about sectors or segments of data along that spiral.

To put the ISO 9660 format in perspective, the disc layout is roughly analogous to that of a floppy disk. A floppy disk has a system track that not only identifies itself as a floppy disk and reveals its density and operating system, but also tells the computer how it's organized (into directories, which are made up of files).

Joliet

Joliet is an extension of the ISO 9660 standard that Microsoft developed for use with Windows 95 and later. Joliet enables CDs to be recorded using filenames up to 64 characters long, including spaces and other characters from the Unicode international character set.

Joliet also preserves an 8.3 alias for those programs that can't use the longer filenames. In general, Joliet features the following specifications:

  • File or directory names can be up to 64 Unicode characters (128 bytes) in length.

  • Directory names can have extensions.

  • Directories can be deeper than eight levels.

  • Multisession recording is inherently supported.

Due to backward-compatibility provisions, systems that don't support the Joliet extensions (such as older DOS systems) should still be capable of reading the disc. However, it will be interpreted as an ISO 9660 format using the short names instead.

Universal Disk Format

UDF is a relatively new file system created by the Optical Storage Technology Association (OSTA) as an industry-standard format for use on optical media such as CD-ROM and DVD. UDF has several advantages over the ISO 9660 file system used by standard CD-ROMs but is most noted because it is designed to work with packet writing, a technique for writing small amounts of data to a CD-R/RW disc, treating it much like a standard magnetic drive.

The UDF file system allows long filenames up to 255 characters per name. There have been several versions of UDF, with most packet-writing software using UDF 1.5 or later. Packet-writing software such as DirectCD from Roxio writes in the UDF file system.

However, standard CD-ROM drives, drivers, or operating systems such as DOS can't read UDF-formatted discs. Recordable drives can read them, but regular CD-ROM drives must conform to the MultiRead specification to be capable of reading UDF discs.

After you are sure that your drive can read UDF, you must check the OS. Most operating systems can't read UDF natively—the support has to be added via a driver. DOS can't read UDF at all; however, with Windows 95 and later, UDF-formatted discs can be read by installing a UDF driver.

Typically, such a driver is included with the software that comes with most CD-RW drives. If you don't have a UDF driver, you can download one for free from Roxio. The Roxio UDF Reader is included with DirectCD 3.0 and later. After the UDF driver is installed, you do not need to take any special steps to read a UDF-formatted disc.

The driver will be in the background waiting for you to insert a UDF-formatted disc. You can close a DirectCD for Windows disc to make it readable in a normal CD-ROM drive, which converts the filenames to Joliet format and causes them to be truncated to 64 characters. You can download the latest (revision 2.01) version of the Universal Disk Format from the OSTA.

Macintosh HFS

HFS is the file system used by the Macintosh OS. HFS can also be used on CD-ROMs; however, if that is done, they will not be readable on a PC. A hybrid disc can be produced with both Joliet and HFS or ISO 9660 and HFS file systems, and the disc would then be readable on both PCs and Macs. In that case, the system will see only the disc that is compatible, which is ISO 9660 or Joliet in the case of PCs.

Rock Ridge

The Rock Ridge Interchange Protocol (RRIP) was developed by an industry consortium called the Rock Ridge group. It was officially released in 1994 by the IEEE CD-ROM File System Format Working Group and specifies an extension to the ISO 9660 standard for CD-ROM that enables the recording of additional information to support Unix/POSIX file system features.

Neither DOS nor Windows include support for the Rock Ridge extensions. However, because it is based on ISO 9660, the files are still readable on a PC and the RRIP extensions are simply ignored.

Mount Rainier

Mount Rainier is a new standard being promoted by Philips, Sony, Microsoft, and Compaq. Also called EasyWrite, Mount Rainier enables native operating system support for data storage on CD-RW and DVD+RW. This makes the technology much easier to use (no special drivers or packet-writing software is necessary) and enables CD-RW and DVD+RW drives to become fully integrated storage solutions.

The main features of Mount Rainier are as follows:

  • Integral defect management. Standard drives rely on driver software to manage defects.

  • Direct addressing at the 2KB sector level to minimize wasted space. Standard CD-RW media uses a block size of 64KB.

  • Background formatting so that new media can be used in seconds after first insertion. Standard CD-RW formatting can take up to 45 minutes depending on drive speed.

  • Standardized command set. Standard software cannot work with new drives until revised command files are available.

  • Standardized physical layout. Differences in standard UDF software can make reading media written by another program difficult.

To use Mount Rainier, you must have a drive that supports the standard. These are sometimes called CD-MRW or DVD+MRW drives and might instead bear either the Mount Rainier or EasyWrite logo. Some existing CD-RW drives can be updated to MRW status by reflashing the firmware in the drive; however, most older drives will need to be replaced instead.

Also required is software support directly in the operating system (such as with Windows XP or later), or software support can be added via a third-party add-on application for older operating systems.

Software Architects (www.softarch.com) produces WriteCD-RW Pro! Software, which enables interchange between Mount Rainier and conventional UDF media, as well as between UDF media written with different programs and to different standards.

The first Mount Rainier drive (Philips RWDV1610B) was released in April 2002, and since then many more have followed. Because only minor changes are required in the drive circuitry and firmware to enable Mount Rainier support, many newer drives include Mount Rainier capability; check the drive vendor's Web site or manual to determine compatibility.

In addition, the DVD+RW standard was designed with Mount Rainier compatibility in mind—defect management was included inherently from the beginning. (DVD-RW drives don't support defect management, so they are not compatible with Mount Rainier.) The first DVD+RW drives with Mount Rainier/EasyWrite compatibility began shipping in early 2003.

Because Mount Rainier essentially makes CD-MRW and DVD+MRW drives function as high-capacity replacements for floppy, Zip, and SuperDisk drives, it won't be long before those are but a distant memory. The latest version of the Mount Rainier specification, version 1.1., includes DVD+RW as well as CD-RW drives. It can be ordered from the Philips Intellectual Property and Standards.