|
NAME : HCPACTBK
DESCRIPTION: ISFC CP Application activation control block
DSECT : ACTBK
FUNCTION : Hold information associated with the activation of
a specific CP application.
LOCATED BY : Activation table, PTHBK, CARBK.
CREATED BY : Activate function.
DELETED BY : Deactivate function marks it, mailbox releases it.
SERIALIZED : There are 3 distinct sections to the ACTBK, and each of
these sections is serialized differently:
1) The fields containing the application name, the
REGBK address, and the deliver address are static
for the life of the control block. These fields may be
read if no loss of control has occurred since a valid
pointer to the ACTBK was retrieved.
- Pointers to the ACTBK may be obtained
in three ways:
o By using HCPVERFY to verify an ACTBK handle.
o From the PTHACTBK pointer for a path associated
with this CP application.
o From a CARBK which is being dequeued from the
CP application input queue (HCPAAKIQ). This is
safe because deactivation processing will queue
the deactivate CARBK behind any transmit CARBKs
on this queue.
NOTE: This is dependent on a share of the ACTBK
lock being obtained after using HCPVERFY
to validate the ACTBK handle *WITHOUT AN
INTERVENING LOSS OF CONTROL*. This share
of the ACTBK lock must be held until after
the CARBK has been enqueued.
2) ACTCHILD contains pointers for the binary ACTBK
tree that are serialized by the activation table lock
(i.e., the lock defined in the BLEHD for the activation
table in HCPBDAAC).
3) The fields following the ACTLKWRD lockword are
serialized by that lockword (which we call the
ACTBK lock).
RELOCATION CONSIDERATIONS : None
NOTES :
Reserved fields intentionally not defined.
Due to the various serialization sections in this
control block, reserved spaces have not been defined.
New fields must be defined in the proper section
of this control block based on the serialization on
that field.
In a pathless environment, path information for a CP
application is pointed to by the ACTBK. The ACTBK contains
lockwords and pointers to a chain of TRGBKs.
ACTBK
+---------------+
| |
| lockwords |
| |
| A(REGBK) |
| |
| A(TRGBK.1) ---------------------+
| | |
+---------------+ |
|
V
+------------+
| TRGBK.1 |
| |
| A(TRGBK.2)---->
+------------+ |
|
+------------+ |
| TRGBK.2 | <--
| |
| A(TRGBK.n)-->
+------------+ |
V
.
| |