High Performance File System (HPFS)

HPFS, or High Performance File System, is a disk file system designed for version 1.2 of the Microsoft/IBM OS/2 operating system as a successor to the file allocation table (FAT) file system used by MS-DOS.

What is HPFS (High Performance File System)?

A disk file system designed for version 1.2 of the Microsoft/IBM OS/2 operating system as a successor to the file allocation table (FAT) file system used by MS-DOS. High Performance File System (HPFS) is supported by Microsoft Windows NT version 3.51 but not by Windows NT 4 or the Windows 2000 operating systems, which use the more advanced NTFS file system.

How It Works

HPFS was designed to function as an Installable File System (IFS), which is implemented as a dynamic-link library (DLL) that hooks into the file system component of the operating system kernel. You configure HPFS through an IFS= line in the config.sys file. The CD file system (CDFS) was also designed to support IFS. HPFS improves on the performance of the FAT file system for MS-DOS in the following ways:

  • It locates file directory and allocation information in close physical proximity to the files themselves on the hard disk. (The FAT file system locates the root directory and allocation information on the outermost cylinders of the drive.)
  • It has a more robust and efficient file system tree structure than FAT, so you can locate directories more quickly.
  • It has multiple asynchronous read/write threads.
  • It uses sector-based allocation instead of the more space-wasting, cluster-based allocation used by FAT.
  • It uses large file cache sizes and lazy-writes.

Other features of HPFS that were considered advanced at the time of its development included the following:

  • Long filenames - up to 254 characters in length. These long filenames are case preserving but not case sensitive. MS-DOS applications can still access HPFS volumes either over the network to an OS/2 LAN Manager server or from inside an MS-DOS compatibility box on an OS/2 workstation.
  • Extended attributes - a series of name/value pairs associated with each directory or file. These extended attributes can be 64 KB in size and support advanced kinds of search queries, such as by file type, version number, subject, or comments.
  • Support for extended character sets.
  • Maximum 64-GB drive size. (The practical limit is 16 GB, however.)