installable file system

(IFS or "File System Driver", "FSD") An API that allows you to extend OS/2 to access files stored on disk in formats other than FAT and HPFS, and access files that are stored on a network file server.

For example an IFS could provide programs running under OS/2 (including DOS and Windows programs) with access to files stored under Unix using the Berkeley fast file system.

The other variety of IFS (a "remote file system" or "redirector") allows file sharing over a LAN, e.g. using Unix's Network File System protocol. In this case, the IFS passes a program's file access requests to a remote file server, possibly also translating between different file attributes used by OS/2 and the remote system.

Documentation on the IFS API has been available only by special request from IBM.

An IFS is structured as an ordinary 16-bit DLL with entry points for opening, closing, reading, and writing files, the swapper, file locking, and Universal Naming Convention. The main part of an IFS that runs in ring 0 is called by the OS/2 kernel in the context of the caller's process and thread. The other part that runs in ring 3 is a utility library with entry points for FORMAT, RECOVER, SYS, and CHKDSK.

EDM/2 article.