Program information file
   HOME

TheInfoList



OR:

A program information file (PIF) defines how a given
DOS DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems. DOS may also refer to: Computing * Data over signalling (DoS), multiplexing data onto a signalling channel * Denial-of-service attack (DoS), an attack on a communicat ...
program should be run in a multi-tasking environment, especially in order to avoid giving it unnecessary resources which could remain available to other programs.
TopView TopView is the first object-oriented, multitasking, and windowing, personal computer operating environment for PC DOS developed by IBM, announced in August 1984 and shipped in March 1985. TopView provided a text-mode (although it also ran in g ...
was the originator of PIFs; they were then inherited and extended by
DESQview DESQview (DV) is a text mode multitasking operating environment developed by Quarterdeck Office Systems which enjoyed modest popularity in the late 1980s and early 1990s. Running on top of DOS, it allows users to run multiple programs concurren ...
and Microsoft Windows, 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 Backward compatibility (sometimes known as backwards compatibility) is a property of an operating system, product, or technology that allows for interoperability with an older legacy system, or with input designed for such a system, especiall ...
. 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.


Notes

* Creating a program information file for a DOS-based program creates a shortcut to the program executable. All the settings saved in the PIF are contained in the shortcut. * Although a file in PIF format does not contain any executable code (it lacks executable files' magic number "MZ"), Microsoft Windows handles all files with (pseudo-)executables' extensions in the same manner: all .COMs, .EXEs, and .PIFs are analyzed by the ShellExecute function and will run accordingly to their content and not extension, meaning a file with the PIF extension can be used to transmit computer viruses. * The concept of program information files was also used under
Digital Research Digital Research, Inc. (DR or DRI) was a company created by Gary Kildall to market and develop his CP/M operating system and related 8-bit, 16-bit and 32-bit systems like MP/M, Concurrent DOS, FlexOS, Multiuser DOS, DOS Plus, DR DOS and Gr ...
operating systems such as Concurrent DOS,
Multiuser DOS Multiuser DOS is a real-time multi-user multi-tasking operating system for IBM PC-compatible microcomputers. An evolution of the older Concurrent CP/M-86, Concurrent DOS and Concurrent DOS 386 operating systems, it was originally developed by ...
, System Manager and
REAL/32 Multiuser DOS is a real-time multi-user multi-tasking operating system for IBM PC-compatible microcomputers. An evolution of the older Concurrent CP/M-86, Concurrent DOS and Concurrent DOS 386 operating systems, it was originally developed by ...
. Using the PIFED command, the necessary program information got directly embedded into the .EXE or .COM executable file.Digital Research. ''Concurrent DOS 386 – Multiuser/Multitasking Operating System – Reference Manual''. 1987

.


See also

*
Compatibility mode A compatibility mode is a software mechanism in which a software either emulates an older version of software, or mimics another operating system in order to allow older or incompatible software or files to remain compatible with the computer's n ...


References


The PIF format in various Windows versions


External links


Windows 98 Sample Program Information (.pif) Files
n Microsoft Support {{Webarchive, url=https://web.archive.org/web/20190801062322/https://support.microsoft.com/en-us/help/188157/windows-98-sample-program-information-pif-files , date=2019-08-01
Dobb's Undocumented Corner – The PIF File Format, or, TopView (sort of) Lives!
Windows architecture Executable file formats