High Performance File System (HPFS)

What is HPFS (High Performance File System)?

HPFS, or High Performance File System, refers to the optional file system introduced with IBM’s OS/2 Version 1.2.

Technically, this particular file system can handle larger files and drives, along with long file names and extended attributes and can coexist with the FAT file system with the use of advanced data structures and techniques.

Understanding HPFS (High Performance File System)

What is HPFS (High Performance File System)

Primarily designed and developed by Microsoft and IBM to remove the weaknesses existing in the File Allocation Table (FAT) file system, the High Performance File System is specifically designed as an optional file system for use with the IBM OS/2.

This file system is capable of handling large files stored across several hard drives as well as long file names.

You can use the HPFS in extreme cases, both for small and large files. It uses sophisticated data structures and methods such as:

These techniques allow using the disk space more economically since they follow sector-based management.

All existing application programs usually benefit from the improved throughput and performance of HPFS, but will require some modifications made in them.

These modifications are not very difficult to make and will allow them to enjoy the support provided by the file system for long file names and extended attributes.

However, the good thing about it is that HPFS will allow reduced use of the Central Processing Unit (CPU) whether or not the applications are modified.


The features of HPFS include:

Read Also:  What is VFAT (Virtual File Allocation Table)? (Explained)

HPFS does not fragment a file as the FAT partitions do and, therefore, allows storing files contiguously.

It, however, needs at least 500 KB of system memory in order to function and is usually not documented by a booted DOS partition.

Some other notable features of this file system are:

The design features of HPFS allow it to overcome the various limitations of MS-DOS, especially the 8-character restriction on computer file names.

This program can run independently or on the same machine with the existing MS-DOS file system. It can also coexist with the FAT file system.

Working Process

This particular file system typically works as an Installable File System (IFS).

This is typically used as a Dynamic Link Library which allows hooking into the components of a file system in the kernel of the operating system.

The working process of it includes:

Its working process is facilitated by the use of lazy-writes and large file cache sizes.

Also, the use of several asynchronous read/write threads along with sector-based allocation in place of higher space-wasting and cluster-based allocation, which is typically used by the FAT file system.


The High Performance File System is considered to be better than the FAT file system due to its additional capabilities such as:


The design of HPFS offers several benefits such as:

However, HPFS requires more system memory, at least 500 MB, to run and a special utility such as the Partition Magic from PowerQuest for accessing the partitions.

The system requires the disk partitions not to be recognized by MS-DOS as this will prevent booting the computer system from a floppy disk.

What is the File Size of HPFS?

According to the volume structure of High Performance File Systems, the IBM-compatible HPFS volumes typically consist of a sector size of 512 bytes. They usually come with a size of 2199 GB, maximum.

The file size of it is typically 2 GiB with a file name length of up to 255 characters for an unlimited number of files.

There are not many fixed structures. The 8 KB volume of the sectors 0 to 15 is the BootBlock, consisting of a 32-bit volume ID, a volume name, and a disk bootstrap program.

Read Also:  What is Zero Filling? (Explained)

This bootstrap program is comparatively modern in comparison to the MS-DOS standards and comes with features that enable the HPFS to be used in a restricted mode for locating and reading the files of the operating system wherever they are found.

The next two sectors, 16 and 17, are called the SuperBlock and the SpareBlock, respectively. The SuperBlock is changed by disk maintenance utilities only and contains the following:

The SpareBlock, on the other hand, contains the following:

It is modified infrequently when the system executes.

The remaining part of the disk is divided into bands of 8 MB size, each of which has its own individual free space bitmap to represent a bit in each sector. It is represented as 0 if it is in use and as 1 if it is available.

The bitmaps are typically found at the beginning or end of the band. This ensures that the two are end-to-end between the alternate bands offering optimal contiguous free space of about 16 MB to be assigned to a file.

A specific band is located at the seek center of the disk or toward it. This is called the directory block band and its size is typical of the present application and may be altered in the subsequent versions of the file system.


Is HPFS a Type of Linux File System?

Yes, the High Performance File System is typically used in OS/2, though it is read-only under Linux.

This is mainly due to the absence of available documentation.

Does Windows Support HPFS?

Yes, it does, but only under the 3.1, 3.5, and 3.51 versions of Windows NT.

The Windows NT 4.0 will not access the HPFS partitions and will not support them.


The High Performance File System is very useful in solving the typical issues of the FAT file system.

It will offer excellent output, irrespective of the size of the files.

Through this article, you know how it offers the benefits of long file names and extended attributes with the use of more advanced data structures and methods.