View previous topic :: View next topic
|
Author |
Message |
Victor Niu
New User
Joined: 11 Mar 2010 Posts: 59 Location: China,Shanghai
|
|
|
|
/*REXX*/
/* GET JOBID: CURRENT_TCB->JSCB->SSIB */
NUMERIC DIGITS 24 ;
CVTPTR=STORAGE(10,4) /*CVT*/
PSATCB=STORAGE(D2X(C2D(CVTPTR)),4)
CURRTCB=STORAGE(D2X(C2D(PSATCB)),4)
TCBJSCB=STORAGE(D2X(C2D(CURRTCB)+X2D(B4)),4)
JSCBSSIB=STORAGE(D2X(C2D(TCBJSCB)+X2D(13C)),4)
SSIBJBID=STORAGE(D2X(C2D(JSCBSSIB)+X2D(C)),8)
SAY 'JOBID='SSIBJBID
Dears,I know this pgm is about getting the jobid of corrent job,but can anyone explain the step in detail? I'm always confused about the cvt table.
for example:
CVTPTR=STORAGE(10,4),get the cvt pointer,the length is 4,offset is 10 in hex.but form the z/os data area books,offset 10 is CVT buffer.
16 (10) ADDRESS 4 CVTBUF - ADDRESS OF THE
BUFFER OF THE
RESIDENT CONSOLE
INTERRUPT ROUTINE
thanks in advance... |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
Back to top |
|
|
Victor Niu
New User
Joined: 11 Mar 2010 Posts: 59 Location: China,Shanghai
|
|
|
|
thanks,dick.
you are always very warmhearted...
I'll read these books! |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
You're welcome - good luck
d |
|
Back to top |
|
|
Victor Niu
New User
Joined: 11 Mar 2010 Posts: 59 Location: China,Shanghai
|
|
Back to top |
|
|
PeterHolland
Global Moderator
Joined: 27 Oct 2009 Posts: 2481 Location: Netherlands, Amstelveen
|
|
|
|
Look for :
MVS Data Areas
5 volumes in total. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hi Victor,
Quote: |
this book is about jes3,I 'm afraid I ca't get the infor which I want to know |
My bad - i sent the wrong redbook link Time permitting, i'll look for another. I liked the diagrams and wasn't paying proper attention. . .
In the first link, closer to the bottom are multiple links to info MVS Data Areas. Look for:
z/OS V1R11.0 MVS Data Areas, Vol 1 (ABEP-DCCB) - April 2010 1.92
z/OS V1R11.0 MVS Data Areas, Vol 2 (DCCD-IEFDOKEY) - April 2010
z/OS V1R11.0 MVS Data Areas, Vol 3 (IEFDORC-ISGYQCBP) - April 2010
z/OS V1R11.0 MVS Data Areas, Vol 4 (ISGYQUAA-MCHEAD) - April 2010
z/OS V1R11.0 MVS Data Areas, Vol 5 (MCSCSA-SNAPX) - April 2010
z/OS V1R11.0 MVS Data Areas, Vol 6 (SPD-XTLST) - April 2010 |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2547 Location: Silicon Valley
|
|
|
|
Quote: |
CVTPTR=STORAGE(10,4),get the cvt pointer,the length is 4,offset is 10 in hex.but form the z/os data area books,offset 10 is CVT buffer.
16 (10) ADDRESS 4 CVTBUF - ADDRESS OF THE
BUFFER OF THE
RESIDENT CONSOLE
INTERRUPT ROUTINE |
CVTPTR is a pointer -TO- the CVT control block, but you cite the contents of the actual control block.
The starting point, at real address 0, is actually mapped by the PSA. They do not show it in your example, because the PSA is always at location 0. So:
PSAptr = 0x
CVTptr = PSAptr +10x
CVTBUF = CVTptr +10x |
|
Back to top |
|
|
Victor Niu
New User
Joined: 11 Mar 2010 Posts: 59 Location: China,Shanghai
|
|
|
|
• z/OS BCP views the first 4 KB of central storage as a control block called the Prefixed
Save Area (PSA). Within the PSA is the hardware's FLC area.
• Imbedded within this fixed low core area is the pointer to the Communications Vector
Table (CVT).
• The CVT can be used to locate representing control blocks such as the Address Space
Control Block (ASCB) and the Unit Control Block (UCB). |
|
Back to top |
|
|
|