Basic sequential access method

Last updated

In IBM mainframe operating systems, Basic sequential access method (BSAM) [1] is an access method to read and write datasets sequentially. BSAM is available on OS/360, OS/VS2, MVS, z/OS, and related operating systems.

IBM mainframes are large computer systems produced by IBM since 1952. During the 1960s and 1970s, IBM dominated the large computer market. Current mainframe computer in IBM's line of business computers are developments of the basic design of the IBM System/360.

Operating system collection of software that manages computer hardware resources

An operating system (OS) is system software that manages computer hardware and software resources and provides common services for computer programs.

An access method is a function of a mainframe operating system that enables access to data on disk, tape or other external devices. They were introduced in 1963 in IBM OS/360 operating system. 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.

Contents

BSAM is used for devices that are naturally sequential, such as punched card readers, punches, line printers, and magnetic tape. It is also used for data on devices that could also be addressed directly, such as magnetic disks. BSAM offers device independence: to the extent possible, the same API calls are used for different devices.

Punched card recording medium

A punched card or punch card is a piece of stiff paper that can be used to contain digital data represented by the presence or absence of holes in predefined positions. Digital data can be used for data processing applications or, in earlier examples, used to directly control automated machinery.

Line printer impact printer that prints one entire line of text at a time

A line printer prints one entire line of text before advancing to another line. Most early line printers were impact printers.

Magnetic tape data storage is a system for storing digital information on magnetic tape using digital recording. Modern magnetic tape is most commonly packaged in cartridges and cassettes. The device that performs writing or reading of data is a tape drive. Autoloaders and tape libraries automate cartridge handling. For example, a common cassette-based format is Linear Tape-Open, which comes in a variety of densities and is manufactured by several companies.

BSAM allows programs to read and write physical blocks of data, as opposed to the more powerful but less flexible Queued Sequential Access Method (QSAM) which allows programs to access logical records within physical blocks of data. The BSAM user must be aware of the possibility of encountering short (truncated) blocks (blocks within a dataset which are shorter than the BLKSIZE of the dataset), particularly at the end of a dataset, but also in many cases within a dataset. QSAM has none of these limitations.

In computing, a block, sometimes called a physical record, is a sequence of bytes or bits, usually containing some whole number of records, having a maximum length, a block size. Data thus structured are said to be blocked. The process of putting data into blocks is called blocking, while deblocking is the process of extracting data from blocks. Blocked data is normally stored in a data buffer and read or written a whole block at a time. Blocking reduces the overhead and speeds up the handling of the data-stream. For some devices, such as magnetic tape and CKD disk devices, blocking reduces the amount of external storage required for the data. Blocking is almost universally employed when storing data to 9-track magnetic tape, NAND flash memory, and rotating media such as floppy disks, hard disks, and optical discs.

In IBM mainframe operating systems, queued sequential access method (QSAM) is an access method to read and write datasets sequentially. QSAM is available on OS/360, OS/VS2, MVS, z/OS, and related operating systems.

Application program interface

The programmer specifies DSORG=PS in his Data Control Block (DCB) to indicate use of BSAM. As a basic access method BSAM reads and writes member data in blocks and the I/O operation proceeds asynchronously and must be tested for completion using the CHECK macro. [2] BSAM uses the standard system macros OPEN, CLOSE, READ, WRITE,and CHECK. The NOTE macro instruction returns position of the last block read or written, and the POINT macro will reposition to the location identified by a previous NOTE. [2]

In IBM mainframe operating systems, such as OS/360, MVS, z/OS, a Data Control Block (DCB) is a description of a dataset in a program. A DCB is coded in Assembler programs using the DCB macro instruction. High level language programmers use library routines containing DCBs.

In computer science, asynchronous I/O is a form of input/output processing that permits other processing to continue before the transmission has finished.

If the dataset is unblocked, that is, the logical record length (LRECL) is equal to the physical block size (BLKSIZE), BSAM may be utilized to simulate a directly accessed dataset using NOTE and POINT on any supported direct access device type (DEVD=DA), and some primitive applications were designed in this way.

Similar facilities

The BSAM application program interface can be compared with the interface offered by open, read, write and close calls (using file handles) in other operating systems such as Unix and Windows. POINT provides an analog of seek or lseek,and ftell is the equivalent of NOTE.

Unix family of computer operating systems that derive from the original AT&T Unix

Unix is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, development starting in the 1970s at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others.

Microsoft Windows is a group of several graphical operating system families, all of which are developed, marketed, and sold by Microsoft. Each family caters to a certain sector of the computing industry. Active Windows families include Windows NT and Windows Embedded; these may encompass subfamilies, e.g. Windows Embedded Compact or Windows Server. Defunct Windows families include Windows 9x, Windows Mobile and Windows Phone.

