View previous topic :: View next topic
|
Author |
Message |
Duncan Sharppe
New User
Joined: 13 Dec 2013 Posts: 20 Location: USA
|
|
|
|
Hello group,
Okay, so my mentor asked me another question about MVS Data Areas (amongst the many she asks everyday... 8)
This one is about the TIOT which I visited a couple of weeks back.
I have come to the understanding that if there are more than one user task running in an address space then each one has TIOT and therefore, say the default space used of, 1673 DDs per task is assumed then there are a possible 3346 possible "slots" for DDs.
For this understanding I check the MVS data areas manuals, the 390 Assembler macros (see attach macro) and various references to similar z/OS storage address space organization.
So, what does the forum think. Is my reasoning correct?
Duncan, the friar |
|
Back to top |
|
|
steve-myers
Active Member
Joined: 30 Nov 2013 Posts: 917 Location: The Universe
|
|
|
|
Duncan Sharppe wrote: |
...I have come to the understanding that if there are more than one user task running in an address space then each one has TIOT and therefore, say the default space used of, 1673 DDs per task is assumed then there are a possible 3346 possible "slots" for DDs. |
No. There is one TIOT for each job step task TCB. For all practical purposes, that means 1.
Since the size of a DD entry is variable, technically one should not speak of a maximum number of DD entries in a TIOT.
There are two possible TIOT sizes: 32K and 64K. The maximum size is defined by the job class definition in JES2 parms. Since it can vary by job class, you can have systems with a mix of 32K and 64K TIOT sizes. |
|
Back to top |
|
|
Duncan Sharppe
New User
Joined: 13 Dec 2013 Posts: 20 Location: USA
|
|
|
|
HMMM...
Many thanks on that.... I misunderstood what I was reading. I was equating the TIOT to a task from the beginning and then when I read about it I was just reinforcing my understanding.
Thank you again for setting me straight.
Duncan, the friar |
|
Back to top |
|
|
steve-myers
Active Member
Joined: 30 Nov 2013 Posts: 917 Location: The Universe
|
|
|
|
Duncan Sharppe wrote: |
... I was equating the TIOT to a task from the beginning and then when I read about it I was just reinforcing my understanding. ... |
TIOT (Task Input/Output Table). Your understanding is all to easy a trap to fall input to when depend on a name. Unfortunately SIOT (Step Input/Output Table), which would have been a better name I suppose, was already preempted by another data area. |
|
Back to top |
|
|
steve-myers
Active Member
Joined: 30 Nov 2013 Posts: 917 Location: The Universe
|
|
|
|
I goofed. The TIOT location (below the 16 meg line / above the 16 meg line) is specified by the job class definition. The max size (32K / 64K) is a global system definition. Hint, for those doing their own research: the TIOT is in the SWA (Scheduler Work Area).
Almost all DD entries are 20 bytes, but- There is one required 4 byte entry at the end.
- There are 24 bytes at the beginning.
- This means 1637 20 byte DD entries in a 32K TIOT, with nothing left over
- This means 3275 20 byte DD entries in a 64K TIOT with a few bytes left over
How do I get a DD entry longer than 20 bytes? A DD statement that specifies multiple units - UNIT=(TAPE,2) will create a DD entry longer than 20 bytes. I think that's the only way.
See MVS Initialization and Tuning Reference. IBM has a different size formula than I used, with fewer maximum DD entries. In addition there are more size options than 32K/64K. |
|
Back to top |
|
|
|