Browse Prior Art Database

Multi Access Data Sharing Facility Utilizing Magnetic Bubble Storage

IP.com Disclosure Number: IPCOM000051463D
Original Publication Date: 1981-Jan-01
Included in the Prior Art Database: 2005-Feb-10
Document File: 3 page(s) / 16K

Publishing Venue

IBM

Related People

Scrutchin, TW: AUTHOR [+2]

Abstract

This article describes two procedures for allowing multiple and concurrent programs and multiple hosts to access the same data at the record level. In accordance with the first procedure, a COMPARE/SWAP technique is employed which maintains a version number at the beginning of each record. Whenever a read and then updated record is to be rewritten by a first task, the version number is checked to assure that the record has not been updated by a second task since being read by the first task. In accordance with the second procedure, a LOCK/UNLOCK technique is employed which maintains a lock word at the beginning of each record. The lock word is inspected to determine which hosts are sharing the data, waiting to share, have exclusive control, or are waiting for exclusive control.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 46% of the total text.

Page 1 of 3

Multi Access Data Sharing Facility Utilizing Magnetic Bubble Storage

This article describes two procedures for allowing multiple and concurrent programs and multiple hosts to access the same data at the record level. In accordance with the first procedure, a COMPARE/SWAP technique is employed which maintains a version number at the beginning of each record. Whenever a read and then updated record is to be rewritten by a first task, the version number is checked to assure that the record has not been updated by a second task since being read by the first task. In accordance with the second procedure, a LOCK/UNLOCK technique is employed which maintains a lock word at the beginning of each record. The lock word is inspected to determine which hosts are sharing the data, waiting to share, have exclusive control, or are waiting for exclusive control. The record lock states determine the action to be taken by the control unit in response to a data request from the host.

In the COMPARE/SWAP technique, channel control word (CCW) SCANFIELD is executed by the control unit to compare a scan argument against a key or data field, and set the status modifier upon comparison. (SCANFIELD differs from the SEARCH command in that, in a bubble device, the processing remains positioned at the beginning of the same field.)

An application attempting to update a record on a CKD (count key data) type magnetic bubble could proceed as follows: Step 1. Read the record (no enqueuing is required).

Step 2. Make any desired changes to the data.

Step 3. Increment the version number at the beginning of the record.

Step 4. Write the updated record, provided the version number has not been changed by

another application since this application

read it (step 1). Otherwise, reread the

record and repeat from step 2.

One possible channel program, utilizing the SCANFIELD CCW for implementing step 4 is as follows: CCW1: Set Sector

CCW2: Search ID Equal

CCW3: TIC (transfer in channel) CCW2

CCW4: SCANFIELD (old version)

CCW5: TIC CCW7

CCW6: Write Data (new version and data)

(End of channel program)

CCW7: Read Data (reread version and data).

CCW4 checks the version number of the record on the file. If it is unchanged from the time the record was read (step 1), CCW6 is executed to write the new version number and data. If it has changed, CCW7 is executed to reread the version and data.

This procedure, when used with a byte-addressable bubble device, could be used to update fields in the middle of a record. In

1

Page 2 of 3

this use, there is no need for a version number field, as the

SCANFIELD CCW would test the entire old field before writing the updated field.

One useful application of this procedure (particularly with a byte-addressable bubble device) is the maintenance of a space map, such s is used by job Entry Subsystem/2 (JES/2), Indexed Volume Table of Contents (VTOC), and Virtual Storage, A Programming Language (VSAPL), indicating blocks of secondary storage which are...