See also

Related Research Articles

A direct-access storage device (DASD) is a secondary storage device in which "each physical record has a discrete location and a unique address". IBM coined the term DASD as a shorthand describing disks, magnetic drums, and data cells. Later, optical disc drives and flash memory units are also classified as DASD. The term DASD contrasts with sequential storage media such as magnetic tape, and unit record equipment such as card devices like card readers and punches.

Virtual Storage Access Method (VSAM) is an IBM DASD file storage access method, first used in the OS/VS1, OS/VS2 Release 1 (SVS) and Release 2 (MVS) operating systems, later used throughout the Multiple Virtual Storage (MVS) architecture and now in z/OS. Originally a record-oriented filesystem, VSAM comprises four data set organizations: Key Sequenced Data Set (KSDS), Relative Record Data Set (RRDS), Entry Sequenced Data Set (ESDS) and Linear Data Set (LDS). The KSDS, RRDS and ESDS organizations contain records, while the LDS organization simply contains a sequence of pages with no intrinsic record structure, for use as a memory-mapped file.

IBM Information Management System is an information system of the company IBM

IBM Information Management System (IMS) is a joint hierarchical database and information management system with extensive transaction processing capabilities.

Job Control Language (JCL) is a name for scripting languages used on IBM mainframe operating systems to instruct the system on how to run a batch job or start a subsystem.

In the context of IBM mainframe computers, a data set or dataset is a computer file having a record organization. Use of this term began with OS/360 and is still used by its successors, including the current z/OS. Documentation for these systems historically preferred this term rather than file.

This article discusses support programs included in or available for OS/360 and successors. IBM categorizes some of these programs as utilities and others as service aids; the boundaries are not always consistent or obvious. Many, but not all, of these programs match the types in utility software.

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) access method

Basic Telecommunications Access Method (BTAM) is a low-level programming interface specified by IBM for use on the IBM System/360 for start-stop and binary synchronous telecommunications terminals. Later, IBM specified higher-level interfaces QTAM and TCAM.

In computing, sequential access memory (SAM) is a class of data storage devices that read stored data in a sequence. This is in contrast to random access memory (RAM) where data can be accessed in any order. Sequential access devices are usually a form of magnetic storage or optical storage.

In IBM mainframe operating systems from the OS/360 and successors line, a Unit Control Block (UCB) is a memory structure, or a control block, that describes any single input/output peripheral device (unit), or an exposure (alias), to the operating system. Certain data within the UCB also instructs the Input/Output Supervisor (IOS) to use certain closed subroutines in addition to normal IOS processing for additional physical device control.

In IBM mainframe operating systems, basic partitioned access method (BPAM) is an access method for libraries, called partitioned datasets (PDSes) in IBM terminology. BPAM is used in OS/360, OS/VS2, MVS, z/OS, and others.

In IBM mainframe operating systems, Execute Channel Program (EXCP) is a supervisor call for low-level device access, where the programmer is responsible for providing a channel program—a list of device-specific commands (CCWs)—to be executed by I/O channels, control units and devices. EXCP is more specifically described in the OS System Programmer's Guide.

OS/360 and successors operating system for IBM mainframes

OS/360, officially known as IBM System/360 Operating System, is a discontinued batch processing operating system developed by IBM for their then-new System/360 mainframe computer, announced in 1964; it was heavily influenced by the earlier IBSYS/IBJOB and Input/Output Control System (IOCS) packages. It was one of the earliest operating systems to require the computer hardware to include at least one direct access storage device.

Telecommunications Access Method (TCAM) is an access method, in IBM's OS/360 and successors computer operating systems on IBM System/360 and later, that provides access to terminals units within a teleprocessing network.

Basic Direct Access Method, or BDAM is an access method for IBM's OS/360 and successors computer operating systems on System/360 and later mainframes. BDAM "consists of routines used in retrieving data from, and storing data onto, direct access devices." BDAM is available on OS/360, OS/VS2, MVS, z/OS, and related high-end operating systems.

Input/Output Control System (IOCS) is any of several packages on early IBM entry-level and mainframe computers that provided low level access to records on peripheral equipment. IOCS provides functionality similar to File Control Processor (FCP) in RCA 3301 Realcom Operating System and GEFRC in GECOS.

In IBM mainframe operating systems, Execute Direct Access Program (XDAP) is a pseudo access method for accessing direct access datasets on a block by block basis. XDAP is more specifically described in the OS System Programmer's Guide.

References

  1. IBM System/360 Operating System Sequential Access Methods Program Logic Manual (PDF). IBM. January 1967. Y28-6604-1.
  2. 1 2 IBM Corporation (June 1973). OS Data Management Macro Instructions (PDF). Retrieved August 19, 2016.