CD file system (CDFS)

Last Edited



Definition of CDFS in the Network Encyclopedia.

What is CDFS (CD file system)?

CD file system or CDFS is a file system designed for Microsoft Windows 95 that supports the reading of compact discs. A CD file system (CDFS) provides the same kind of file and directory management for CD-ROM devices that the file allocation table (FAT) or NTFS file systems do for hard disks.

CD File System based on ISO 9660
CD File System based on ISO 9660

CDFS is also implemented on the Windows 98, Windows NT, and Windows 2000 platforms.

How it works

On Windows 95 and Windows 98, CDFS uses a 32-bit protected-mode driver that supports the ISO 9660 CD file system standards. This 32-bit driver replaces the 16-bit real-mode MSCDEX driver that was used in the legacy 16-bit Windows and MS-DOS operating system platforms. In Windows 95 and Windows 98, the file system driver that supports CDFS is called cdfs.vxd, while in Windows NT and Windows 2000, it is called cdfs.sys. CDFS is optimized for reading compact discs that have a standard data block size of 2048 bytes (2 KB). The implementation of CDFS includes a dynamic, protected-mode cache pool for caching CD-ROM data to improve read performance. This allows CDFS to read ahead to ensure that playback of multimedia content from CDs is smooth and seamless.

Improvements on CDFS

CDFS on Windows NT, Windows 2000, Windows 95 OSR2, and Windows 98 includes a number of enhancements over the original version of CDFS for Windows 95, such as

  • CD-XA support for optimized reading of MPEG video CDs having larger block sizes of 2352 bytes.
  • Auto-Run, which allows applications on CDs to start immediately when the CD is inserted into the drive. To do this, the operating system reads the autorun.inf file that is stored in the root of the directory structure on the CD.

CDFS is based on ISO 9660

ISO 9660 traces its roots to the High Sierra Format file system. High Sierra arranged file information in a dense, sequential layout to minimize nonsequential access by using a hierarchical (eight levels of directories deep) tree file system arrangement, similar to UNIX and FAT. To facilitate cross-platform compatibility, it defined a minimal set of common file attributes (directory or ordinary file and time of recording) and name attributes (name, extension, and version), and used a separate system use area where future optional extensions for each file may be specified.

High Sierra was adopted in December 1986 (with changes) as an international standard by Ecma International as ECMA-119[3] and submitted for fast-tracking to the ISO, where it was eventually accepted as ISO 9660:1988.

In 2013, ISO published Amendment 1 to the ISO 9660 standard, introducing new data structures and relaxed file name rules intended to “bring harmonization between ISO 9660 and widely used ‘Joliet Specification’.” In December 2017, a 3rd Edition of ECMA-119 was published that is technically identical with ISO 9660, Amendment 1.

External references