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.3
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.
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.
IBM System/360 Operating System Sequential Access Methods Program Logic Manual (PDF). IBM. January 1967. Y28-6604-1. http://www.bitsavers.org/pdf/ibm/360/os/plm_1966-67/Y28-6604-1_Sequential_Access_Methods_PLM_Jan67.pdf ↩
IBM Corporation (June 1973). OS Data Management Macro Instructions (PDF). Retrieved August 19, 2016. http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf ↩