Installable File System

Filesystem drivers executed in kernel-space (ring 0) and are divided in four principal pieces: microIFS, miniIFS, IFS, helpers.

The helpers are 16-bit (for OS/2 1.x) or 32-bit (for OS/2 2.x and up), are executed in user-space (ring 3) and contain the code used for typical filesystem maintenance, and are called by CHKDSK and FORMAT utilities.

[1] There was also an official 32-bit HPFS IFS, called HPFS386 that improved performance and added some features, like variable size cache and Access Control Lists, and was available only in certain OS/2 server editions.

IFSHLP.SYS (the Installable File System Helper) is an MS-DOS device driver that was first released as part of Microsoft Windows for Workgroups 3.11.

When Microsoft stopped developing OS/2 and concentrated on what was then called OS/2 NT, they took the IFS ideas with it, along with the HPFS filesystem.

The FAT file system was moved out of the Kernel to an IFS and was heavily optimized for performance, taking advantage of the 32-bit processing capabilities (being called FASTFAT).

Network file-sharing protocols and antivirus are also implemented using IFS 'file system filter' drivers which intercept file I/O operations.