Queued Telecommunications Access Method
# Queued Telecommunications Access Method

Queued Telecommunications Access Method (QTAM) is an IBM System/360 communications access method incorporating built-in queuing. QTAM was an alternative to the lower level Basic Telecommunications Access Method (BTAM).

## History

QTAM was announced by IBM in 1965 as part of OS/360 and DOS/360 aimed at inquiry and data collection. As announced it also supported remote job entry (RJE) applications, called job processing, which was dropped by 1968. Originally QTAM supported the IBM 1030 Data Collection System, IBM 1050 Data Communications System, the IBM 1060 Data Communications System, the IBM 2671 Paper Tape Reader, AT&T 83B2 Selective Calling Stations, Western Union Plan 115A Outstations, and AT&T Teletype Model 33 or 35 Teletypewriters. By 1968 terminal support had expanded to include the IBM 2260 display complex, and the IBM 2740 communications $terminal.^{:p.8}$

QTAM devices were attached to a System/360 multiplexor channel through an IBM 2701 Data Adapter or IBM 2702 Transmission Control. By 1968 support for the IBM 2703 Transmission Control Unit had been $added.^{:p.8}$

QTAM was succeeded by TCAM which provided roughly similar facilities, but was not supported under DOS.

## Structure

QTAM consists of a Message Control Program (MCP) and zero or more Message Processing Programs (MPP). The MCP handles communications with the terminals, identifies input messages and starts MPPs to process them as required. This is similar in concept to the much later internet service daemon (inetd) in unix and other systems.

The MCP is assembled by the user installation from a set of macros supplied by IBM. These macros define the lines and terminals comprising the system, the datasets required, and the procedures used to process received and transmitted $messages.^{:pp.31-93}$

The MPPs, incorporating logic to process the various messages, are supplied by the installation, and use standard OS/360 or DOS/360 data management macros OPEN, CLOSE, GET, and PUT. PL/I includes the TRANSIENT file declaration attribute to allow MPPs to be written in a high-level language.

