Glossary M

main program
A program unit containing a PROGRAM statement (or not containing a SUBROUTINE, FUNCTION, or BLOCK DATA statement). The main program is the first program unit to receive control when a program is run, and exercises control over subprograms. Contrast with subprogram.
makefile
On Tru64 UNIX and Linux systems, an argument to the make command containing a sequence of entries that specify dependencies. On Windows systems, a file passed to the NMAKE utility containing a sequence of entries that specify dependencies. The contents of a makefile override the system built-in rules for maintaining, updating, and regenerating groups of programs.

For more information on makefiles for Tru64 UNIX and Linux systems, see make(1). For more information on makefiles for Windows systems, see Building Projects with NMAKE in the Programmer's Guide.
many-one array section
An array section with a vector subscript having two or more elements with the same value.
metacommand
See compiler directive.
misaligned data
Data not aligned on a natural boundary. See also natural boundary.
module
A program unit that contains specifications and definitions that other program units can access (unless the module entities are declared PRIVATE). Modules are referenced in USE statements.
module procedure
A subroutine or function defined within a module subprogram (the module procedure's host). The module procedure appears between a CONTAINS and END statement in its host module, and inherits the host module's environment through host association. A module procedure can be declared PRIVATE to the module; it is public by default.
module subprogram
A subprogram that is contained in a module. (It cannot be an internal subprogram.)
multibyte character set
A character set in which each character is identified by using more than one byte. Although Unicode characters are 2 bytes wide, the Unicode character set is not referred to by this term.
multitasking
The ability of an operating system to execute several programs (tasks) at once.
multithreading
The ability of an operating system to execute different parts of a program, called threads, simultaneously.
If the system supports parallel processing, multiple processors may be used to execute the threads.