Skip to content

Chapter9.Input/Output Processing

Chapter9.Input/Output Processing

Table of Contents

I/O Intrinsic Special Variables
Device Name Variables

Cursor Position Variables

Status Variables

I/O Devices
I/O Device Recognition

Device Specification Defaults

How I/O Device parameters Work

Abbreviating Deviceparameters

Document Conventions

Device-Independent Programming

Using Terminals
Setting Terminal Characteristics

Logical Records for Terminals

READ * Command for Terminals

READ X#maxlen Command for Terminals

Terminal Deviceparameter Summary

Terminal Examples

Using Sequential Files
Setting Sequential File Characteristics

Sequential File Pointers

Line Terminators

READ/WRITE Operations

Writing Binary Files

Sequential File Deviceparameter Summary

Sequential File Examples

FIFO Characteristics
Considerations in Implementing FIFOs

Error Handling for FIFOs

GT.M Recognition of FIFOs

FIFO Device Examples

FIFO Deviceparameter Summary

Using Null Devices
Null Deviceparameter Summary

Null Device Examples

Using PIPE Devices
Modes of PIPE Operation

PIPE Characteristics

PIPE Device Examples

PIPE Deviceparameter Summary

Using Socket Devices
Message Management

Socket Read Operation

Socket Read Termination Conditions

Message Delimiters

Read Command

WRITE Command

Socket Device Operation

Socket Deviceparameter Summary

Socket Device Examples

I/O Commands
Open

Use

READ

Write

WRITE *

Close

Deviceparameter Summary Table

This chapter describes the following topics which relate to input and output processing:

  • Input/Output Intrinsic Special Variables, and their Maintenance.

    GT.M provides several intrinsic special variables that allow processes to examine, and in some cases change, certain aspects of the input/output (I/O) processing. The focus in this chapter is how GT.M handles the standard ones, such as $IO, $X, $Y, and those that are GT.M-specific (for example, $ZA, $ZB).

  • Input/Output Devices

    Each device type supported by GT.M responds to a particular subset of deviceparameters, while ignoring others. Devices may be programmed in a device-specific manner, or in a device-independent manner. This chapter discusses each device type, and provides tables of their deviceparameters.

  • Input/Output Commands and their Deviceparameters

    GT.M bases its I/O processing on a simple character stream model. GT.M does not use any pre-declared formats. This chapter describes the GT.M I/O commands OPEN, USE, READ, WRITE, and CLOSE.

OPEN, USE, and CLOSE commands accept deviceparameters, which are keywords that permit a GT.M program to control the device state. Some deviceparameters require arguments. The current ANSI standard for GT.M does not define the deviceparameters for all devices. This chapter includes descriptions of the GT.M deviceparameters in the sections describing each command.

[Note]Note
The term “device” can refer to an entity manipulated by application code using Open, Use, Close, Read and Write commands as well as a device from the perspective of the operating system. We endeavor herein to always make it clear from the context which meaning is intended.