Re: Max. number of physical blocks on 3390 track

2007-12-21 Thread Rob Wunderlich
On Thu, 20 Dec 2007 14:39:40 +0100, R.S. 
<[EMAIL PROTECTED]> wrote:
>Where can I find further information (some RTFM) ?

According to notes in a blocksize calc exec I wrote years ago, the track 
layout and calculations are documented in sc26-4574 "3390 dasd in an mvs 
environment". I can't seem to locate a softcopy today. 

If helpful, I can post the exec.

-Rob

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-21 Thread (IBM Mainframe Discussion List)
 
 
In a message dated 12/20/2007 5:22:42 P.M. Central Standard Time,  
[EMAIL PROTECTED] writes:

I seem  to remember macro TRACKCAP (?) that would return the needed 
information to  you (or I may be confused and it had a different  
function).



That would be TRKCALC, which is documented in the DFSMSdfp Advanced  Service 
book, SC26-7400.
 
Bill  Fairchild
Franklin, TN



**See AOL's top rated recipes 
(http://food.aol.com/top-rated-recipes?NCID=aoltop000304)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-21 Thread J R
> I seem to remember macro TRACKCAP (?) 
 
TRKCALC  
> Date: Thu, 20 Dec 2007 18:14:38 -0500> From: [EMAIL PROTECTED]> Subject: Re: 
> Max. number of physical blocks on 3390 track> To: IBM-MAIN@BAMA.UA.EDU> > At 
> 12:29 -0500 on 12/20/2007, (IBM Mainframe Discussion List) wrote > about Re: 
> Max. number of physical blocks on 3390 track:> > >I forgot to add that I 
> found the official formula once, probably on an IBM> >reference card for the 
> 3390.> > I seem to remember macro TRACKCAP (?) that would return the needed > 
> information to you (or I may be confused and it had a different > function).
_
The best games are on Xbox 360.  Click here for a special offer on an Xbox 360 
Console.
http://www.xbox.com/en-US/hardware/wheretobuy/
--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-20 Thread Robert A. Rosenberg
At 12:29 -0500 on 12/20/2007, (IBM Mainframe Discussion List) wrote 
about Re: Max. number of physical blocks on 3390 track:



I forgot to add that I found the official formula once, probably on an IBM
reference card for the 3390.


I seem to remember macro TRACKCAP (?) that would return the needed 
information to you (or I may be confused and it had a different 
function).


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-20 Thread Bill Wilkie
Bill:
 
Another excellent explanation and addition to all of your previous posts. 
 
I know I gasped when I first looked at the formula calculations from RDC but a 
little time spent in understanding it proved to be worthwhile.  
 
Thanks
Bill
 
> Date: Thu, 20 Dec 2007 13:22:47 -0500> From: [EMAIL PROTECTED]> Subject: Re: 
> Max. number of physical blocks on 3390 track> To: IBM-MAIN@BAMA.UA.EDU> > > > 
> > In a message dated 12/20/2007 12:06:21 P.M. Central Standard Time, > [EMAIL 
> PROTECTED] writes:> >You can also get the formula calculations retruned from 
> a Read Device > Characteristics command to the storage controller.> > What is 
> returned are the various constants that must be plugged into the > formula 
> and some flag bits that tell what to do with some of the constants.> > >And I 
> forget who said it, but the vendor hardware manuals will describe > whats in 
> the gap. One item is repeated skip displacement information, if a track > was 
> assigned a skip due to a faulty area of the track.> > The skip displacement 
> information is always in the gap. If no skips have > been assigned, then the 
> skip displacements stored there reflect that no skip > has been assigned. 
> This is another aspect of error detection and reliability > that has evolved 
> over the decades. The first device with skip displacements > had only one, 
> and the 3390 now has seven. What is recorded in each > 2-byte-long skip 
> displacement is the relative number of the chunk on the track, > beginning 
> with index point, where chunk number of bytes are skipped over in reading > 
> and writing.> > Bill Fairchild> Franklin, TN> > > > > > 
> **See AOL's top rated recipes > 
> (http://food.aol.com/top-rated-recipes?NCID=aoltop000304)> > 
> --> For 
> IBM-MAIN subscribe / signoff / archive access instructions,> send email to 
> [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO> Search the archives at 
> http://bama.ua.edu/archives/ibm-main.html
--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-20 Thread (IBM Mainframe Discussion List)
 
 
In a message dated 12/20/2007 12:06:21 P.M. Central Standard Time,  
[EMAIL PROTECTED] writes:
>You can also get the formula calculations retruned from a Read Device  
Characteristics command to the storage controller.
 
What is returned are the various constants that must be plugged into  the 
formula and some flag bits that tell what to do with some of the  constants.
 
>And I forget who said it, but the vendor hardware manuals will  describe 
whats in the gap. One item is repeated skip displacement information,  if a 
track 
was assigned a skip due to a faulty area of the track.
 
The skip displacement information is always in the gap.  If no skips  have 
been assigned, then the skip displacements stored there reflect that no  skip 
has been assigned.  This is another aspect of error detection and  reliability 
that has evolved over the decades.  The first device with skip  displacements 
had only one, and the 3390 now has seven.  What is recorded  in each 
2-byte-long skip displacement is the relative number of the chunk  on the 
track, 
beginning with index point, where chunk number of bytes are  skipped over in 
reading 
and writing.
 
Bill  Fairchild
Franklin, TN





**See AOL's top rated recipes 
(http://food.aol.com/top-rated-recipes?NCID=aoltop000304)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-20 Thread Bill Wilkie
You can also get the formula calculations retruned from a Read Device 
Characteristics command to the storage controller. And I forget who said it, 
but the vendor hardware manuals will describe whats in the gap. One item is 
repeated skip displacement information, if a track was assigned a skip due to a 
faulty area of the track. 
 
Bill
 
 
> Date: Thu, 20 Dec 2007 11:12:57 -0500> From: [EMAIL PROTECTED]> Subject: Re: 
> Max. number of physical blocks on 3390 track> To: IBM-MAIN@BAMA.UA.EDU> > On 
> 20 Dec 2007 05:43:03 -0800, in bit.listserv.ibm-main > (Message-ID:<[EMAIL 
> PROTECTED]>) > [EMAIL PROTECTED] (R.S.) wrote:> > >AFAIK it is 86, for equal 
> blocks up to 22 bytes.> >> >Q: What is the reason for the limitation ?> 
> >Surely, it's not track capacity.> >Where can I find further information 
> (some RTFM) ?> > Yes, as others have noted, it *is* track capacity.> > I 
> don't have the exact name or number of the FM, but > you can find the exact 
> formula on the 3390 reference > card. It gives the size of the interblock 
> gaps and of the > minimum "chunk" (as Bill called it).> > I have a REXX 
> program to give 3380 and 3390 > utilizations based on LRECL and the available 
> blocksizes > for that LRECL. (For BLKSIZE=1 it gives 86 on 3390 and 93 > on 
> 3380.)> > It was written *long* ago and was based on an even > older CLIST 
> for 3330 & 3350. FWIW, here it is. I disavow > any bad coding, as it belongs 
> to a much younger version of > myself. (Beware that at least two lines are 
> probably > broken by line-wrap. Hint: Nothing starts in column 1 > except 
> "roundup".)> > > /* rexx exec to show track utilization on 3380's and > 
> 3390's */> > ARG TEMP1> if datatype(word(temp1,1),n) then temp1= 
> 'LRECL='temp1> > do while temp1 \= ''> parse var temp1 temp2 temp1> if 
> right(temp2,1) = ')' then> temp2 = translate(temp2,'= ','()')> if 
> pos('=',temp2) = 0 then temp2 = temp2 || '= ""'> interpret temp2> end> drop 
> temp1> drop temp2> if debug = 'TRACE' then trace ?i> else if debug \= "DEBUG" 
> then trace i> > > if lrecl = 'LRECL' then> do> say 'LRECL must be specified'> 
> exit 4> end> if stop = 'STOP' then do> if dasd = '80' | dasd = '3380' then 
> stop = 23476> else stop = 27998> end> stop = min(stop,32760)> 'clr'> say 
> 'lrecl blksize > blk/trk blk/trk used used % % blk'> say > ' 3380 3390 3380 
> 3390 3380 3390 > fctr'> say ''> size0 = lrecl> if start = 'START' then 
> start=1> if size0 < start then> size0 = trunc(start/size0)*size0> slrecl = 
> center(lrecl,6)> do size = size0 by lrecl to stop> blkfctr = size/lrecl> D80 
> = (SIZE + 12) / 32> d80 = roundup(d80)> NBLK80 = trunc(1499 / (15 + D80) )> 
> USED80 = NBLK80 * SIZE> PERC80 = USED80/47476*100> dn90 = (size+6)/232> dn90 
> = roundup(dn90)> d90 = 9 + (size + 6*dn90 +6)/34> d90 = roundup(d90)> NBLK90 
> = trunc(1729 / (10 + D90) )> USED90 = NBLK90 * SIZE> PERC90 = 
> USED90/56664*100> blkfctr = size/lrecl> sblk = center(blkfctr,4)> sblks = 
> center(size,6)> sblk80 = center(nblk80,6)> sused80 = left(used80,6)> sperc80 
> = format(perc80,3,1)> sblk90 = center(nblk90,6)> sused90 = left(used90,6)> 
> sperc90 = format(perc90,3,1)> star = ''> select> when dasd = '80' | dasd = 
> '3380' then> do> if perc80 >= 90 then star = '*'> if perc80 >= 95 then star = 
> '**'> end> when dasd = '90' | dasd = '3390' then> do> if perc90 >= 90 then 
> star = '*'> if perc90 >= 95 then star = '**'> end> otherwise> do> if perc80 
> >= 85 & perc90 >= 83.8 then star = '*'> if perc80 >= 90 & perc90 >= 88.8 then 
> star = > '**'> if perc80 >= 90 & perc90 >= 93.8 then star = > '***'> end> 
> end> if ostar \= 'OSTAR' then> if star = ''> then iterate> say slrecl sblks 
> || ' ' || sblk80 || ' ' || sblk90 > ,> sused80 sused90 || ' ' || sperc80 || ' 
> ' || ,> sperc90 || ' ' || sblk star> end> exit 0> roundup:> PROCEDURE> ARG 
> curr> temp = trunc(curr)> if temp \= curr then temp = temp + 1> return temp> 
> > > -- > I cannot receive mail at the address this was sent from.> To 
> reply directly, send to ar23hur "at" intergate "dot" com> > 
> --> For 
> IBM-MAIN subscribe / signoff / archive access instructions,> send email to 
> [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO> Search the archives at 
> http://bama.ua.edu/archives/ibm-main.html
--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-20 Thread (IBM Mainframe Discussion List)
 
 
[EMAIL PROTECTED] (mailto:[EMAIL PROTECTED])   
(R.S.) wrote:
>Where can I find further information (some RTFM) ?
 
I forgot to add that I found the official formula once, probably on an IBM  
reference card for the 3390.  And once I even tried to apply the formula to  a 
specific case.  Its obfuscation overwhelmed my perseverance, and I gave  up.  
Some years later I wrote an Assembler program to fill a DASD  track with as 
many blocks as possible with a user-supplied key length and block  length.  I 
didn't do this to find out how many would fit, but because I  really needed a 
track with all those blocks on it.  I also had to write  another program to 
read 
and print what was on the track, as IMASPZAP will not  display the count 
fields of 86 records all of which have key and data length of  0, nor will it 
print all the data if the data length is greater than 32K, nor  will it print 
R0, 
especially if R0 has a 56K full track data field which I  needed for certain 
test purposes.
 
Here are my test results today with my little programs:
KL=0 and 0http://food.aol.com/top-rated-recipes?NCID=aoltop000304)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-20 Thread Rick Fochtman

---
AFAIK it is 86, for equal blocks up to 22 bytes.

Q: What is the reason for the limitation ?
Surely, it's not track capacity.
Where can I find further information (some RTFM) ?

Unfortunately, CKD/ECKD devices have significant gaps between the 
records, and between the count, key and data fields.


If you can find the manuals on almost any CKD/ECKD disk drive, it's 
usually explained in there somewhere.


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-20 Thread Arthur T.
On 20 Dec 2007 05:43:03 -0800, in bit.listserv.ibm-main 
(Message-ID:<[EMAIL PROTECTED]>) 
[EMAIL PROTECTED] (R.S.) wrote:



AFAIK it is 86, for equal blocks up to 22 bytes.

Q: What is the reason for the limitation ?
Surely, it's not track capacity.
Where can I find further information (some RTFM) ?


 Yes, as others have noted, it *is* track capacity.

 I don't have the exact name or number of the FM, but 
you can find the exact formula on the 3390 reference 
card.  It gives the size of the interblock gaps and of the 
minimum "chunk" (as Bill called it).


 I have a REXX program to give 3380 and 3390 
utilizations based on LRECL and the available blocksizes 
for that LRECL.  (For BLKSIZE=1 it gives 86 on 3390 and 93 
on 3380.)


 It was written *long* ago and was based on an even 
older CLIST for 3330 & 3350.  FWIW, here it is.  I disavow 
any bad coding,  as it belongs to a much younger version of 
myself.  (Beware that at least two lines are probably 
broken by line-wrap.  Hint:  Nothing starts in column 1 
except "roundup".)



 /* rexx exec to show track utilization on 3380's and 
3390's */


  ARG TEMP1
  if datatype(word(temp1,1),n) then temp1= 'LRECL='temp1

  do while temp1 \= ''
parse var temp1 temp2 temp1
if right(temp2,1) = ')' then
  temp2 = translate(temp2,'= ','()')
if pos('=',temp2) = 0 then temp2 = temp2 || '= ""'
interpret temp2
  end
  drop temp1
  drop temp2
  if debug = 'TRACE' then trace ?i
  else if debug \= "DEBUG" then trace i


  if lrecl = 'LRECL' then
do
  say 'LRECL must be specified'
  exit 4
end
  if stop = 'STOP' then do
if dasd = '80' | dasd = '3380' then stop = 23476
else stop = 27998
  end
  stop = min(stop,32760)
  'clr'
  say 'lrecl blksize 
blk/trk  blk/trk  used   used%  %blk'
  say 
'3380 3390   3380   3390   3380   3390 
fctr'

  say ''
  size0 = lrecl
  if start = 'START' then start=1
  if size0 < start then
size0 = trunc(start/size0)*size0
  slrecl = center(lrecl,6)
  do size = size0 by lrecl to stop
blkfctr = size/lrecl
D80 = (SIZE + 12) / 32
d80 = roundup(d80)
NBLK80 = trunc(1499 / (15 + D80) )
USED80 = NBLK80 * SIZE
PERC80 = USED80/47476*100
dn90 = (size+6)/232
dn90 = roundup(dn90)
d90 = 9 + (size + 6*dn90 +6)/34
d90 = roundup(d90)
NBLK90 = trunc(1729 / (10 + D90) )
USED90 = NBLK90 * SIZE
PERC90 = USED90/56664*100
blkfctr = size/lrecl
sblk = center(blkfctr,4)
sblks  = center(size,6)
sblk80 = center(nblk80,6)
sused80 = left(used80,6)
sperc80 = format(perc80,3,1)
sblk90 = center(nblk90,6)
sused90 = left(used90,6)
sperc90 = format(perc90,3,1)
star = ''
select
  when dasd = '80' | dasd = '3380' then
do
  if perc80 >= 90 then star = '*'
  if perc80 >= 95 then star = '**'
end
  when dasd = '90' | dasd = '3390' then
do
  if perc90 >= 90 then star = '*'
  if perc90 >= 95 then star = '**'
end
  otherwise
do
  if perc80 >= 85 & perc90 >= 83.8 then star = '*'
  if perc80 >= 90 & perc90 >= 88.8 then star = 
'**'
  if perc80 >= 90 & perc90 >= 93.8 then star = 
'***'

end
end
if ostar \= 'OSTAR' then
  if star = ''
then iterate
say slrecl sblks || '  ' || sblk80 || '   ' || sblk90 
,

  sused80 sused90 || ' ' || sperc80 || '  ' || ,
  sperc90 || '   ' || sblk star
  end
  exit 0
roundup:
   PROCEDURE
   ARG curr
   temp = trunc(curr)
   if temp \= curr then temp = temp + 1
   return temp


--
I cannot receive mail at the address this was sent from.
To reply directly, send to ar23hur "at" intergate "dot" com

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-20 Thread (IBM Mainframe Discussion List)
 
 
In a message dated 12/20/2007 7:43:02 A.M. Central Standard Time,  
[EMAIL PROTECTED] writes:
>AFAIK it is 86, for equal blocks up to 22 bytes.
Q: What is the reason for the limitation ?
Surely, it's not track  capacity.
Where can I find further information (some RTFM) ?
 
The maximum number of physical blocks (CKD) on any given device has always  
been the number of blocks with key length 0 and data length 0.  For many  years 
now, even if you specify data length 0 the control unit would write one  byte 
on the track in the data field.  But originally, if you asked for X  bytes in 
the data field, you would get X bytes on the track at that  location.  Some 
time in the 1980s (I think), IBM began recording data on  the track not in 
bytes but rather in units of some larger size, possibly called  "chunks" (at 
least 
by me).  The size of the chunk has varied from device  type to device type.  
Using units of chunks allowed for greater levels of  error detection and 
correction.  The 3390's chunk size is around 34 bytes,  I think.  No matter how 
many bytes you want in your data field, 12 more  bytes are added by the 
controller for a 3390 track (I think it's 12).  So  the smallest amount of 
data, a data 
length of 0, requires the controller to add  12 bytes, which requires one 
full chunk.  Any data length between 0 and 22  will result in one chunk on the 
track.  Any data length between 23 and 56  uses up two chunks on the track.  
And 
so on.  Besides recording data  in chunks, inter-record gaps have also been 
required on real CKD devices since  day 1.  There are plenty of other gaps on 
the track also, such as  immediately after the home address and after each 
count field.  All this  overhead reduces the amount of space effectively 
available 
for user  records.
 
All this overhead is now unnecessary, since real devices are FBA and not  
CKD, and the control unit maps virtual to real when writing and real to virtual 
 
when reading.  The internal real device's characteristics can literally be  
anything, and some day they may even be replaced by bunches of atoms instead of 
 
magnetized areas on rapidly spinning platters.  The controller just has to  
know how to do the mapping.  Our software back in the mainframe has to  conform 
to what the access methods require, and they still require adherence to  the 
ancient physical CKD limitations.
 
Now if you want to know why the gaps were required since day one, that's  
another story, and equally fascinating (at least to me).  :-)
 
Bill  Fairchild
Franklin, TN





**See AOL's top rated recipes 
(http://food.aol.com/top-rated-recipes?NCID=aoltop000304)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Max. number of physical blocks on 3390 track

2007-12-20 Thread Vernooy, C.P. - SPLXM
"R.S." <[EMAIL PROTECTED]> wrote in message
news:<[EMAIL PROTECTED]>...
> AFAIK it is 86, for equal blocks up to 22 bytes.
> 
> Q: What is the reason for the limitation ?
> Surely, it's not track capacity.
> Where can I find further information (some RTFM) ?
> 
> -- 
> Radoslaw Skorupka

Yes, it is probably track capacity. Between the blocks are
inter-block-gaps of a fixed size. Enough interblock gaps will fill the
track. Remember that the original physical 3390 platters are still
emulated.

Kees.
**
For information, services and offers, please visit our web site:
http://www.klm.com. This e-mail and any attachment may contain
confidential and privileged material intended for the addressee
only. If you are not the addressee, you are notified that no part
of the e-mail or any attachment may be disclosed, copied or
distributed, and that any other action related to this e-mail or
attachment is strictly prohibited, and may be unlawful. If you have
received this e-mail by error, please notify the sender immediately
by return e-mail, and delete this message. 

Koninklijke Luchtvaart Maatschappij NV (KLM), its subsidiaries
and/or its employees shall not be liable for the incorrect or
incomplete transmission of this e-mail or any attachments, nor
responsible for any delay in receipt.
Koninklijke Luchtvaart Maatschappij N.V. (also known as KLM Royal
Dutch Airlines) is registered in Amstelveen, The Netherlands, with
registered number 33014286 
**

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Max. number of physical blocks on 3390 track

2007-12-20 Thread R.S.

AFAIK it is 86, for equal blocks up to 22 bytes.

Q: What is the reason for the limitation ?
Surely, it's not track capacity.
Where can I find further information (some RTFM) ?

--
Radoslaw Skorupka
Lodz, Poland


--
BRE Bank SA
ul. Senatorska 18
00-950 Warszawa
www.brebank.pl

Sąd Rejonowy dla m. st. Warszawy 
XII Wydział Gospodarczy Krajowego Rejestru Sądowego, 
nr rejestru przedsiębiorców KRS 025237

NIP: 526-021-50-88
Według stanu na dzień 01.01.2007 r. kapitał zakładowy BRE Banku SA (w całości 
opłacony) wynosi 118.064.140 zł. W związku z realizacją warunkowego 
podwyższenia kapitału zakładowego, na podstawie uchwał XVI WZ z dnia 21.05.2003 
r., kapitał zakładowy BRE Banku SA może ulec podwyższeniu do kwoty 118.760.528 
zł. Akcje w podwyższonym kapitale zakładowym będą w całości opłacone.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html