Program Information File
Encyclopedia
A PIF, or Program Information File, defines how a given DOS
DOS
DOS, short for "Disk Operating System", is an acronym for several closely related operating systems that dominated the IBM PC compatible market between 1981 and 1995, or until about 2000 if one includes the partially DOS-based Microsoft Windows versions 95, 98, and Millennium Edition.Related...

 program should be run in a multi-tasking
Computer multitasking
In computing, multitasking is a method where multiple tasks, also known as processes, share common processing resources such as a CPU. In the case of a computer with a single CPU, only one task is said to be running at any point in time, meaning that the CPU is actively executing instructions for...

 environment, notably to avoid giving it unnecessary resources which could remain available to other programs. TopView
TopView
TopView is a text-mode PC DOS multitasking, object oriented windowing environment written by IBM and introduced in August of 1984 and made available in February of 1985. TopView was announced in order to provide an environment that users could run more than one application at the same time on a PC...

 was the originator of PIFs which were inherited and extended by DESQview
DESQview
DESQview was a text mode multitasking program developed by Quarterdeck Office Systems which enjoyed modest popularity in the late 1980s and early 1990s...

 and Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

, where they are most often seen. PIFs are seldom used today in software due to the absence of DOS applications.

Basic overview

The PIF file originally contained only one block of data storing the parameters needed to run under TopView. These included fields like an ASCII string for the window title, the maximum and minimum amount of RAM needed, and bitmaps for switches like whether or not the window should be closed when the program exits.

When the system was adapted for use under Windows, the developers faced the problem that there were additional switches that did not apply to TopView. Instead of simply adding the new switches to the end of the file, they instead re-imagined the file as a database file containing any number of entries. In theory the file consisted of a number of header areas describing what operating system should read the section, and an offset to the next section. Systems would read down the list until they found the most appropriate one.

However, this left a problem with backward compatibility. If the file started with a header, even if it was for the original switches, TopView and DESQview would not be able to read it properly. The file was thus re-arranged with the first header appearing after the initial data, which left the first 253 bytes of the file in the same format as before.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK