About cookies on this site Our websites require some cookies to function properly (required). In addition, other cookies may be used with your consent to analyze site usage, improve the user experience and for advertising. For more information, please review your options. By visiting our website, you agree to our processing of information as described in IBM’sprivacy statement. To provide a smooth navigation, your cookie preferences will be shared across the IBM web domains listed here.
CNODE | Back to Index page |
Prolog Control Block Contents CNODE DSECT Storage Layout Cross Reference (Contains links to field and bit definitions) |
|
CNODE Prolog | Top of page |
NAME : HCPCNODE DESCRIPTION: Collision node for MDC hash table. DSECT : CNODE FUNCTION : To provide mapping of a MDC overflow hash table node. CREATED BY : HCPFTHRD DELETED BY : HCPFTHUD, HCPFTHDC, HCPFMUFL, HCPFMURM RELOCATION CONSIDERATIONS : None NOTES : The MDC hash table is comprised of a base hash table and collision page(s). A hashing algorithm is used to convert a key to the address of a base node. The base node is 3 words and is either empty or holds a single TCHBK (see HCPTCHBK). Multiple keys can hash to the same base node and such collisions are handled via a chaining scheme that links the base node with additional (collision) nodes that lie outside the hash table proper. The second word of the last (or only) TCHBK in the chain contains data relating to the track represented by that TCHBK. The second word of all other TCHBKs contain the address of a collision node with the high-order bit set to one to indicate that there are additional nodes. (The data words never have the high-order bit set to one.) A collision node is comprised of a TCHBK prefixed by a fullword containing the data that was displaced from the preceding TCHBK to make room for a forward pointer. Base Node (in hash table) +------------+------------+------------+ | TCHBK | +------------+-----+------+------------+ | +------------------+ | v Collision Node (in collision page) +------------+------------+------------+------------+ | N-1 data | TCHBK | +------------+------------+------+-----+------------+ | +--------------------------------+ | v Terminal Collision Node (in collision page) +------------+------------+------------+------------+ | N-1 data | TCHBK | +------------+------------+------------+------------+ |
CNODE Control Block Content | Top of page |
|
CNODE Storage Layout | Top of page |
*** CNODE - Collision node for MDC hash table. * * +---------------------------+---------------------------+ * 0 | CNOPREV | CNOKEY | * +---------------------------+-------------+------+------+ * 8 | CNOTKFMT | CNOORIG |:LOCK |:TBENT| * +---------------------------+-------------+------+------+ * 10 * *** CNODE - Collision node for MDC hash table. |
CNODE Cross Reference | Top of page |
Symbol Dspl Value -------------- ---- ----- CNOADRLX 000C CNOBCKUP 000F CNOTBENT CNOCPEBK 000C CNOCSIZB 000F 00000010 CNOKEY 0004 CNOLOCK 000E CNONXTAV 0000 CNOORIG 000C CNOPREV 0000 CNOTBENT 000F CNOTCHBK 0004 CNOTKFMT 0008 |
Copyright IBM Corporation, 1990, 2018