| LOCBK | Back to Index page |
|
Prolog Control Block Contents LOCBK DSECT Storage Layout Cross Reference (Contains links to field and bit definitions) |
|
| LOCBK Prolog | Top of page |
NAME : HCPLOCBK
DESCRIPTION: C System Services Lock block
DSECT : LOCBK
FUNCTION : C System Services Lock block used to describe the
spin lock used by platform specific C Services
LOCATED BY : Passed as argument on lock, unlock, testLock
and eventWait services
CREATED BY : allocateLock service
DELETED BY : deallocateLock service
SERIALIZED : CP lock routines
RELOCATION CONSIDERATIONS : None
NOTES : LOCSLOCK is defined to be the size of a SYNBK so
that it can be mapped with by the SYNBK. LOCLOCK
maps the first dword of SYNBK; i.e. SYNLOCKD.
This control block is allocated from SHORTTERM
free storage, but of 29 dwords so that when the
header and trailer are added it is cache aligned
and uses the entire cache line. This is to avoid
what appears to be spinlock contention but is
cache line contention from different locks in the
same cache line.
|
| LOCBK Control Block Content | Top of page |
|
| LOCBK Storage Layout | Top of page |
*** LOCBK - C System Services Lock block
*
* +-------------------------------------------------------+
* 0 | |
* = LOCSLOCK =
* | |
* +-------------------------------------------------------+
* 30 | LOCTHRED |
* +-------------------------------------------------------+
* 38 |///////////////////////////////////////////////////////|
* =///////////////////////////////////////////////////////=
* |///////////////////////////////////////////////////////|
* +-------------------------------------------------------+
* E8
*
*** LOCBK - C System Services Lock block
*** Overlay for LOCSLOCK in LOCBK
*
* +-------------------------------------------------------+
* 0 | LOCLOCK |
* +-------------------------------------------------------+
* 8
*
*** Overlay for LOCSLOCK in LOCBK
|
| LOCBK Cross Reference | Top of page |
Symbol Dspl Value -------------- ---- ----- LOCBSIZE 0038 000000E8 LOCLOCK 0000 LOCSIZE 0038 0000001D LOCSLOCK 0000 LOCTHRED 0030 LOCUSED 0030 00000038 |
Copyright IBM Corporation, 1990, 2022