Class Tcb
java.lang.Object
com.ibm.dtfj.corereaders.zos.mvs.Tcb
This class represents an MVS Task Control Block (TCB). Methods that begin with "tcb"
return the value of fields as defined in the IKJTCB macro.
-
Constructor Summary
ConstructorDescriptionTcb
(AddressSpace space, long address) Create a new Tcb for the given address space. -
Method Summary
Modifier and TypeMethodDescriptionlong
address()
Returns the address of this TcbLse[]
Return the linkage stack as an array of Lse entries.Get registers from the TCB itself.Try and get the registers by simulating the BPXGMSTA service.static Tcb[]
getTcbs
(AddressSpace space) Returns an array containing all of the Tcbs in the givenAddressSpace
.space()
Returns the AddressSpace we belong tolong
tcbcelap()
Return the celap pointer for this Tcb.long
tcbrbp()
Return the rbp pointer for this Tcb.long
tcbrtwa()
Return the rtwa pointer for this Tcb.long
tcbstcb()
Return the stcb pointer for this Tcb.long
tcbtcb()
Return the pointer to the next Tcb in the queue
-
Constructor Details
-
Tcb
Create a new Tcb for the given address space.- Parameters:
space
- theAddressSpace
to which this Tcb belongsaddress
- the address of this Tcb
-
-
Method Details
-
getTcbs
Returns an array containing all of the Tcbs in the givenAddressSpace
. Returns null if this address space contains no Tcbs. -
address
public long address()Returns the address of this Tcb -
space
Returns the AddressSpace we belong to -
tcbcelap
Return the celap pointer for this Tcb.- Throws:
IOException
- if an error occurred reading from the address space
-
tcbrtwa
Return the rtwa pointer for this Tcb.- Throws:
IOException
- if an error occurred reading from the address space
-
tcbrbp
Return the rbp pointer for this Tcb.- Throws:
IOException
- if an error occurred reading from the address space
-
tcbstcb
Return the stcb pointer for this Tcb.- Throws:
IOException
- if an error occurred reading from the address space
-
tcbtcb
Return the pointer to the next Tcb in the queue- Throws:
IOException
- if an error occurred reading from the address space
-
getRegisters
Get registers from the TCB itself. The registers are in the TCB and the PSW comes from the RB.- Throws:
IOException
-
getRegistersFromBPXGMSTA
Try and get the registers by simulating the BPXGMSTA service. (XXX I think this is probably the best place to implement this kernel call?)- Throws:
IOException
-
getLinkageStack
Return the linkage stack as an array of Lse entries. The length of the array will be zero if the linkage stack is empty. The top of the stack (as represented by stcblsdp) is the first element in the array and the end of the stack (also sometimes referred to as the first entry, aka stcbestk) is the last element in the array.- Throws:
IOException
-