Paul wrote: 

> IBM designers a half century ago are not to be forgiven for the 
> continuing anguish they inflicted on programmers in order to save 
> two bytes in the DCB.  There should have been two separate fields, 
> one for the label block size; the other for the size of the 
> block currently being processed.

As explained in "Mythical Man Month", programmers had byte budgets
when writing OS/360. It had to be able to fit, even on the smaller
systems.

> For example, I learned, painfully, that to write a short block with 
> BSAM at the end of a RECFM=FB data set, I need to set DCBBLKSI 
> to the length of that block.  I did, and my data set was unreadable.  
> I was astonished and dismayed to learn that value was copied to 
> the DSCB on CLOSE.  I needed to save and restore it, wasting 
> far more storage than a distinct halfword in the DCB would 
> have spent.

OK, but the code for doing OPEN and CLOSE can easily be in an
overlay, and so doesn't take up space during normal processing.

Even more, on the smaller systems I/O was unblocked (because you
couldn't afford the memory for a larger buffer) and so there was
no need to change DCBBLKSI as it was always DCBLRECL even on the
last block. The overhead to save and restore only occurs on 
larger systems.

-- glen

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to