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.
PGEBK | Back to Index page |
Prolog Control Block Contents PGEBK DSECT Storage Layout Cross Reference (Contains links to field and bit definitions) |
|
PGEBK Prolog | Top of page |
NAME : HCPPGEBK DESCRIPTION: Page Allocation Management Block DSECT : PGEBK FUNCTION : Maintain a record of virtual pages that have been allocated within the virtual address space used for the ISFC subsystem and within virtual address spaces of applications using ISFC. This control block resides in CP real storage, but the buffer that it represents may reside in CP real storage (in which case, PGEALET will be zero) or in a "permanently" accessed address space (in which case PGEALET will be the ALET of the address space). RELOCATION CONSIDERATIONS : None NOTES : ISFC does not require the application data to start in the first byte of the buffer, or extend to the end of the buffer. The field PGEDATOF holds the offset of the data, and the field PGEDATLN holds the length of the data. Some communications protocols (for example, SNA) may need to wrap the data with a header and/or trailer after the data is in the buffer. If the mailbox initializes PGEDATOF and PGEDATLN when the data is placed in the buffer, it can add header and/or trailer records later (without the cost of copying the data to another buffer). The prototypical PL/X basing expression is: respecify buffer based(viaptr(pgeALET, pgeVirt+pgeDatOf)) Of course, the buffer can only be accessed in AR-mode. Each buffer has a unique creator, and a current owner. Only the current owner of a buffer may reference and/or modify the buffer and/or the fields in the buffer descriptor -- only the buffer's creator may deallocate the storage occupied by the buffer and/or the PGEBK. When a buffer has been consumed, it should be returned to its creator by calling the creator's RECLAIM-BUF exit, which is pointed to by the PGECLAIM field. The fields in this control block are initialized by the buffer's creator -- all of them are read-only to everyone else *except* for PGENEXT, PGEDATOF, PGEDATLN, and the owner pointers and words. LOCATED BY : When a virtual page is in use, the PGEBK address is stored in an appropriate control block. For example: The CTCBK contains a table with one PGEBK pointer for each buffer that has been set up for the Read channel program. CREATED BY : For ISFC, created by HCPBUT when a new virtual page buffer is requested. PGEBKs that HCPBUT creates always have host virtual addresses from the ISFC Address Space ass- ociated with them. PGEBKs are also obtained by other communication transports without using HCPBUT and by applications that use ISFC services. DELETED BY : For ISFC, deleted by HCPBUT when the virtual page buffer is released. PGEBKs obtained by other communications transports without using HCPBUT must not be returned using HCPBUT. These must be returned using a method appropriate with respect to how they were obtained by the transport. See description of PGECLAIM above. SERIALIZED : The ISFC global lock (HCPBDSGL). |
PGEBK Control Block Content | Top of page |
|
PGEBK Storage Layout | Top of page |
*** PGEBK - Page Allocation Management Block * * +-------------------------------------------------------+ * 0 | PGEEYE | * +---------------------------+---------------------------+ * 8 | PGENEXT | PGEINST | * +---------------------------+---------------------------+ * 10 | PGELNKBK | PGEVMDBK | * +---------------------------+---------------------------+ * 18 | PGECLAIM | PGELOGIC | * +---------------------------+---------------------------+ * 20 | PGEBFLEN | PGEDATOF | * +---------------------------+---------------------------+ * 28 | PGEDATLN | PGEALET | * +---------------------------+---------------------------+ * 30 | PGEVIRT | PGECRPTR | * +---------------------------+---------------------------+ * 38 | PGECRWRD | PGECRW2 | * +---------------------------+---------------------------+ * 40 | PGEOWPTR | PGEOWWRD | * +---------------------------+---------------------------+ * 48 | PGEOWW2 |///////////////////////////| * +---------------------------+---------------------------+ * 50 | PGEIASIT | * +-------------------------------------------------------+ * 58 | PGEIDAW | * +-------------------------------------------------------+ * 60 * *** PGEBK - Page Allocation Management Block |
PGEBK Cross Reference | Top of page |
Symbol Dspl Value -------------- ---- ----- PGEALET 002C PGEBFLEN 0020 PGECLAIM 0018 PGECRPTR 0034 PGECRWRD 0038 PGECRW2 003C PGEDATLN 0028 PGEDATOF 0024 PGEEYE 0000 PGEIASIT 0050 PGEIDAW 0058 PGEINST 000C PGELNKBK 0010 PGELOGIC 001C PGENEXT 0008 PGEOWPTR 0040 PGEOWWRD 0044 PGEOWW2 0048 PGESIZE 0058 0000000C PGEVIRT 0030 PGEVMDBK 0014 |
Copyright IBM Corporation, 1990, 2022