VCACHE and CDFS Supplemental Cache

The 32-bit VFAT works in conjunction with a 32-bit, protected-mode cache driver (VCACHE), and replaces and improves on the 16-bit real-mode SMARTDrive disk cache software provided with MS-DOS and Windows 3.1. The VCACHE driver uses an improved caching algorithm over SMARTDrive to cache information read from or written to a disk drive, and results in improved performance for reading information from the cache. Also, the VCACHE driver is responsible for managing the cache pool for CDFS, and the 32-bit network redirectors.

Another big improvement in VCACHE over SMARTDrive is that the memory pool used for the cache is dynamic and is based on the amount of available free system memory. Users no longer need to allocate a block of memory to set aside as a disk cache; the system automatically allocates or deallocates memory used for the cache based on system use. The performance of the system also scales better than earlier versions of Windows, due to the intelligent cache use.

The 32-bit protected-mode CDFS implemented in Windows 95 provides improved CD-ROM access performance over the real-mode MSCDEX driver in Windows 3.1 and is a full 32-bit ISO 9660 CD file system. The CDFS driver replaces the 16-bit real-mode MSCDEX driver, and it features 32-bit protected-mode caching of CD-ROM data. If MSCDEX is specified in the user's AUTOEXEC.BAT when Windows 95 is installed, the 32-bit CDFS driver is used instead.

CDFS has a larger and smarter cache than MSCDEX, optimized just for CD-ROMs and separate from VCACHE. The CDFS driver cache is dynamic and shares the cache memory pool with the 32-bit VFAT driver, requiring no configuration or static allocation on the part of the user.

CDFS reads ahead in parallel with the application so that multimedia presentations play back more smoothly than with earlier versions of Windows. Because CDFS uses a separate cache, the cache memory can be swapped out to the hard disk when CD-ROM activity pauses. This gives applications more room to run and protects the main hard disk cache from being flushed out whenever a very large multimedia stream is played back.

The supplemental cache size for CDFS is used to hold path table, directory, and file information. This particular cache is used to improve CD streaming and to reduce seek latency as effectively as possible with a moderately sized cache. This means that the cache is more complex, using smart priority-based caching schemes to achieve results optimized for CD-ROMs.

For information about configuring the CD-ROM cache to match the characteristics of CD-ROM drive types, see Chapter 17, "Performance Tuning."