Mean Time Between Failures

<specification>

(MTBF, or "Mean Time Between Faults") The average time (usually expressed in hours) that a component works without failure. It is calculated by dividing the total number of failures into the total number of operating hours observed. The term can also mean the length of time a user may reasonably expect a device or system to work before an incapacitating fault occurs.

See also Mean Time To Recovery.

Last updated: 1998-05-01

Mean Time Between Faults

Mean Time Between Failures

Mean Time To Recovery

<specification>

(MTTR) The average time that a device will take to recover from a non-terminal failure. Examples of such devices range from self-resetting fuses (where the MTTR would be very short, probably seconds), up to whole systems which have to be replaced.

The MTTR would usually be part of a maintenance contract, where the user would pay more for a system whose MTTR was 24 hours, than for one of, say, 7 days. This means the supplier is guaranteeing to have the system up and running again within 24 hours (or 7 days) of being notified of the failure.

Some devices have a MTTR of zero, which means that they have redundant components which can take over the instant the primary one fails, see RAID for example.

See also Mean Time Between Failures.

Last updated: 1998-05-01

measure

<testing>

To ascertain or appraise by comparing to a standard; to apply a metric.

Last updated: 1996-12-27

measurement

<testing>

The act or process of measuring; a figure, extent, or amount obtained by measuring.

Last updated: 1996-12-27

meatspace

<jargon>

The physical world (as opposed virtual reality) where you might spend facetime with the carbon community.

Last updated: 1999-01-15

meatware

Less common synonym for wetware.

[Was it Marvin Minsky who described brains as "machines?/computers? made of meat"?]

[Jargon File]

Last updated: 1994-10-21

media

<data>

1. Any kind of data including graphics, images, audio and video, though typically excluding raw text or executable code.

The term multimedia suggests a collection of different types of media or the ability to handle such collections.

<storage>

2. The physical object on which data is stored, as opposed to the device used to read and write it.

<networking>

3. The object at the physical layer that carries data, typically an electrical or optical cable, though, in a wireless network, the term refers to the space through which radio waves propagate. Most often used in the context of Media Access Control (MAC).

Last updated: 2010-01-07

Media Access Control

<networking>

(MAC) The lower sublayer of the OSI data link layer. The interface between a node's Logical Link Control and the network's physical layer. The MAC differs for various physical media.

See also MAC Address, Ethernet, IEEE 802.3, token ring.

[What does it do? Examples?]

Last updated: 1996-01-29

Media Access Unit

<networking>

(MAU or Multistation Access Unit, MSAU) In a Token Ring network, a device to attach multiple network stations in a star topology, internally wired to connect the stations into a logical ring. The MAU contains relays to short out nonoperating stations. Multiple MAUs can be connected into a larger ring through their Ring In/Ring Out connectors.

Last updated: 1997-05-27

Media Converter

<networking>

A component used in Ethernet, although it is not part of the IEEE standard. The IEEE standard states that all segments must be linked with repeaters. Media converters were developed as a simpler, cheaper alternative to repeaters. However, in the 1990s the cost difference between the two is negligible.

Last updated: 1996-12-09

Media Gateway Control Protocol

<communications, protocol>

(MGCP) A protocol used within a Voice over IP system. MGCP is an IETF work in progress, it superseded SGCP.

MGCP is an internal protocol used within a distributed system that appears to the outside world as a single VoIP gateway.

This system is composed of a Call Agent, and a set of gateways, including at least one "media gateway" that performs the conversion of media signals between circuits and packets, and at least one "signalling gateway" when connected to an SS7 controlled network.

IETF MGCP draft.

Last updated: 1999-03-17

Medium Access Control

Media Access Control

meeces

<jargon>

/mees'*z/ (TMRC) Occasional furry visitors who are not urchins; that is, mice. This may no longer be in live use. According to ESR it derives from the refrain of the early-1960s cartoon character Mr. Jinx: "I hate meeces to *pieces*!"

[Jargon File]

Last updated: 1996-12-09

Meet

greatest lower bound

meg

megabyte

mega-

prefix

megabits per second

<unit>

(Mbps, Mb/s) Millions of bits per second. A unit of data rate. 1 Mb/s = 1,000,000 bits per second (not 1,048,576).

E.g. Ethernet can carry 10 Mbps.

Last updated: 2002-03-23

megabyte

<unit, data>

(MB, colloquially "meg") A Unit of data equal to one million bytes but see binary prefix for other definitions. A megabyte is 1000^2 bytes or 1000 kilobytes.

The text of a six hundred page paperback book stored as ASCII characters contains about one megabyte of data. The complete King James bible is 5.2 megabytes.

1000 megabytes are one gigabyte.

See prefix.

Last updated: 2013-11-04

megabytes per second

<unit>

(MBps, MB/s) Millions of bytes per second. A unit of data rate. 1 MB/s = 1,000,000 bytes per second (not 1,048,576).

Last updated: 2007-02-20

megaflop

<unit>

Etymologically incorrect singular of "megaflops".

Last updated: 1995-02-28

megaflops

<unit>

One million floating-point operations per second. A common unit of measurement of performance of computers used for numerical work.

Last updated: 2000-08-03

MegaHertz

(MHz) Millions of cycles per second. The unit of frequency used to measure the clock rate of modern digital logic, including microprocessors.

Last updated: 1994-10-27

megapenny

/meg'*-pen"ee/ $10,000 (1 cent * 10^6). Used semi-humorously as a unit in comparing computer cost and performance figures.

[Jargon File]

MEGO

