Saturday, November 17, 2012

How SPACE parameter works


Take for example SPACE=(CYL,(15,5) as a parameter on DD statement defining a new non-VSAM data sets.

The numbers within the SPACE parameter are requests for space, the 15 being the primary request, and the 5 being the secondary request. The secondary is provided to accomodate the situation where the number of records for whatever reason exceeds the capacity of the primary request.

For this type of data sets the file label, Data Set Control Block (DSCB) can accommodate 16 entries to hold extent information. The long held belief is therefore that there can be one primary and fifteen secondary extents giving a total of 16. (Notice how the terminology has changed from requests to extents.)

The reality is that if CONTIG is not included in the SPACE parameter then the system will allocate the PRIMARY request in 1 EXTENT if it can, but if it cannot it will try to allocate the request in up to 5 EXTENTS.

Using the SPACE parameter above, the best case assignment would be:

1 CONTIGUOUS PRIMARY REQUEST = 15 CYLS
15 CONTIGUOUS SECONDARY REQUESTS = 75 CYLS
TOTAL space available = 90 CYLS

whereas aside from a B37, the worst case allocation from the above example might be:

5 EXTENTS OF PRIMARY REQUEST = 15 CYLS (3 x 5)
10 EXTENTS OF SECONDARY REQUEST = 10 CYLS (1 x 5 x 2)
TOTAL space available = 25 CYLS

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.