Page 1 of 1
BLKSIZE is always multiple of Lrecl in recfm=fb?
Posted: Sun Jul 16, 2023 2:19 pm
by Sharad Nikam
Hi,
is it true that BLKSIZE is always multiple of Lrecl in recfm=fb?
Re: BLKSIZE is always multiple of Lrecl in recfm=fb?
Posted: Sun Jul 16, 2023 2:38 pm
by Maven JJ
Sharad Nikam wrote: Sun Jul 16, 2023 2:19 pm
Hi,
is it true that BLKSIZE is always multiple of Lrecl in recfm=fb?
If you mention the BLKSIZE as greater than 0, then it should be multiple of LRECL. Else 0 also works.
Re: BLKSIZE is always multiple of Lrecl in recfm=fb?
Posted: Mon Jul 17, 2023 10:37 am
by Abbey Tiwari
If BLKSIZE(0) is specified, the system will determine the optimal block size based on the maximum record length (LRECL) and the physical characteristics of the disk, or approximately half of a physical track.
Re: BLKSIZE is always multiple of Lrecl in recfm=fb?
Posted: Tue Jul 18, 2023 9:31 am
by Anuj Dhawan
Long back 'memory & storage' were very expensive. As a programmer, you were needed to calculate the combination of LRECL and BLKSIZE. "BLK" short of "Block" is multiple of LRECL - which means when system read data it could read data of those many "records (one record is one LRECL, considering RECFM=FB)" which could fit in a given BLKSIZE. However that simply means give the highest BLKSIZE, it degraded the performance (there is more to it) - and there was a upper limit set. Said that, if you mention BLKSIZE it should be multiple of LRECL - usually this is the case of coding done in "old time". After the invention of SMS, one can code BLKSIZE=0 to choose from optimum size. Remember, software developments from IBM are usually backward compatible and coding BLKSIZE=0 didn't invalidated the previous BLKSIZE=??, where ?? represent a number. Have oversimplified it all, hopefully, it gets the concept across.
Re: BLKSIZE is always multiple of Lrecl in recfm=fb?
Posted: Mon Aug 07, 2023 5:03 pm
by Abbey Tiwari
Why can't mainframe do it all themself?
Re: BLKSIZE is always multiple of Lrecl in recfm=fb?
Posted: Mon Aug 07, 2023 11:01 pm
by Robert Sample
Why can't mainframe do it all themself?
You have to remember that IBM mainframes go back to 1964 when the s/360 and it's operating system became available. Systems were expensive relative to programmers and hence letting the programmer make the decisions was cheaper than putting things into the hardware or operating system. And things are still the way they are because IBM has been strongly committed to backwards compatibility so things that worked in 1964, for the most part, continue to work today.
Re: BLKSIZE is always multiple of Lrecl in recfm=fb?
Posted: Mon Aug 14, 2023 4:54 pm
by Maven JJ
Thanks Robert. But it becomes very tough to learn all this.