/me"goh/ or /mee'goh/ ["My Eyes Glaze Over", often "Mine Eyes Glazeth (sic) Over", attributed to the futurologist Herman Kahn] Also "MEGO factor". 1. A handwave intended to confuse the listener and hopefully induce agreement because the listener does not want to admit to not understanding what is going on. MEGO is usually directed at senior management by engineers and contains a high proportion of TLAs. 2. excl. An appropriate response to MEGO tactics. 3. Among non-hackers, often refers not to behaviour that causes the eyes to glaze, but to the eye-glazing reaction itself, which may be triggered by the mere threat of technical detail as effectively as by an actual excess of it.

Mei

<library>

A set of class libraries by Atsushi Aoki <[email protected]> and others for Objectworks Smalltalk Release 4.1. Mei includes: Grapher Library for drawing diagrams; Meta Grapher Library (grapher to develop grapher); Drawing tools and painting tools (structured diagram editors and drawing editors); GUI builder; Lisp interpreter; Prolog interpreter; Pluggable gauges; Extended browser; (package, history, recover, etc.)

Mei is available under General Public License and requires Objectworks Smalltalk Release 4.1.

Home.

E-mail: Watanabe Katsuhiro <[email protected]>

Last updated: 1999-12-08

Mel

The story of Mel

MELD

A concurrent, object-oriented, dataflow, modular and fault-tolerant language! MELD is comparable to SR.

