Jump to content

Access method

From Alfawiki

An access method refers to a feature within a mainframe operating system that facilitates data retrieval and storage on disks, tapes, or other external hardware. These access methods have been integral to mainframe OSs since the late 1950s, with the term access method first appearing in IBM's OS/360 in 1963. They serve as an application programming interface (API) enabling data exchange between devices and applications, delivering capabilities beyond those of standard device drivers found in non-mainframe environments.

Purpose of access methods

In System/360 and its successors, specialized processors called I/O channels manage peripheral storage devices and handle data transfers to and from main memory. These channels execute "channel programs" made up of channel command words (CCWs), which demand extensive hardware-specific programming expertise. The operating system triggers these programs using a START IO instruction, commonly issued via the Execute Channel Program (EXCP) macro that invokes a supervisor call (SVC) to oversee I/O operations on behalf of applications.

Access methods bring several significant business benefits:

  • Streamlined development—programmers do not need to manage device-specific logic or intricate error handling. Applications can work with standardized record formats regardless of the underlying storage device.
  • Device independence—software remains consistent when migrating data across newer storage technologies that support the same access methods.
  • Controlled multi-program access—trusted access methods allow concurrent file sharing by multiple programs, maintaining data security and integrity.
  • Enhanced throughput—queued access methods can launch multiple I/O requests concurrently using available buffers, anticipating application requirements for improved performance.

Unlike Unix-like systems that treat files as simple streams of bytes without formatting, mainframes accommodate various data formats (including different record types and lengths) and diverse access methods such as keyed records. Access methods address this complexity by supporting:

  • Both synchronous (queued) and asynchronous (basic) I/O approaches.
  • Configurable buffer sizes and quantities per file, with buffer pools shared across files to optimize data handling without redundant memory copying.
  • Tailored error recovery mechanisms during I/O failures.

Storage access methods

The following storage-oriented access methods are listed roughly in order of their introduction:

Basic versus queued

Basic access methods handle one physical record (block) per operation, whereas queued methods incorporate internal blocking and often implement read-ahead techniques. While queued methods typically provide superior performance, basic methods offer greater operational flexibility.

Sequential versus direct

Sequential access involves processing records in a fixed order, which is characteristic of storage media such as magnetic tape. In contrast, direct (or random) access permits retrieval of data in a non-linear fashion, a feature typical of disk drives (direct access storage devices). It is possible to access data sets initially stored sequentially through direct methods afterward.

Networking access methods

The evolution of network-based access methods, roughly in chronological sequence, includes:

IMS

Within the context of the IBM Information Management System (IMS), "access methods" refer specifically to techniques used for managing database record segments. These comprise:

This definition of "access method" is distinct from the storage and networking approaches described earlier.

Modern implementations

In the z/OS environment, management of access methods is handled primarily by two components:

  • Data Facility Product
  • Communications Server