Access method explained

See also: Record-oriented filesystem, Record (computer science), Input/Output Control System and Record Management Services. An access method is a function of a mainframe operating system that enables access to data on disk, tape or other external devices. Access methods were present in several mainframe operating systems since the late 1950s, under a variety of names; the name access method was introduced in 1963 in the IBM OS/360 operating system.[1] Access methods provide an application programming interface (API) for programmers to transfer data to or from device, and could be compared to device drivers in non-mainframe operating systems, but typically provide a greater level of functionality.

Purpose of access methods

System/360 and successor systems perform input/output using a special program for an I/O channel, a processor dedicated to control peripheral storage device access and data transfer to and from main memory. Channel programs are composed of channel command words (CCWs). Programming those is a complex task requiring detailed knowledge of the hardware characteristics. Channel programs are initiated by a START IO instruction issued by the operating system. This is usually front ended by the Execute Channel Program (EXCP) macro for application programmer convenience. EXCP issues an SVC (supervisor call instruction) that directs the operating system to issue the START IO on the application's behalf.[2]

Access methods provide:

Unlike systems derived from Unix, where all files and devices are considered to be an unformatted stream of bytes, mainframes offer a variety of data options and formats, such as varying types and sizes of records, and different ways of accessing data, such as via record keys. Access methods provide programs a way of dealing with this complexity.

Storage access methods

Storage-oriented access methods in approximate chronological order:

Basic versus queued

Both types of access deal with records of a data set. Basic access methods read or write one physical record  - block  - at a time. Queued methods support internal blocking of data and also often read-ahead scheme.[1] Queued access methods generally provide better performance, while basic methods provide more flexibility.

Sequential versus direct

Sequential access assumes that records can be processed only sequentially, as opposed to direct (or random) access. Some devices, such as magnetic tape, naturally enforce sequential access, but it can be used as well on direct access storage devices (DASD), such as disk drives. In the latter case, a data set written with sequential access can be later processed in a direct manner.

Networking access methods

Network-oriented access methods in approximate chronological order:

IMS

The IBM Information Management System (IMS) uses the term "access method" to refer to its methods for manipulating "segments in a database record". These are:

This is a different use of the term from the other access methods mentioned in this article.

Modern implementations

In the z/OS operating system, two elements provide access methods:

Notes and References

  1. http://researchweb.watson.ibm.com/journal/rd/255/auslander.pdf M. A. Auslander, D. C. Larkin, A. L. Scherr: "The Evolution of the MVS Operating System", pages 478-479
  2. http://www.redbooks.ibm.com/redbooks/pdfs/sg246983.pdf
  3. Web site: IBM Corporation. Types of IMS databases. September 4, 2011.