["MELDing Multiple Granularities of Parallelism", G. Kaiser et al, ECOOP '89, pp. 147-166, Cambridge U Press 1989].

Last updated: 1994-11-11

MELDC

A reflective object-oriented concurrent programming language developed in 1990 by the MELD Project of the Programming Systems Laboratory at Columbia University. MELDC is a redesign of MELD based on C.

The core of the architecture is a micro-kernel (the MELDC kernel), which encapsulates a minimum set of entities that cannot be modelled as objects. All components outside of the kernel are implemented as objects in MELDC itself and are modularised in the MELDC libraries. MELDC is reflective in three dimensions: structural, computational and architectural. The structural reflection indicates that classes and meta-classes are objects, which are written in MELDC. The computational reflection means that object behaviours can be computed and extended at run time. The architectural reflection indicates that new features/properties (e.g. persistency and remoteness) can be constructed in MELDC.

Version 2.0 runs on Sun-4/SunOS 4.1 and DECstation and MIPS/Ultrix 4.2.

E-mail: Gail Kaiser <[email protected]>.

MELDC is available under licence from <[email protected]> and may not be used for commercial purposes.

Last updated: 1992-12-15

Melinda

["Melinda: Linda with Multiple Tuple Spaces", S. Hupfer, <[email protected]> YALEU/DCS/RR-766, Yale U Feb 1990].

Last updated: 1994-11-11

Mel Kaye

<person>

The hero of The Story of Mel, a Real Programmer. The preface to the manuals for the Royal McBee LGP-30 ACT 1 (Algebraic Compiler and Translator) compiler (dated 1959) contain the following attribution from Clay S. Boswell, Jr. (apparently ACT 1's designer):

 I wish to acknowledge my appreciation to the many people who
 offered suggestions and criticisms of the ACT 1 System.  In
 particular, Mel Kaye of Royal McBee who did the bulk of the
 programming.

Last updated: 2008-08-04

Mellor

Schlaer-Mellor

meltdown

network meltdown

Melvin Conway

<person>

An early proto-hacker who wrote an assembler for the Burroughs 220 called SAVE and (probably) formulated Conway's Law.

[Jargon File]

Last updated: 2015-12-30

member function

A method in C++.

membership function

fuzzy subset

meme

<philosophy>

/meem/ [By analogy with "gene"] Richard Dawkins's term for an idea considered as a replicator, especially with the connotation that memes parasitise people into propagating them much as viruses do.

Memes can be considered the unit of cultural evolution. Ideas can evolve in a way analogous to biological evolution. Some ideas survive better than others; ideas can mutate through, for example, misunderstandings; and two ideas can recombine to produce a new idea involving elements of each parent idea.

The term is used especially in the phrase "meme complex" denoting a group of mutually supporting memes that form an organised belief system, such as a religion. However, "meme" is often misused to mean "meme complex".

Use of the term connotes acceptance of the idea that in humans (and presumably other tool- and language-using sophonts) cultural evolution by selection of adaptive ideas has become more important than biological evolution by selection of hereditary traits. Hackers find this idea congenial for tolerably obvious reasons.

See also memetic algorithm.

[Jargon File]

Last updated: 1996-08-11

meme plague

<philosophy>

The spread of a successful but pernicious meme, especially one that parasitises the victims into giving their all to propagate it. Astrology, BASIC, and the other guy's religion are often considered to be examples. This usage is given point by the historical fact that "joiner" ideologies like Naziism or various forms of millennarian Christianity have exhibited plague-like cycles of exponential growth followed by collapses to small reservoir populations.

[Jargon File]

Last updated: 1996-08-11

memetic algorithm

<algorithm>

A genetic algorithm or evolutionary algorithm which includes a non-genetic local search to improve genotypes. The term comes from the Richard Dawkin's term "meme".

One big difference between memes and genes is that memes are processed and possibly improved by the people that hold them - something that cannot happen to genes. It is this advantage that the memetic algorithm has over simple genetic or evolutionary algorithms.

These algorithms are useful in solving complex problems, such as the "Travelling Salesman Problem," which involves finding the shortest path through a large number of nodes, or in creating artificial life to test evolutionary theories.

Memetic algorithms are one kind of metaheuristic.

UNLP memetic algorithms home page.

(07 July 1997)

memetics

<philosophy>

/me-met'iks/ The study of memes.

As of mid-1993, this is still an extremely informal and speculative endeavor, though the first steps toward at least statistical rigor have been made by H. Keith Henson and others. Memetics is a popular topic for speculation among hackers, who like to see themselves as the architects of the new information ecologies in which memes live and replicate.

[Jargon File]

Last updated: 2000-01-09

Memex

<hypertext>

Vannevar Bush's original name for hypertext, which he invented in the 1930s.

Fantastic article.

Last updated: 2000-01-09

memo function

<programming>

(Or "memoised function") A function that remembers which arguments it has been called with and the result returned and, if called with the same arguments again, returns the result from its memory rather than recalculating it.

Memo functions were invented by Professor Donald Michie of Edinburgh University. The idea was further developed by Robin Popplestone in his Pop2 language long before it was ever worked into LISP.

This same principle is found at the hardware level in computer architectures which use a cache to store recently accessed memory locations.

A Common Lisp package by Marty Hall <[email protected]> ftp://archive.cs.umbc.edu/pub/Memoization.

["'Memo' functions: and machine learning", Donald Michie, Nature, 218, 19-22, 1968].

Last updated: 2002-07-02

memoisation

memo function

memoised function

memo function

memoization

memo function

memoized function

memo function

memory

<storage>

These days, usually used synonymously with Random Access Memory or Read-Only Memory, but in the general sense it can be any device that can hold data in machine-readable format.

Last updated: 1996-05-25

memory address space

<architecture>

1. Any part of a processor's address space that is occupied by memory.

2. The range of addresses seen by a memory device relative to the base address at which it is mapped into the processor's address space.

Last updated: 1999-11-01

memory dump

<programming, operating system, jargon>

(Or "core dump") A file on hard disk (traditionally called "core") containing a copy of the contents of a process's memory, produced when a process is aborted by certain kinds of internal error or signal.

Debuggers like adb and gdb can load the dump file and display the information it contains about the state of the running program. This can be related to the program code, both object code and, in a source-level debugger, the source code. Information includes the contents of registers, the call stack and all other program data.

Last updated: 2007-05-09

memory farts

<jargon, humour>

The flatulent sounds that some MS-DOS box BIOSes (most notably AMI's) make when checking memory at boot time.

[Jargon File]

Last updated: 1994-11-02

memory leak

<programming>

A leak in a program's dynamic store allocation logic that causes it to fail to reclaim memory in the heap after it has finished using it, eventually causing the program to fail due to lack of memory.

These problems were severe on older machines with small, fixed-size address spaces, and special "leak detection" tools were written to diagnose them.

The introduction of virtual memory made memory leaks a less serious problem, although if you run out of virtual memory, it means you've got a *real* leak!

See aliasing bug.

[Jargon File]

Last updated: 2003-10-07

memory location

<storage>

A byte, word or other small unit of storage space in a computer's main memory that is identified by its starting address (and size).

Last updated: 1999-04-19

memory management

<memory management, storage>

A collection of techniques for providing sufficient memory to one or more processes in a computer system, especially when the system does not have enough memory to satisfy all processes' requirements simultaneously. Techniques include swapping, paging and virtual memory. Memory management is usually performed mostly by a hardware memory management unit.

Last updated: 1995-01-23

Memory Management Unit

<hardware, memory management>

(MMU, "Paged Memory Management Unit", PMMU) A hardware device or circuit that supports virtual memory and paging by translating virtual addresses into physical addresses.

The virtual address space (the range of addresses used by the processor) is divided into pages, whose size is 2^N, usually a few kilobytes. The bottom N bits of the address (the offset within a page) are left unchanged. The upper address bits are the (virtual) page number. The MMU contains a page table which is indexed (possibly associatively) by the page number. Each page table entry (PTE) gives the physical page number corresponding to the virtual one. This is combined with the page offset to give the complete physical address.

A PTE may also include information about whether the page has been written to, when it was last used (for a least recently used replacement algorithm), what kind of processes (user mode, supervisor mode) may read and write it, and whether it should be cached.

It is possible that no physical memory (RAM) has been allocated to a given virtual page, in which case the MMU will signal a "page fault" to the CPU. The operating system will then try to find a spare page of RAM and set up a new PTE to map it to the requested virtual address. If no RAM is free it may be necessary to choose an existing page, using some replacement algorithm, and save it to disk (this is known as "paging"). There may also be a shortage of PTEs, in which case the OS will have to free one for the new mapping.

In a multitasking system all processes compete for the use of memory and of the MMU. Some memory management architectures allow each process to have its own area or configuration of the page table, with a mechanism to switch between different mappings on a process switch. This means that all processes can have the same virtual address space rather than require load-time relocation.

An MMU also solves the problem of fragmentation of memory. After blocks of memory have been allocated and freed, the free memory may become fragmented (discontinuous) so that the largest contiguous block of free memory may be much smaller than the total amount. With virtual memory, a contiguous range of virtual addresses can be mapped to several non-contiguous blocks of physical memory.

In early designs memory management was performed by a separate integrated circuit such as the MC 68851 used with the Motorola 68020 CPU in the Macintosh II or the Z8015 used with the Zilog Z80 family of processors. Later CPUs such as the Motorola 68030 and the ZILOG Z280 have MMUs on the same IC as the CPU.

Last updated: 1999-05-24

memory mapped I/O

<architecture>

The use of the same instructions and bus to communicate with both main memory and input/output devices. This is in contrast to processors that have a separate I/O bus and special instructions to access it.

The I/O devices are addressed at certain reserved address ranges on the main memory bus. These addresses cannot therefore be used for RAM. Motorola and Mostec architectures, among others, use memory mapped I/O.

Video cards and other cards with on-board memory might be accessed in this way though the term applies not just to devices containing memory but to any device connected to the memory bus. Accessing the devices usually consists of reading and writing certain built-in registers though sometimes the mere presence of a particular address can trigger the device.

Last updated: 1997-04-14

memory protection

<memory management>

A system to prevent one process corrupting the memory (or other resources) of any other, including the operating system. Memory protection usually relies on a combination of hardware (a memory management unit) and software to allocate memory to processes and handle exceptions.

The effectiveness of memory protection varies from one operating system to another. In most versions of Unix it is almost impossible to corrupt another process' memory, except in some archaic implementations and Lunix (not Linux!). Under Microsoft Windows (version? hardware?) any 16 bit application(?) can circumvent the memory protection, often leading to one or more GPFs. Currently (April 1996) neither Microsoft Windows 3.1, Windows 95, nor Mac OS offer memory protection. Windows NT has it, and Mac OS System 8 will offer a form of memory protection.

[MS DOS EMM386 relevant?]

Last updated: 1996-09-10

memory smash

<jargon>

A Xerox PARC term for writing to the location addressed by a dangling pointer.

[Jargon File]

Last updated: 1994-11-02

Memory Type Range Registers

<architecture, video>

(MTRR) Registers in the Pentium Pro and Pentium II processors that can be used to specify a strategy for communication with the external memory and caches for a number of physical address ranges.

Strategies include write-through, write-back, or uncached(?). Such control is useful where the memory is located on a device and is accessed via some kind of device bus, e.g. a PCI or AGP graphics card, where caching would be of no benefit.

Last updated: 1999-07-02

MEMS

microelectromechanical system

Mentat

<language>

(After the human computers in Frank Herbert's SF classic, "Dune") An object-oriented distributed language developed at the University of Virginia some time before Dec 1987. Mentat is an extension of C++ and is portable to a variety of MIMD architectures.

By 1994 Mentat was available for Sun-3, Sun-4, iPSC/2 with plans for Mach, iPSC860, RS/6000 and Iris. The language is now (May 1998) supported in a new project, Legion.

E-mail: <[email protected]>.

["Mentat: An Object-Oriented Macro Data Flow System", A. Grimshaw <[email protected]> et al, SIGPLAN Notices 22(12):35-47, Dec 1987, OOPSLA '87].

Last updated: 1998-05-15

MENTOR

CAI language. "Computer Systems for Teaching Complex Concepts", Report 1742, BBN, Mar 1969.

menu

<operating system>

A list from which the user may select an operation to be performed. This is often done with a mouse or other pointing device under a graphical user interface but may also be controlled from the keyboard.

Menus are very convenient for beginners because they show what commands are available and make experimentating with a new program easy, often reducing the need for user documentation. Experienced users however, often prefer keyboard commands, especially for frequently user operations, because they are faster to use. In situations such as text entry where the keyboard must be used anyway, having to move your hand to the mouse to invoke a menu operation is slow.

There are many different ways of presenting menus but the most common are the menu bar (with pull-down menus) and the context-sensitive menu.

The term "menu" tends to be reserved for a list of actions or global options, whereas a "list box" or other graphical widget might present any kind of choice.

See also menuitis.

Last updated: 1994-12-02

menu bar

<operating system>

A permanently displayed menu spread horizontally across the top of the screen or window. When the mouse is pressed over an item on the menu bar, a pull-down menu appears.

Last updated: 1999-09-22

menuitis

/men"yoo-i:"tis/ A notional disease suffered by software with an obsessively simple-minded menu interface and no escape. Hackers find this intensely irritating and much prefer the flexibility of command-line or language-style interfaces, especially those customisable via macros or a special-purpose language in which one can encode useful hacks.

See user-obsequious, drool-proof paper, WIMP, for the rest of us.

[Jargon File]

Last updated: 1994-12-02

MENYMA/S

["A Message Oriented Language for System Applications", A. Koch et al, Proc 3rd Intl Conf Distrib Comp Sys, IEEE 1982, pp. 824-832].

Last updated: 1994-12-02

Mercury Autocode

Autocode for the Ferranti Mercury machine.

mercury delay line

<storage, history>

An archaic first-in first-out fixed time period data storage device using acoustic transducers to transmit data as waves in a trough or tube of mercury.

EDSAC (Cambridge) and UNIVAC I used delay lines.

Last updated: 2002-06-12

MERISE

Methode d'Etude et de Realisation Informatique pour les Systemes d'Enteprise.

A software engineering method popular in France; many IPSEs are based on it.

Last updated: 1995-01-24

Merlin

OS/2

MEROON

<language>

An object-oriented system built on Scheme.

[What kind of system?]

ftp://nexus.yorku.ca/pub/scheme/new/.

Last updated: 1997-05-05

Mesa

Xerox PARC, 1977. System and application programming for proprietary hardware: Alto, Dolphin, Dorado and Dandelion. Pascal-like syntax, ALGOL68-like semantics. An early version was weakly typed. Mesa's modules with separately compilable definition and implementation parts directly led to Wirth's design for Modula. Threads, coroutines (fork/join), exceptions, and monitors. Type checking may be disabled. Mesa was used internally by Xerox to develop ViewPoint, the Xerox Star, MDE, and the controller of a high-end copier. It was released to a few universitites in 1985. Succeeded by Cedar.

["Mesa Language Manual", J.G. Mitchell et al, Xerox PARC, CSL-79-3 (Apr 1979)].

["Early Experience with Mesa", Geschke et al, CACM 20(8):540-552 (Aug 1977)].

mesh

<character>

The INTERCAL name for hash.

MESI protocol

<processor>

Modified, Exclusive, Shared, Invalid.

A cache coherency protocol where each cache line is marked with one of the four states.

The MESI protocol is used by the Pentium processor.

Last updated: 1995-05-05

message

In object-oriented programming sending a message to an object (to invoke a method) is equivalent to calling a procedure in traditional programming languages, except that the actual code executed may only be selected at run time depending on the class of the object. Thus, in response to the message "drawSelf", the method code invoked would be different if the target object were a circle or a square.

Last updated: 1995-02-16

message board

bulletin board system

Message Digest 5

<messaging>

The message digest function defined in RFC 1321.

Last updated: 1996-08-04

message digest function

one-way hash function

Message Handling System

<messaging, standard>

(MHS) The standard defined by ITU-T as X.400 and by ISO as Message-Oriented Text Interchange Standard (MOTIS). MHS is the X.400 family of services and protocols that provides the functions for global electronic mail transfer among local mail systems and MTAs.

It is used by CompuServe, among others.

Last updated: 1996-09-25

message passing

One of the two techniques for communicating between parallel processes (the other being shared memory).

A common use of message passing is for communication in a parallel computer. A process running on one processor may send a message to a process running on the same processor or another. The actual transmission of the message is usually handled by the run-time support of the language in which the processes are written, or by the operating system.

Message passing scales better than shared memory, which is generally used in computers with relatively few processors. This is because the total communications bandwidth usually increases with the number of processors.

A message passing system provides primitives for sending and receiving messages. These primitives may by either synchronous or asynchronous or both. A synchronous send will not complete (will not allow the sender to proceed) until the receiving process has received the message. This allows the sender to know whether the message was received successfully or not (like when you speak to someone on the telephone). An asynchronous send simply queues the message for transmission without waiting for it to be received (like posting a letter). A synchronous receive primitive will wait until there is a message to read whereas an asynchronous receive will return immediately, either with a message or to say that no message has arrived.

Messages may be sent to a named process or to a named mailbox which may be readable by one or many processes.

Transmission involves determining the location of the recipient and then choosing a route to reach that location. The message may be transmitted in one go or may be split into packets which are transmitted independently (e.g. using wormhole routing) and reassembled at the receiver. The message passing system must ensure that sufficient memory is available to buffer the message at its destination and at intermediate nodes.

Messages may be typed or untyped at the programming language level. They may have a priority, allowing the receiver to read the highest priority messages first.

Some message passing computers are the MIT J-Machine, the Illinois Concert Project and transputer-based systems.

Object-oriented programming uses message passing between objects as a metaphor for procedure call.

Last updated: 1994-11-11

Message Passing Interface

<communications, protocol>

A de facto standard for communication among the nodes running a parallel program on a distributed memory system. MPI is a library of routines that can be called from Fortran and C programs. MPI's advantage over older message passing libraries is that it is both portable (because MPI has been implemented for almost every distributed memory architecture) and fast (because each implementation is optimised for the hardware it runs on).

[Address?]

Last updated: 1997-06-09

message switching

store and forward

Message Transfer Agent

<messaging>

(MTA, Mail Transfer Agent) Any program responsible for delivering e-mail messages. Upon receiving a message from a Mail User Agent or another MTA, often by SMTP over the Internet, it stores it temporarily locally and analyses the recipients and delivers it to any local addressees and/or forwards it to other remote MTAs (routing) for delivery to remote recipients. In either case it may edit and/or add to the message headers.

The most widely used MTA for Unix is sendmail, which communicates using SMTP.

[Other OSes?]

RFC 2821 (SMTP) expands MTA as "Mail Transfer Agent" though this is less common. Alternatives with "Transport" are also seen but less correct.

Last updated: 2007-06-01

Message Transport Agent

Message Transfer Agent

Messaging Application Programming Interface

<messaging>

(MAPI) A messaging architecture and a client interface component for applications such as electronic mail, scheduling, calendaring and document management. As a messaging architecture, MAPI provides a consistent interface for multiple application programs to interact with multiple messaging systems across a variety of hardware platforms.

MAPI provides better performance and control than Simple MAPI, Common Messaging Calls (CMC) or the Active Messaging Library. It has a comprehensive, open, dual-purpose interface, integrated with Microsoft Windows. MAPI can be used by all levels and types of client application and "service providers" - driver-like components that provide a MAPI interface to a specific messaging system. For example, a word processor can send documents and a workgroup application can share and store different types of data using MAPI.

MAPI separates the programming interfaces used by the client applications and the service providers. Every component works with a common, Microsoft Windows-based user interface. For example, a single messaging client application can be used to receive messages from fax, a bulletin board system, a host-based messaging system and a LAN-based system. Messages from all of these systems can be delivered to a single "universal Inbox".

MAPI is aimed at the powerful, new market of workgroup applications that communicate with such different messaging systems as fax, DEC All-In-1, voice mail and public communications services such as AT&T Easylink Services, CompuServe and MCI MAIL. Because workgroup applications demand more of their messaging systems, MAPI offers much more than basic messaging in the programming interface and supports more than local area network (LAN)-based messaging systems. Applications can, for example, format text for a single message with a variety of fonts and present to their users a customised view of messages that have been filtered, sorted or preprocessed.

MAPI is built into Windows 95 and Windows NT and can be used by 16-bit and 32-bit Windows applications. The programming interface and subsystem contained in the MAPI DLL provide objects which conform to the Component Object Model. MAPI includes standard messaging client applications that demonstrate different levels of messaging support.

MAPI provides cross platform support through such industry standards as SMTP, X.400 and Common Messaging Calls. MAPI is the messaging component of Windows Open Services Architecture (WOSA).

[Correct expansion? Relatonship with Microsoft?]

Last updated: 1997-12-03

Messaging Applications Programming Interface

Messaging Application Programming Interface

mess-dos

/mes-dos/ (Or MS-DOG, Messy-DOS, mess-dross, mess-loss, mush-dos) Derisory term for MS-DOS. Often followed by the ritual banishing "Just say No!"

Most hackers (even many MS-DOS hackers) loathe MS-DOS for its single-tasking nature, its limits on application size, its nasty primitive interface, and its ties to IBMness (see fear and loathing).

In Ireland and the UK it is sometimes called "Domestos" after a brand of toilet cleanser.

[Jargon File]

Last updated: 1994-11-16

META

<language>

The assembly language for the CYBER 200, developed at CDC ca 1977.

[CDC Pub 60256020].

[Jargon File]

Last updated: 1994-11-16

meta

<philosophy>

/me't*/ or /may't*/ or (Commonwealth) /mee't*/ A prefix meaning one level of description higher. If X is some concept then meta-X is data about, or processes operating on, X.

For example, a metasyntax is syntax for specifying syntax, metalanguage is a language used to discuss language, metadata is data about data, and meta-reasoning is reasoning about reasoning.

This is difficult to explain briefly, but much hacker humour turns on deliberate confusion between meta-levels.

[Jargon File]

Last updated: 1999-04-06

META 5

Early syntax-directed compiler-compiler, used for translating one high-level language to another.

Versions: META II, META-3.

["META 5: A Tool to Manipulate Strings of Data", D.K. Oppenheim et al, Proc 21st Natl Conf, ACM 1966].

[Sammet 1969, p. 638].

Last updated: 1995-01-23

meta bit

<character>

The most-signigicant bit of an 8-bit character, which is on in character values 128--255. Also called the high bit, "alt bit" (alternate bit) or hobbit. Some terminals and consoles (see space-cadet keyboard) have a META shift key. Others (including, *mirabile dictu*, keyboards on IBM PC-class machines) have an ALT key. See also bucky bits.

Historical note: although, in modern usage shaped by a universe of 8-bit bytes, the meta bit is invariably hex 80 (octal 0200), things were different on earlier machines with 36-bit words and 9-bit bytes. The MIT and Stanford keyboards (see space-cadet keyboard) generated hex 100 (octal 400) from their meta keys.

[Jargon File]

Last updated: 2014-10-05

MetaCard

A commercial human interface and hypertext system for Unix and the X Window System, similar to Hypercard.

Last updated: 1994-11-17

Meta-CASE tool

A term sometimes used for software packages (like TBK or VSF) which allow users to develop or customise their own CASE tools.

metaclass

<programming>

The class of a class in an object-oriented programming language. A metaclass is a class whose instances are themselves classes. Typically there will only be one metaclass, called "Class" or similar, which is the class of all classes including itself. In some languages there will be no metaclass.

The idea of a metaclass is closely associated with introspection - the ability of a program to access the structure and logic of itself or other programs.

Last updated: 2013-09-02

Meta Class System

<language>

(MCS) A portable object-oriented extension of Common Lisp from GMD. It integrates the functionality of CLOS and TELOS.

ftp://gmdzi.gmd.de/pub/lisp/mcs.

Last updated: 1994-10-21

Meta-Crystal

<language>

A language for transformations of Crystal programs. Implemented in T.

["Meta-Crystal - A Metalanguage for Parallel-Program Optimisation", J.A. Yang et al, TR YALEU/DCS/TR-786, Yale Apr 1990].

Last updated: 2016-01-19

metadata

<data, data processing>

/me't*-day`t*/, or combinations of /may'-/ or (Commonwealth) /mee'-/; /-dah`t*/ (Or "meta-data") Data about data. In data processing, metadata is definitional data that provides information about or documentation of other data managed within an application or environment.

For example, metadata would document data about data elements or attributes, (name, size, data type, etc) and data about records or data structures (length, fields, columns, etc) and data about data (where it is located, how it is associated, ownership, etc.). Metadata may include descriptive information about the context, quality and condition, or characteristics of the data.

A collection of metadata, e.g. in a database, is called a data dictionary.

Myers of The Metadata Company claims to have coined the term in 1969 though it appears in the book, "Extension of programming language concepts" published in 1968, by Philip R. Bagley. Bagley was a pioneer of computer document retrieval. "A survey of extensible programming languages" by Solntsseff and Yezerski (Annual Review in Automatic Programming, 1974, pp267-307) cites "the notion of 'metadata' introduced by Bagley".

Last updated: 2010-05-15

Metadata Information Partners

The Metadata Company

META element

<web>

An HTML element, with tag name of "META", expressing metadata about a given HTML document. HTML standards do not require that documents have META elements but if META elements occur, they must be inside the document's HEAD element.

The META element can be used to identify properties of a document (e.g., author, expiration date, a list of key words, etc.) and assign values to those properties, typically by specifying a NAME attribute (to name the property) and a CONTENT attribute (to assign a value for that property). The HTML 4 specification doesn't standardise particular NAME properties or CONTENT values; but it is conventional to use a "Description" property to convey a short summary of the document, and a "Keywords" property to provide a list of keywords relevant to the document, as in:

 <META NAME="Description" CONTENT="Information from around the
 world on kumquat farming techniques and current kumquat
 production and consumption data">
 <META NAME="Keywords" CONTENT="kumquat, Fortunella">

META elements with HTTP-EQUIV and CONTENT attributes can simulate the effect of HTTP header lines, as in:

 <META HTTP-EQUIV="Expires" CONTENT="Tue, 22 Mar 2000 16:18:35 GMT">
 <META HTTP-EQUIV="Refresh" CONTENT="10; URL=http://foldoc.org/">

Other properties may be application-specific. For example, the Robots Exclusion. standard uses the "robots" property for asserting that the given document should not be indexed by robots, nor should links in it be followed:

 <META NAME="robots" CONTENT="noindex,follow">

Last updated: 2001-02-07

metafile

<graphics, file format>

1. An image file format for transport between different machines, often as a device independent bitmap.

2. A functional specification for encoding computer graphics for later display on some suitable device.

Last updated: 1996-09-20

METAFONT

A system for the design of raster-based alphabets by Donald Knuth. A companion to TeX.

["The METAFONT Book," Donald Knuth, A-W 1986. Version 2.0, March 1990].

Last updated: 1994-11-04

metaheuristic

<algorithm, complexity, computability>

A top-level general strategy which guides other heuristics to search for feasible solutions in domains where the task is hard.

Metaheuristics have been most generally applied to problems classified as NP-Hard or NP-Complete by the theory of computational complexity. However, metaheuristics would also be applied to other combinatorial optimisation problems for which it is known that a polynomial-time solution exists but is not practical.

Examples of metaheuristics are Tabu Search, simulated annealing, genetic algorithms and memetic algorithms.

Last updated: 1997-10-30

Meta-II

An early compiler-compiler.

["Meta-II: a Syntax Oriented Compiler Writing Language", V. Schorre, Proc 19th ACM Natl Conf 1964].

Last updated: 1995-01-23

metainformation

metadata

Meta-IV

Vienna Development Method Specification Language

METAL

1. Mega-Extensive Telecommunications Applications Language. BBS language for PRODOS 8 on Apple II.

2. The syntax-definition formalism of the Mentor system. Metal specifications are compiled to specifications for a scanner/parser generator such as Lex/Yacc. "Metal: A Formalism to Specify Formalisms", G. Kahn et al, Sci Comp Prog 3:151-188 (1983).

metalanguage

1. [theorem proving] A language in which proofs are manipulated and tactics are programmed, as opposed to the logic itself (the "object language"). The first ML was the metalanguage for the Edinburgh LCF proof assistant.

2. [logic] A language in which to discuss the truth of statements in another language.

Metal Oxide Semiconductor

<electronics>

(MOS) The three materials used to form a gate in the most common kind of Field Effect Transistor - a MOSFET.

[Other MOS devices?]

Last updated: 1996-05-27

Metal Oxide Semiconductor Field Effect Transistor

<electronics>

(MOSFET) A Field Effect Transistor in which the conducting channel is insulated from the gate terminal by a layer of oxide. Therefore it does not conduct even if a reverse voltage is applied to the gate.

Last updated: 1997-02-24

metaphone

<algorithm, text>

An algorithm for encoding a word so that similar sounding words encode the same. It's similar to soundex in purpose, but as it knows the basic rules of English pronunciation it's more accurate. The higher accuracy doesn't come free, though, metaphone requires more computational power as well as more storage capacity, but neither of these requirements are usually prohibitive. It is in the public domain so it can be freely implemented.

Metaphone was developed by Lawrence Philips <[email protected]>. It is described in ["Practical Algorithms for Programmers", Binstock & Rex, Addison Wesley, 1995].

Last updated: 1998-12-22

metaprogram

A program which modifies or generates other programs. A compiler is an example of a metaprogram: it takes a program as input and produces another (compiled) one as output.

Last updated: 1994-10-24

metasyntactic variable

<grammar>

Strictly, a variable used in metasyntax, but often used for any name used in examples and understood to stand for whatever thing is under discussion, or any random member of a class of things under discussion. The word foo is the canonical example. To avoid confusion, hackers never (well, hardly ever) use "foo" or other words like it as permanent names for anything.

In filenames, a common convention is that any filename beginning with a metasyntactic-variable name is a scratch file that may be deleted at any time.

To some extent, the list of one's preferred metasyntactic variables is a cultural signature. They occur both in series (used for related groups of variables or objects) and as singletons. Here are a few common signatures:

foo, bar, baz, quux, quuux, quuuux...: MIT/Stanford usage, now found everywhere. At MIT (but not at Stanford), baz dropped out of use for a while in the 1970s and '80s. A common recent mutation of this sequence inserts qux before quux.

bazola, ztesch: Stanford (from mid-'70s on).

foo, bar, thud, grunt: This series was popular at CMU. Other CMU-associated variables include ack, barf, foo, and gorp.

foo, bar, fum: This series is reported to be common at Xerox PARC.

fred, barney: See the entry for fred. These tend to be Britishisms.

toto, titi, tata, tutu: Standard series of metasyntactic variables among francophones.

corge, grault, flarp: Popular at Rutgers University and among GOSMACS hackers.

zxc, spqr, wombat: Cambridge University (England).

shme: Berkeley, GeoWorks, Ingres. Pronounced /shme/ with a short /e/.

foo, bar, zot: Helsinki University of Technology, Finland.

blarg, wibble: New Zealand

Of all these, only "foo" and "bar" are universal (and baz nearly so). The compounds foobar and "foobaz" also enjoy very wide currency.

Some jargon terms are also used as metasyntactic names; barf and mumble, for example.

See also Commonwealth Hackish for discussion of numerous metasyntactic variables found in Great Britain and the Commonwealth.

[Jargon File]

Last updated: 1995-11-13

metasyntax

<grammar>

Syntax used to describe syntax. The best known example is BNF and its variants such as EBNF.

A metasyntactic variable is a variable used in metasyntax.

Last updated: 1999-04-06

META tag

META element

Meta-Vlisp

<language>

An innovative Lisp dialect by E. St.James of IBP, France.

Last updated: 2000-12-19

Met-English

A Fortran-like language designed at Metropolitan Life in the early 1960s. It had support for variable-length bit fields. Most MetLife DP in the 1960s and 1970s was in Met-English. It was originally developed for Honeywell machines, but many programs still run under IBM MVS via a Honeywell emulator.

Last updated: 1995-02-15

METEOR

A version of COMIT with Lisp-like syntax, written in MIT Lisp 1.5 for the IBM 7090. "METEOR - A List Interpreter for String Transformation", D.G. Bobrow in The Programming Language LISP and its Interpretation, E.D. and D.G. Bobrow eds, 1964.

meter

<spelling>

US spelling of "metre".

Last updated: 1998-02-07

method

<programming>

In object-oriented programming, a function that can be called on an object of a given class. When a method is called (or invoked) on an object, the object is passed as an implicit argument to the method, usually referred to by the special variable "this". If the method is not defined in the object's class, it is looked for in that class's superclass, and so on up the class hierarchy until it is found. A subclass thus inherits {inheritance} all the methods of its superclasses.

Different classes may define methods with the same name (i.e. methods may be polymorphic).

Methods are sometimes called "object methods" or "instance methods". "Class methods" are methods that operate on objects of class "class". "Static methods" are not methods but normal functions packaged with the class.

Last updated: 2000-03-22

method invocation

<programming>

In object-oriented programming, the way the program looks up the right code to run when a method with a given name is called ("invoked") on an object. The method is first looked for in the object's class, then that class's superclass and so on up the class hierarchy until a method with the given name is found (the name is "resolved").

Generally, method lookup cannot be performed at compile time because the object's class is not known until run time. This is the case for an object method whereas a class method is just an ordinary function (that is bundled with a given class) and can be resolved at compile time (or load time in the case of a dynamically loaded library).

Last updated: 2014-09-06

methodology

<programming>

1. An organised, documented set of procedures and guidelines for one or more phases of the software life cycle, such as analysis or design. Many methodologies include a diagramming notation for documenting the results of the procedure; a step-by-step "cookbook" approach for carrying out the procedure; and an objective (ideally quantified) set of criteria for determining whether the results of the procedure are of acceptable quality.

An example is The Yourdon methodology.

2. A pretentious way of saying "method".

Last updated: 1995-04-10

Methods

<language>

A line-oriented Smalltalk for PC's, produced by Digitalk ca 1985. Methods was the predecessor of Smalltalk/V.

Last updated: 1995-04-16

me too

A functional language for executable specifications developed by Peter Henderson in 1984. It is like LispKit Lisp, but with sets, maps and sequences to describe the specification.

["Functional Programming, Formal Specification and Rapid Prototyping", IEEE Trans Soft Eng, SE-12(2):241-250 (Feb 1986)].

Last updated: 1994-10-21

metre

<unit>

(US "meter") The fundamental SI unit of length.

From 1889 to 1960, the metre was defined to be the distance between two scratches in a platinum-iridium bar kept in the vault beside the Standard Kilogram at the International Bureau of Weights and Measures near Paris.

This replaced an earlier definition as 10^-7 times the distance between the North Pole and the Equator along a meridian through Paris; unfortunately, this had been based on an inexact value of the circumference of the Earth.

From 1960 to 1984 it was defined to be 1650763.73 wavelengths of the orange-red line of krypton-86 propagating in a vacuum.

It is now defined as the length of the path traveled by light in a vacuum in the time interval of 1/299,792,458 of a second.

Last updated: 1998-02-07

metric

software metric

metric space

<mathematics>

A set of points together with a function, d, called a metric function or distance function. The function assigns a positive real number to each pair of points, called the distance between them, such that:

1. For any point x, d(x,x)=0;

2. For any two distinct points x and y, d(x,y)>0;

3. For any two points x and y, not necessarily distinct,

 d(x,y) = d(y,x).

4. For any three points x, y, and z, that are not necessarily distinct,

 d(x,z) <= d(x,y) + d(y,z).

The distance from x to z does not exceed the sum of the distances from x to y and from y to z. The sum of the lengths of two sides of a triangle is equal to or exceeds the length of the third side.

Last updated: 2003-06-26

Metropolitan Area Network

(man) a data network intended to serve an area the size of a attack l<security> an city. Such networks are being implemented by innovative techniques, such as running optical fibre through subway tunnels. A popular example of a man is smds. attack

<security>

Sn also Local Area Network, Wide Area Network.

Last updated: 1994-11-22

M-expression LISP

(MLISP) The original "meta-language" syntax of Lisp, designed by John McCarthy in 1962. MLISP was intended for external use in place of the parenthesised S-expression syntax.

["LISP 1.5 Programmer's Manual", J. McCarthy et al, MIT Press 1962].

Last updated: 1994-11-22

Nearby terms:

MDLMean Time Between FailuresMean Time Between FaultsMean Time To Recovery

Try this search on Wikipedia, Wiktionary, Google, OneLook.



Loading